用树莓派实现led灯闪烁,包括手动实现和python实现。

点亮LED灯

实际应用

打开树莓派,在终端中查看引脚编码

可以看到,30号引脚是接地引脚,0V,7号引脚是GPIO引脚,只需要控制7号引脚输出高低电平就可以实现LED灯的亮与灭。7号引脚的BCM编码是4。

控制引脚的基本代码如下:

gpio -g mode 4 out   #设置引脚为输出模式, -g表示是以BCM编码
                     #去掉这个参数表示以wiringPi编码方式
gpio -g read 4       #读取当前引脚的状态
gpio -g write 4 1    #设置引脚为高电平
gpio -g write 4 0    #设置引脚为低电平

连接,led灯亮与不亮的状态如下:

 控制GPIO引脚的多种方式

第一种

输入以下代码选定GPIO引脚

cd /sys/class/gpio    #进入GPIO目录
ls                   #查看GPIO目录中的内容

 注意这是用BCM编码

echo 引脚编码> export    #GPIO操作接口从内核空间暴露到用户空间
                        #执行之后该目录下会增加一个引脚文件

 如图,增加引脚文件后,输入cd gpio4进入目录,就可以使用终端命令控制引脚

使用GPIO开始控制 

echo out > direction      #设置输出
echo 1 > value            #输出高电平
echo 0 > value            #输出低电平

 注销GPIO引脚

cd ..                 #返回上一级目录
echo 4 > unexport    #注销GPIO4接口

第二种:使用python的方法

编写python代码如下,在树莓派中跑动代码即可

以下代码的作用就是让led灯闪烁十次

import RPi.GPIO as GPIO
from time import sleep
GPIO.setmode(GPIO.BCM)   #采用BCM编码
GPIO.setup(4,GPIO.OUT)   #指定使用4号编口
for i in range(1,10):
    GPIO.output(4,GPIO.HIGH)
    sleep(1)
    GPIO.output(4,GPIO.LOW)
    sleep(1)
GPIO.cleanup()

串行通讯接口

串行通讯接口简称串口,采用串行通信的方式一位一位的按照顺序传送。

优点是通信线路简单,只要一对一传输线即可,实现双向通信能够大大降低成本,适用于远距离通信。

缺点就是传输速度较慢。

树莓派的外设一共包括两个串口:一个是硬件串口,一个是mini串口。

硬件串口由硬件实现,有独特的波特率时钟源,性能高,可靠

mini串口性能低,功能简单。

在树莓派上,引脚8(发送,也叫TXD)和引脚10(接收,也叫RXD)是作为主串口的收发端。

树莓派的串口(UART)

树莓派的串口被分为主串口和辅助串口。

主串口:可以通过引脚通讯

辅助串口:不能使用GPIO引脚通讯,被默认分配给蓝牙端。

默认情况下,mini串口是禁用的。

用串口进行通讯步骤

1.准备待调试的硬件串口

2.安装minicom串口助手

3.电脑安装串口调试工具‘

4.使用USB转TTL工具连接电脑和树莓派,开始通讯

第一步

先用以下查看串口打开情况

ls /dev -al

打开mini串口

 再查看串口时可以看见mini串口,但是我们的硬件串口仍然是辅助串口,所以需要将硬件串口设置为主串口。

sudo nano /boot/config.txt

在文章末尾添加上两行代码

dtoverlay=pi3-miniuart-bt
force_turbo=1

之后我们再查看串口时,硬件串口就变成了主串口。

第二步

在树莓派上安装minicom串口助手

sudo apt-get install minicom

在电脑上安装串口调试工具。之后将两者相连即可。

之后的明天再学。。。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值