智能创客,中国最大的极客空间,智能平台,免费教学,视频教程,手把手教你创造儿时梦想!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 15659|回复: 54
打印 上一主题 下一主题

Raspberry Pi的bcm2835库GPIO端口控制入门

  [复制链接]

110

主题

396

帖子

2329

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2329
QQ
跳转到指定楼层
#
发表于 2014-2-11 11:47:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
考完研闲了一段时间,这两天开始正式学习单片机开发,以便完成毕业设计。本来想跟大家分享Raspberry Pi与STM32F4DISCOVERY开发板之间,使用nRF24L01无线模块进行通讯的方法,无奈水平有限,暂时还没能调试好,为了赶上爱板网的这次分享活动,就先将Raspberry Pi的GPIO端口控制方法跟大家分享一下,其他的以后再发。

第一步,安装系统.建议Raspberry Pi官方的Debian系统,在这里下载好镜像之后,dd至SD卡上即可,系统的初始化设置可能需要用到显示器。

第二步,使用SSH登录Raspberry Pi。默认用户名:pi,密码:raspberry,主机名:raspberrypi,将Raspberry Pi通过网线连上路由器之后,使用ssh命令登录:

ssh pi@raspberrypi

第三步,下载并安装GPIO库。首先下载源代码:


wget http://www.open.com.au/mikem/bcm2835/bcm2835-1.16.tar.gz

然后编译安装:


tar xzvf bcm2835-1.16.tar.gz
cd bcm2835-1.16
./configure
make
sudo make install


第四步,示例。这个C库暂时还没有文档,所以只能先看代码注释了解用法,好在代码不多。下面用这个交替闪烁两个LED灯的示例来验证下吧。


#include <bcm2835.h>

#define LEDA_PIN RPI_GPIO_P1_16        /* LED灯A使用P1上的16引脚 */
#define LEDB_PIN RPI_GPIO_P1_18        /* LED灯A使用P1上的18引脚 */

int main(int argc, char **argv)
{
        if (!bcm2835_init())
                return 1;

        /* 初始化GPIO端口 */
        bcm2835_gpio_fsel(LEDA_PIN, BCM2835_GPIO_FSEL_OUTP);
        bcm2835_gpio_write(LEDA_PIN, LOW);
        bcm2835_gpio_fsel(LEDB_PIN, BCM2835_GPIO_FSEL_OUTP);
        bcm2835_gpio_write(LEDB_PIN, LOW);

        while (1) {
                bcm2835_gpio_write(LEDA_PIN, HIGH);
                bcm2835_gpio_write(LEDB_PIN, LOW);

                bcm2835_delay(250);

                bcm2835_gpio_write(LEDA_PIN, LOW);
                bcm2835_gpio_write(LEDB_PIN, HIGH);

                bcm2835_delay(250);
        }

        return 0;
}


第五步,编译运行。将上面的代码保存为文件,比如rpi_led.c,然后上传到Raspberry上:


scp rpi_led.c pi@raspberrypi:~

编译:


gcc rpi_led.c -l rt  -l bcm2835 -o rpi_led

将两只LED灯分别连接到GPIO23、GPIO24和Ground,运行:


sudo ./rpi_led

怎么样,两只LED灯是不是已经开始交替闪烁了?


来源:http://www.eeboard.com/bbs/thread-6791-1-1.html

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

0

主题

16

帖子

44

积分

新手上路

Rank: 1

积分
44
54#
发表于 2016-11-5 20:06:30 | 只看该作者
好贴子哦,大家不顶说不过去












回复 支持 反对

使用道具 举报

0

主题

14

帖子

42

积分

新手上路

Rank: 1

积分
42
53#
发表于 2016-11-4 11:41:03 | 只看该作者
没来得急看,应该不错,先帮你顶












回复 支持 反对

使用道具 举报

0

主题

22

帖子

76

积分

注册会员

Rank: 2

积分
76
52#
发表于 2016-11-1 12:23:15 | 只看该作者
祝楼主快乐,大家一齐讨论!












回复 支持 反对

使用道具 举报

0

主题

16

帖子

60

积分

注册会员

Rank: 2

积分
60
51#
发表于 2016-10-31 03:46:01 | 只看该作者
选个好的 才有保证 这话没错












回复 支持 反对

使用道具 举报

0

主题

35

帖子

88

积分

注册会员

Rank: 2

积分
88
50#
发表于 2016-10-19 05:34:22 | 只看该作者
祝楼主快乐,大家一齐讨论!












回复 支持 反对

使用道具 举报

0

主题

31

帖子

82

积分

注册会员

Rank: 2

积分
82
49#
发表于 2016-10-15 14:20:21 | 只看该作者
路过!!!!!!












回复 支持 反对

使用道具 举报

0

主题

31

帖子

82

积分

注册会员

Rank: 2

积分
82
48#
发表于 2016-10-13 17:25:46 | 只看该作者
大家好好讨论一下,真不错












回复 支持 反对

使用道具 举报

0

主题

0

帖子

77

积分

注册会员

Rank: 2

积分
77
47#
发表于 2016-10-9 09:26:57 | 只看该作者
呵呵,非常感谢,很好很强大












找好工作请关注微信公众号:shsxjy
回复 支持 反对

使用道具 举报

0

主题

53

帖子

156

积分

注册会员

Rank: 2

积分
156
46#
发表于 2016-6-11 06:18:50 | 只看该作者
看后感悟了点,收下了
回复 支持 反对

使用道具 举报

0

主题

53

帖子

156

积分

注册会员

Rank: 2

积分
156
45#
发表于 2016-6-11 01:49:03 | 只看该作者
谢谢楼主,好久没看到这么好的贴了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|手机版|智能创客 ( 桂ICP备14000828号

GMT+8, 2024-11-27 08:40 , Processed in 0.153039 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表