I.MX6ULL开发笔记(二)——硬件外设操作

0x01 点亮第一个RGB灯

在文章http://t.csdnimg.cn/EGWt9中有介绍Linux下文件目录,那么在Linux系统下,RGB灯也是一个设备,所以我们需要到`/sys`目录下去操作这个设备。

之后,我们进入到class目录,这里挂载着开发板上的外设:

在这里就能看到熟悉的硬件接口了,那么我们进入到leds的目录下:

可以看到里面有红绿蓝三个文件,这也就是操作对应gpio的接口,那么我们可以进去看对应的文件夹:

那么我们可以这么去控制蓝灯的亮度,0~255代表灯光的亮度:

shell 复制代码
sudo echo 255 > /sys/class/leds/blue/brightness

之后就可以看到版上灯光亮起:

若想关闭可以设置如下:sudo echo 0 > /sys/class/leds/blue/brightness

其他颜色灯光打开也如上所示。

0x02 使用shell操控硬件

在这之前,我们需要安装一个脚本文件,使用命令sudo apt update进行软件源的刷新 。并且下载vim编辑器,sudo apt-get install vim。对于更新太慢的,可以使用命令:

shell 复制代码
sudo vi /etc/apt/sources.list

屏蔽后面这两句即可。这里用的是国外的软件源。之后安装我们的脚本文件preipheral

shell 复制代码
sudo apt install peripheral

这是野火自己构建的deb包。

之后就可以看到了我们所安装的脚本文件了:

那么执行这些脚本文件,就可以操作对应的硬件外设了,但是在这之前,我们需要在fire-config下将这些外设进行使能。

在这个目录下的:

如果之前没有禁止过任何模块,这些模块都是默认开启的,可以不用管他,后面标记着enable。

之后我们尝试执行一下led的脚本:sudo ./led.sh

这是一个闪灯程序。接下来测试按键功能,使用evtest的软件包,之后执行input.sh的脚本,在这能识别到这三个按钮:

注意不能长按,这个是强制开关机的。接下来玩玩蜂鸣器:

这里就放不了声音了,可以自己动手体验。其他脚本也是一样的执行方式,使用adc可以拧一下变阻器来观察,使用mpu的话可以动动开发板观察情况。

相关推荐
大聪明-PLUS6 小时前
在 C++ 中开发接口类
linux·嵌入式·arm·smarc
云边有个稻草人7 小时前
openEuler容器化实践:Docker部署全场景落地指南
操作系统
s1ckrain9 小时前
数字逻辑笔记—组合逻辑电路
笔记·fpga开发·嵌入式
小兔薯了9 小时前
3. sed 使用手册
shell
ChrylZzz12 小时前
bash和zsh
bash·shell·zsh
挽天java13 小时前
智能终端开发文档
嵌入式
gis分享者14 小时前
如何在 Shell 脚本中实现字符串的截取和拼接?(容易)
面试·字符串·shell·拼接·截取
brave and determined14 小时前
传感器学习(day02)毫米波雷达:重塑人机交互新维度
单片机·嵌入式硬件·嵌入式·人机交互·传感器·毫米波·嵌入式设计
十五年专注C++开发15 小时前
嵌入式软件架构设计浅谈
c语言·c++·单片机·嵌入式
一枝小雨15 小时前
9 更进一步的 bootloader 架构设计
stm32·单片机·嵌入式·软件架构·ota·bootloader·aes加密