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

0x01 点亮第一个RGB灯

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

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

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。对于更新太慢的,可以使用命令:

sudo vi /etc/apt/sources.list

在这里插入图片描述

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

sudo apt install peripheral

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

在这个目录下的:

在这里插入图片描述

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

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

在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/327995.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mongodb删除操作中字符序对结果的影响

本文还是要从删除操作的语法说起。 db.collection.deleteMany(<filter>,{writeConcern: <document>,collation: <document>,hint: <document|string>} ) 删除语法中&#xff0c;可以指定数据写入策略&#xff0c;字符序和使用的索引字段。 字符序&a…

MySQL第四战:视图以及常见面试题(上)

目录 目录&#xff1a; 一.视图 1.介绍什么是视图 2.视图的语法 语法讲解 实例操作 二.MySQL面试题 1.SQL脚本 2.面试题实战 三.思维导图 目录&#xff1a; 随着数字化时代的飞速发展&#xff0c;数据库技术&#xff0c;特别是MySQL&#xff0c;已经成为IT领域中不可…

Mybatis简易搭建并查询数据库表内所有数据

搭建步骤 1.在mysql中创建user表&#xff0c;添加数据2.创建maven模块&#xff0c;导入坐标3.在资源文件夹中导入需要用到的logback.xml4.编写MyBatis 核心配置文件->替换连接信息 解决硬编码问题5.编写 SQL映射文件->统一管理sgl语句&#xff0c;解决硬编码问题6.编码定…

HackTheBox - Medium - Linux - Ambassador

Ambassador Ambassador 是一台中等难度的 Linux 机器&#xff0c;用于解决硬编码的明文凭据留在旧版本代码中的问题。首先&#xff0c;“Grafana”CVE &#xff08;“CVE-2021-43798”&#xff09; 用于读取目标上的任意文件。在研究了服务的常见配置方式后&#xff0c;将在其…

【管理篇 / 登录】❀ 06. macOS下使用USB配置线登录 ❀ FortiGate 防火墙

【简介】飞塔防火墙上都会配有CONSOLE接口&#xff0c;包装里都会配置一根USB配置线&#xff0c;通过这个接口和这根线&#xff0c;我们可以用命令的方式登录飞塔防火墙。随着苹果电脑的普及&#xff0c;我们来学习如何在macOS中使用USB配置线登录飞塔防火墙。 早期飞塔防火墙包…

useContext

可以跨组件传值 其实主要的就是三步 1、const xxx React.createContext();创建一个context 2、<xxx.Provider value{{ num, setNum }}>父组件设置要传递的值 3、const { num, setNum } React.useContext(xxx);子组件下使用 特点&#xff1a; 1、可以有多个xxx.Pr…

网络优化篇(一)---------TCP重传性能优化

本文通过一个TCP重传优化的实际问题,详细讲解问题的分析、定位、优化过程。 通过本文你将学到: 如何通过linux命令和/proc文件系统分析TCP性能数据如何通过linux命令和netlink api分析某个具体的TCP连接的性能数据如何通过bcc工具分析TCP性能数据如何通过调整系统参数优化TCP重…

第 121 场 LeetCode 双周赛题解

A 大于等于顺序前缀和的最小缺失整数 模拟&#xff1a;先求最长顺序前缀的和 s s s &#xff0c;然后从 s s s 开始找没有出现在 n u m s nums nums 中的最小整数 class Solution { public:int missingInteger(vector<int> &nums) {unordered_set<int> vis(…

[C#]使用DlibDotNet人脸检测人脸68特征点识别人脸5特征点识别人脸对齐人脸比对FaceMesh

【官方框架地址】 https://github.com/takuya-takeuchi/DlibDotNet 【算法介绍】 DlibDotNet是一个开源的.NET库&#xff0c;用于实现机器学习和计算机视觉应用。它基于C库dlib&#xff0c;通过C/CLI封装了dlib的所有功能&#xff0c;为.NET开发者提供了简单易用的API。以下是…

蓝桥杯练习题(一)

&#x1f4d1;前言 本文主要是【算法】——蓝桥杯练习题&#xff08;一&#xff09;的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是听风与他&#x1f947; ☁️博客首页&#xff1a;CSDN主页听风与他 …

【计算机毕业设计】SSM健身房管理系统

项目介绍 本项目为后台管理系统&#xff0c;主要分为管理员与用户两种角色&#xff1b; 登录页面,管理员首页,会员增删改查,教练增删改查,运动器材管理等功能。 用户角色包含以下功能&#xff1a; 用户登录页面,用户首页,选择课程,选择教练等功能。 环境需要 1.运行环境&a…

LabVIEW在指针式仪表读数中的应用

在LabVIEW环境中&#xff0c;为实现指针式仪表的自动读数&#xff0c;首先进行图像预处理&#xff0c;包括图像缩放、灰度化和二值化&#xff0c;以提高处理速度和减少噪声干扰。利用LabVIEW的图像处理功能&#xff0c;灰度化和二值化操作简化了图像的色彩信息&#xff0c;便于…