1、LED与树莓派连接
LED是一种常用。廉价、高效的光源,其灯泡长腿为正极,短腿为负极。使用LED的注意如果将其直接连接到高于1.7V的电源上,会产生一个非常大的电流,导致LED甚至树莓派的损坏。通常情况下为LED配备一个串联电阻,使流经LED的电流限制在特定的数值上,从而对LED和为其供电的GPIO引脚提供保护。
树莓派的GPIO 引脚只能提供3mA 或 16mA 左右的电流,对于LED来说,只要流经的电流大于1ma就以发光,电流越大,亮度就越高。
在连接硬件设备前,先切断树莓派的电源,我一般都是不断电操作,我不建议同学这样做,万一出问题,别找我哈。
将树莓派第一脚3.3V和第9脚分别扩展到面包板。LED灯接11脚GPIO17,串联一个470欧的电阻。我这边正好有个按键与LED模块,我就直接接了。插上线LED灯就亮了。
除了能直接点亮LED,还能通过GPIO 控制LED开关,下面将使用Python 控制该LED 发光。
2、软件环境
在点亮一个LED之前,需要给同学们介绍Vnc、Python语言和VScode的使用。
(1)VNC
VNC(Virtual Network Computing)是一种远程桌面协议,允许用户通过互联网连接到远程计算机,并在本地查看和控制远程计算机的桌面界面。如果使用WIndows图形化的桌面方式连接树莓派,还需要再树莓派上面安装VNCServer,在windows上安装Vncviewer。
以下是使用VNC远程桌面的一般步骤:
- 在远程计算机上安装VNC服务器软件(例如RealVNC、TightVNC等)。
- 配置VNC服务器,设置访问密码和权限。
- 确保远程计算机和本地计算机处于同一网络,并且能够相互访问。
- 在本地计算机上安装VNC客户端软件(例如RealVNC Viewer、TightVNC Viewer等)。
- 打开VNC客户端,并输入远程计算机的IP地址和端口号,然后点击连接。
- 输入VNC服务器的访问密码,点击确认。
- 现在,您应该能够在本地计算机上查看远程计算机的桌面界面,并且可以通过本地键盘和鼠标控制远程计算机。
请注意,使用VNC远程桌面需要确保网络连接稳定和安全,以防止未经授权的访问。在配置VNC服务器时,请务必设置强密码并限制访问权限。
安装VNCserver,树莓派自带有RealVNC,打开即可。
启动vncserver的命令为vncserver-virtual -geometry 1440x1080
windows使用vncviewer开启远程桌面连接
登录进去之后就像接了显示器一样操作即可
(2)Python语言
Python语言是一门高级、通用、解释型、面向对象的编程语言。它具有简洁的语法和强大的功能,被广泛用于Web开发、数据分析、人工智能、科学计算等领域。Python具有易学易用的特点,适合初学者入门,同时也能满足专业开发人员的需求。
树莓派Linux系统使用Python命令可以查看Python版本。我安装的版本比较新,集成的Pyhton解释器版本也比较高,不过建议用稍微低一点版本的Python环境。
(3)Vscode
由于这个ARM架构的Linux 环境下我没有找到sublime可以安装的版本。可以用Vscode作为IDE来写代码了,当然也可以用其他的PythonIDE,如Thonny,随便同学们。
然后大家一顿操作猛如虎,都比较简单,安装中文语言,安装Python支持,设置字体(ctrl与+-调整),最后玩个helloworld!
3、点亮LED
当GPIO口11输出低电平时,LED灯点亮。当GPIO口11输出高电平时,LED灯熄灭。
#导入RPi.GPIO库函数命名为GPIO
import RPi.GPIO as GPIO
import time #将GPIO编程方式设置为BOARD模式
GPIO.setmode(GPIO.BOARD)#设置GPIO11输出模式
GPIO.setup(11,GPIO.OUT)GPIO.output(11,GPIO.LOW)
4、LED灯闪烁
#导入RPi.GPIO库函数命名为GPIO
import RPi.GPIO as GPIO
import time #将GPIO编程方式设置为BOARD模式
GPIO.setmode(GPIO.BOARD)#设置GPIO11输出模式
GPIO.setup(11,GPIO.OUT)print('Start Blinking...')while(True):GPIO.output(11,GPIO.HIGH)time.sleep(1)GPIO.output(11,GPIO.LOW)time.sleep(1)
短短几行代码即可,闪烁的循环放到while里面,时间间隔为1S,也可以设置为0.1,闪烁就快10倍,如果要终止程序,按键盘的CRTL+C,中断程序的运行。
树莓派LED灯闪烁
5、注意事项
该程序并不完整,如果再次运行会出现警告信息:RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.
主要原因是因为使用过的引脚11由于键盘终止死循环而非正常原因退出,没有释放引脚资源,因此需要修改程序,使用try...except...finally异常处理模式。
这样运行多次不会出现警告信息了。