树莓派简单led灯实验
2016-01-10 00:11
411 查看
树莓派简单led灯实验
首先附上gpio引脚图(摘录自网上:http://bbs.elecfans.com/jishu_450628_1_1.html):
本文参考书籍《Raspberry Pi入门指南》
布局为:
从gpio25引出一条线到面包板(右边第11个口,从1开始数起),从gnd引一条线到面包板(右边第3个口),连接一个led灯。
如图:
通过写gpio相应的文件达到点亮和关led灯的目的。
过程描述为:
1、写25到/sys/class/gpio/export,表示要使用gpio25这个引脚
2、这时会在/sys/class/gpio/下产生一个gpio25文件夹
3、进入该文件夹
4、写out到里面的direction文件,表示该gpio用于输出(一个gpio既可以用于输出也可以用于输入,但不是同时)
5、写1到value文件,此时灯亮了。
6、写0到value文件,灯关掉。
一、用shell命令直接控制
root@raspberrypi:/sys/class/gpio# echo 25 > export root@raspberrypi:/sys/class/gpio# ls export gpio25 gpiochip0 unexport root@raspberrypi:/sys/class/gpio# cd gpio25 root@raspberrypi:/sys/class/gpio/gpio25# ls active_low device direction edge subsystem uevent value root@raspberrypi:/sys/class/gpio/gpio25# ls -l total 0 -rwxrwx--- 1 root gpio 4096 Jan 9 15:50 active_low lrwxrwxrwx 1 root gpio 0 Jan 9 15:50 device -> ../../../3f200000.gpio -rwxrwx--- 1 root gpio 4096 Jan 9 15:50 direction -rwxrwx--- 1 root gpio 4096 Jan 9 15:50 edge lrwxrwxrwx 1 root gpio 0 Jan 9 15:50 subsystem -> ../../../../../class/gpio -rwxrwx--- 1 root gpio 4096 Jan 9 15:50 uevent -rwxrwx--- 1 root gpio 4096 Jan 9 15:50 value root@raspberrypi:/sys/class/gpio/gpio25# cat direction in root@raspberrypi:/sys/class/gpio/gpio25# echo out > direction root@raspberrypi:/sys/class/gpio/gpio25# cat value 0 root@raspberrypi:/sys/class/gpio/gpio25# echo 1 > value root@raspberrypi:/sys/class/gpio/gpio25# echo 0 > value root@raspberrypi:/sys/class/gpio/gpio25# echo 1 > value root@raspberrypi:/sys/class/gpio/gpio25#
效果为:
二、用shell脚本控制
下面的脚本用于控制led灯交替亮灭。
root@raspberrypi:~# cat blinked.sh #!/bin/sh echo 25 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio25/direction while true do echo 1 > /sys/class/gpio/gpio25/value sleep 0.5 echo 0 > /sys/class/gpio/gpio25/value sleep 0.5 done
三、用python控制
先要检查是否有相应的gpio模块,如果没有要进行安装。
pi@raspberrypi ~ $ sudo python Python 2.7.3 (default, Mar 18 2014, 05:13:23) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import RPi.GPIO as GPIO >>> GPIO.VERSION '0.5.11' >>> GPIO.setmode(GPIO.BCM) >>> GPIO.setup(25,GPIO.OUT) >>> GPIO.output(25,GPIO.HIGH) >>> GPIO.output(25,GPIO.LOW) >>> quit()
相关文章推荐
- Linux查看软件安装路径
- *LeetCode Wildcard Matching
- 可视化数据
- 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()
- 原子性
- React 相关文档
- SocketChannel的read值为0
- python2.7---查询信息代码
- hibernate提供的5种检索数据方式
- Linux下XAMPP装完之后,Navicat无法连上数据库的问题的解决 注意'mypassword'是当前的mysql登录密码
- Android Studio中导入依赖库的方法
- 011: Errors and Exceptions
- JDBC简易入门-各层的写法-02
- mac学习笔记:brew 安装nginx
- UIView的一些知识
- tomcat启动没有8080端口
- Centos7最小化终端命令行安装VMware-tools.pl
- Swift学习笔记1
- Linux Kernel 4.0 RC5 发布!
- Ubuntu Touch 升级即将来袭!