10945| 0
|
[教程] 《边学边用树莓派-5》树莓派通过Shell脚本控制 GPIO |
Raspberry Pi 主板配置了一组GPIO,一共有8个GPIO可以用作输入或输出,可以用这些GPIO来开发一些电子项目。 如控制LED灯、电机、继电器。也可以作为输入接口,读取按键等开关量输入的传感器。这里需要提醒大家,树莓派的GPIO是3.3V的。这意味着他输出高电平是3.3V,作为输入的话也只能最大限度接受3.3V的输入。特别是树莓派的CPU非常精密,如果因为实验的时候输入了错误的电压或者不小心短路了GPIO,树莓派将损毁而基本不能修复。 如果要万无一失可以使用DFRobot开发的 Raspberry Pi 面包板扩展板 或者 Raspberry Pi Meet Arduino 扩展板对IO进行保护,同时也将3.3V转化为5V,兼容更多的外设。 树莓派有多种GPIO控制方式:Shell脚本、Python编程、wiringPi C/C++库。这里咱们看看如何通过Shell脚本进行控制。 Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。 这里我们使用Raspberry Pi 面包板扩展板、一颗510欧电阻、一颗LED灯、一个面包板来做如下实验。 《面包板图》 首先进入root权限模式,将GPIO25引脚的操作接口从内核空间暴露到用户空间: 在以下地址产生了一个gpio25的目录,并产生了所需的控制文件
将GPIO25设置为输出
将GPIO25 置高
将GPIO25 置低
我们也可以将GPIO25设置为输入模式,并读取IO状态,在这里我们使用一个按钮开关来做实验 试试按钮按下读取的状态下面我们可以将操作保存为Shell脚本,所谓脚本是指包含了很多Shell命令的文件。 使用nano编辑器输入以下代码,将它保存为文件名为 on.sh 的文件 $1指代第一个命令行参数,在执行脚本的时候通过命令行参数选择控制某个GPIO通过chmod命令把它设置为可执行:
执行这个Shell脚本置GPIO25为高:
|
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed