欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

树莓派64位系统成功安装bcm2835库

程序员文章站 2022-03-03 18:53:13
背景树莓派的GPIO库主要有三种wiringPi, RPI.GPIO,bcm2835。其中wiringPi和bcm2835是支持C/C++语言的库。名气上wiringPi更大一点,但奈何作者因为抑郁(网上有人评论)把库的源代码给封了,暂时也不支持64位系统所以安装不了。RPI.GPIO是Python库,脚本语言嘛原则上与系统无关,当然主要是因为我们的系统用的C++写,调用Python还是会稍微麻烦一点,所以没有实际测试。因此把希望寄托在了bcm2835库上了。测试材料Ubuntu20.04 serv...

背景

树莓派的GPIO库主要有三种wiringPi, RPI.GPIO,bcm2835。其中wiringPi和bcm2835是支持C/C++语言的库。名气上wiringPi更大一点,但奈何作者因为抑郁(网上有人评论)把库的源代码给封了,暂时也不支持64位系统所以安装不了。RPI.GPIO是Python库,脚本语言嘛原则上与系统无关,当然主要是因为我们的系统用的C++写,调用Python还是会稍微麻烦一点,所以没有实际测试。因此把希望寄托在了bcm2835库上了。

测试材料

  1. Ubuntu20.04 server_ras
  2. bcm2835
  3. 树莓派4B 8G版本

步骤

  1. 烧录Ubuntu20.04,可选的可安装xubuntu桌面方便小白操作。
  2. 下载bcm2835源码,下载链接&安装指南 http://www.airspayce.com/mikem/bcm2835/
    使用root用户安装:
tar zxvf bcm2835-1.xx.tar.gz
cd bcm2835-1.xx
./configure
make
sudo make check
sudo make install

make时如果失败,可按照提示执行命令即可安装成功,一定要注意不能有error。

测试

  1. 写代码
#include <bcm2835.h>
 

#define PIN RPI_GPIO_P1_18
 
int main(int argc, char **argv)
{
  if (!bcm2835_init())
  return 1;
 
  // 输出方式
  bcm2835_gpio_fsel(PIN, BCM2835_GPIO_FSEL_OUTP);
 
  while (1)
  {
    bcm2835_gpio_write(PIN, HIGH);
    bcm2835_delay(100);
     
    bcm2835_gpio_write(PIN, LOW);
    bcm2835_delay(100);
  }
  bcm2835_close();
  return 0;
}
  1. 上电测试
    树莓派64位系统成功安装bcm2835库
    Done!!!树莓派64位系统成功安装bcm2835库

本文地址:https://blog.csdn.net/u012197995/article/details/109235518

相关标签: C++