[发明专利]一种用户态控制I2C设备的方法与终端在审
申请号: | 202011486902.2 | 申请日: | 2020-12-16 |
公开(公告)号: | CN112463662A | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 张水生 | 申请(专利权)人: | 福州创实讯联信息技术有限公司 |
主分类号: | G06F13/10 | 分类号: | G06F13/10;G06F13/42 |
代理公司: | 福州市博深专利事务所(普通合伙) 35214 | 代理人: | 林振杰 |
地址: | 350011 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用户 控制 i2c 设备 方法 终端 | ||
1.一种用户态控制I2C设备的方法,其特征在于,包括步骤:
S1、加载内核驱动,进行设备树匹配和I2C总线初始化,并创建字符设备节点;
S2、由用户态程序根据用户操作信息,生成对应的操作数据,并将所述操作数据写入字符设备节点,所述操作数据包括目标I2C设备地址和具体操作内容;
S3、由内核驱动解析所述操作数据,得到所述目标I2C设备地址和所述具体操作内容,调用驱动的操作方法集中与所述具体操作内容对应的方法向与所述目标I2C设备地址对应的目标I2C设备发送操作请求,使得所述目标I2C设备接收并执行所述操作请求。
2.根据权利要求1所述的一种用户态控制I2C设备的方法,其特征在于,所述步骤S2中所述操作数据的格式为预设通讯协议的通信数据格式;
步骤S3中所述由内核驱动解析所述操作数据具体为:
由内核驱动根据预设通讯协议对所述操作数据进行解析。
3.根据权利要求2所述的一种用户态控制I2C设备的方法,其特征在于,所述通信数据格式具体为:
第一字节为读写位,第二字节为目标设备地址,第三和四字节为待读写的寄存器地址,第五字节为设置访问设备的速率,第六字节为预留位,第七字节为待读写数据的长度,余下字节为待读写数据的具体内容;
所述步骤S2中由用户态程序根据用户操作信息,生成对应的操作数据具体为:
根据所述用户操作信息是数据读取还是数据写入的判断结果向第一字节写入0或1;
读取所述用户操作信息中的目标设备地址,写入第二字节;
读取所述用户操作信息中的目标寄存器地址,将目标寄存器地址写入第三和第四字节;
将所述用户操作信息中访问所述目标I2C设备的速率写入第五字节;
预留第六字节;
将所所述用户操作信息中的待读写数据的长度写入第七字节;
将所述用户操作信息中的待读写数据的具体内容写入余下字节,得到操作数据;
所述由内核驱动根据预设通讯协议对所述操作数据进行解析为:
读取所述操作数据中第二字节,得到所述目标设备地址,读取所述操作数据中其他字节的相应数据,得到所述具体操作内容。
4.根据权利要求1所述的一种用户态控制I2C设备的方法,其特征在于,所述步骤S3中所述操作方法集中的操作方法包括读取、写入、开启、关闭和ioctl方法。
5.根据权利要求4所述的一种用户态控制I2C设备的方法,其特征在于,所述ioctl方法用于对I2C设备进行gpio操作,所述gpio操作包括上电和复位。
6.一种用户态控制I2C设备的终端,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
S1、加载内核驱动,进行设备树匹配和I2C总线初始化,并创建字符设备节点;
S2、由用户态程序根据用户操作信息,生成对应的操作数据,并将所述操作数据写入字符设备节点,所述操作数据包括目标I2C设备地址和具体操作内容;
S3、由内核驱动解析所述操作数据,得到所述目标I2C设备地址和所述具体操作内容,调用驱动的操作方法集中与所述具体操作内容对应的方法向与所述目标I2C设备地址对应的目标I2C设备发送操作请求,使得所述目标I2C设备接收并执行所述操作请求。
7.根据权利要求6所述的一种用户态控制I2C设备的终端,其特征在于,所述步骤S2中所述操作数据的格式为预设通讯协议的通信数据格式;
步骤S3中所述由内核驱动解析所述操作数据具体为:
由内核驱动根据预设通讯协议对所述操作数据进行解析。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州创实讯联信息技术有限公司,未经福州创实讯联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011486902.2/1.html,转载请声明来源钻瓜专利网。