首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

树莓派学习札记——GPIO功能学习

2013-10-14 
树莓派学习笔记——GPIO功能学习0.前言树莓派现在越来越火,网上树莓派的资料也越来越多。树莓派的学习可以分

树莓派学习笔记——GPIO功能学习
0.前言    树莓派现在越来越火,网上树莓派的资料也越来越多。树莓派的学习可以分为linux系统学习和linux驱动学习,利用树莓派制作LED流水灯应该算是驱动学习吧。树莓派来自国外,国外嵌入式开源领域具备良好的分享精神,树莓派的各种集成库也层出不穷,下面推荐几个。
    python GPIO    链接网址:https://code.google.com/p/raspberry-gpio-python/    简单介绍:树莓派官方资料中推荐,容易上手。但是需要学习python,需要简单阅读一些python的编程图书或者资料,幸好python也是非常容易学习的。
    wiringPi
    链接网址:http://wiringpi.com/    简单介绍:编程的方法兼容arduino,原作者给出了大量的说明和示例代码,功能强大。严格来说使用wiringPi编程使用Processing的语言,该语言由java演化而来。
    BCM2835 C Library
    链接网址: http://www.airspayce.com/mikem/bcm2835/    简单介绍:C Library可以理解为使用C语言实现的底层驱动,包括GPIO、SPI和UART等,使用简单方便同样容易上手。

1.硬件准备    从淘宝上淘了一下,发现深圳有家店做的很不错,虽然东西有点贵但是品质不做,光有树莓派其实用处也不大,还需要合适的扩展板,下面是扩展板的图片:
树莓派学习札记——GPIO功能学习树莓派学习札记——GPIO功能学习
2.程序实现2.1 Python    新建一个名为led.py的程序,程序的具体内容如下:

#include <bcm2835.h>// Blinks on RPi Plug P1 pin 11 (which is GPIO pin 17)#define PIN RPI_GPIO_P1_11int main(int argc, char **argv){  if (!bcm2835_init())  return 1;  // Set the pin to be an output  bcm2835_gpio_fsel(PIN, BCM2835_GPIO_FSEL_OUTP);  // Blink  while (1)  {    bcm2835_gpio_write(PIN, HIGH);    bcm2835_delay(100);        bcm2835_gpio_write(PIN, LOW);    bcm2835_delay(100);  }  bcm2835_close();  return 0;}


    使用cd指令进入文件所在目录,然后输入以下命令生成可执行文件    gcc -o blink blink.c -l bcm2835    最后执行该程序,输入以下指令
    sudo ./blink
    之后程序便会运行,运行的效果和前面两个效果相似,只是LED闪烁的时间略有不同。如果深入以上各种函数库,本质上依然是操作bcm2835的相关寄存器。
3.未来技术    实践GPIO输入功能,实践SPI功能,实践I2C功能等。最后综合以上若干内容和以太网功能做一个好玩的应用。
1楼u01148401544分钟前
加油! 带上我一起学吧。。

热点排行