- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北邮在线物联网课程:字符设备和状态设备的使用
北邮在线物联网课程:字符设备和状态设备的使用
基础知识
Linux 操作系统中一切皆为文件,所以,我们用到的一些设备,也当作文件
去操作。对设备的操作,一般对计算机的硬件操作的比较少,一般是外围嵌入
式设备,如出租车计价器,开发板的LED 灯等。
4.1 字符设备
我们今天以目标机(开发板)上的温度传感器为例给大家讲解字符设备的
操作。
字符设备的操作也要遵循文件的操作步骤,打开操作关闭。
在打开时,需要知道文件的名称以及打开方式。一般驱动人员在驱动设备
的时候会对硬件设备进行命名,一般都是放在“/dev ”下面,查看目标机的使
用手册可以查到设备对应的名称。例如:温度传感器名为 TEM0 。对于温度传
感器来说,我们仅需要读取传感器的值来查看温度,我们不需要给传感器写数
据。因此,以只读方式就可以了。
在对传感器设备进行读取时,需要给一个地址用来存放读取出来的数据。
温度需要放到一个结构体内,具体的结构体的类型在目标机的使用手册中有说
明,包括两个成员一个是整型,一个是浮点型。在精度要求不高时,只用整型,
在精度要求高时,需要用到浮点型。
struct temperature
{
int a;
float f;
};
4.2 状态设备
我们今天以目标机(开发板)上的LED 为例给大家讲解状态设备的操作。
状态设备的操作也要遵循文件的操作步骤,打开操作关闭。
在打开时,需要知道文件的名称以及打开方式。查看目标机的使用手册可
以查到LED 对应的名称为“leds ”。对于LED 来说,我们仅需要设置它的状态
是“亮”或者“灭”,因此,以只写方式就可以了。
4.3 相关函数列表
表4-1 LED 灯操作相关函数列表
函数名 ioctl
头文件 #include fcntl.h
函数原型 int ioctl(int fd, int cmd,int position);
控制 I/O 设备 ,提供了一种获得设备信息和向设备发送控制参数的
手段。用于向设备发控制和配置命令 ,有些命令需要控制参数,这
read / write , Out-of-band
函数功能 些数据是不能用 读写的 称为 数据。也
,read / write in-band , I/O
就是说 读写的数据是 数据 是 操作的主
ioctl ,
体,而 命令传送的是控制信息 其中的数据是辅助的数据。
1.fd :欲操作的文件路径与文件名,也可以是目录名。
备注:当该参数为文件的时候,access 函数能使用mode 参数所有
的值,当该参数为目录的时候,access 函数值能判断目录夹是否存
参数说明 在。
2.cmd 0
:表示关闭1表示打开。
3.position :表示位置。
0 -1
函数返回值 成功为 ,出错为 。
案例
例1. 写程序,读取目标机上温度传感器的温度,并且打印出来。
/*
*文件:temp.c
*题目:打开温度传感器,读取当前温度,并显示到屏幕上
*/
#include stdio.h
#include fcntl.h
#include stdlib.h
//定义温度结构体
typedef struct temp
{
您可能关注的文档
- 动力线与编码器线走向类型.pdf
- 动态大灯.pdf
- 动态电路冲激响应.pdf
- 动态间隔取点拟合缓和曲线算法实现—终稿.pdf
- 动态硫化乙烯-辛烯共聚物硅橡胶热塑性弹性体性能的影响因素.pdf
- 动视觉原理在公路线形设计中的应用.pdf
- 劳动合同法中经济补偿金的定性及其制度构建.pdf
- 助干剂对喷雾干燥技术制备二羟基丙酮饲料添加剂的影响.pdf
- 勒内·贝尔热《欢腾的虚拟:复杂性是升天还是入地?》《第欧根尼》1997年第02期.pdf
- 勘察设计证书号码.doc
- 高中美术教学中的立体构成策略探讨教学研究课题报告.docx
- 乒乓球训练对初中生运动自信与自我效能的提升研究教学研究课题报告.docx
- 运用实地考察的项目式学习模式研究小学地理知识的实践研究教学研究课题报告.docx
- 小学体育教学中运动技能评估软件的应用与评价探讨教学研究课题报告.docx
- 高中体育课堂教学模式的创新与评估研究教学研究课题报告.docx
- 学生血吸虫病知识.pptx
- 《成型机器配》课件.ppt
- 初中美术色彩教学创新混色理论与实践的结合应用教学研究课题报告.docx
- 高中物理力学教学中的实验方法与创新能力提升教学研究课题报告.docx
- 初中历史学科古法造纸模块的教学设计与效果评估教学研究课题报告.docx
文档评论(0)