[求教]QT开发从应用层怎么看ARM内核驱动接口
实在是有点迷糊了,做过window下的QT开发串口啊,网络啊,这些都可以懂,可是到ARM板子下的Linux 就迷糊了 概念没有转换过来
实现基本控件,显示还行,到板子的功能部件比如串口,SPI,IIC......之类的就迷糊了,我知道那都是有驱动了,关键是我打开那个驱动,却不知道这个驱动为我提供了哪些接口
大神们,你们如果拿到一份内核源代码,用相应的QT开发程序时,是怎么调试板子功能驱动了,支个招吧,谢谢 设备文件 imjacob 发表于 2016-7-6 17:40
设备文件
能 再详细点说明吗?我有点不懂了 设备文件。
例如 SPI 可以这么干:
fd = open(“/dev/spi0”,O_RDWR);
然后各种 ioctl 配置一下速度,格式,超时等。
最后标准 write/read 操作
ret = write(fd,tx_buf, count); linux中一切皆文件,设备也是一个文件。通常对一个接口的操作无非就是
1、调用open打开设备;
2、调用ioctl去设置接口的参数;
3、调用write发数据;
4、代用read接受数据。
根据这思路可以搜索到类似的代码:
http://www.th7.cn/system/lin/201503/96810.shtml
mangocity 发表于 2016-7-6 17:55
设备文件。
例如 SPI 可以这么干:
谢谢 我知道这个流程了
那怎么通过设备号找到对应的驱动程序呢?我先看看驱动程序 lanqilove 发表于 2016-7-6 18:02
linux中一切皆文件,设备也是一个文件。通常对一个接口的操作无非就是
1、调用open打开设备;
2、调用ioctl ...
怎么找到这个设备对应的驱动代码呢?它在源代码中哪里?我改怎么查找 百度搜,哪里不会搜哪里 ywlzh 发表于 2016-7-6 21:09
怎么找到这个设备对应的驱动代码呢?它在源代码中哪里?我改怎么查找
看下韦东山的书第19章,比较好的写了这个问题。然后觉得还不够,read the xxx code imjacob 发表于 2016-7-8 08:58
看下韦东山的书第19章,比较好的写了这个问题。然后觉得还不够,read the xxx code ...
好的 谢谢 first_blood 发表于 2016-7-7 14:34
百度搜,哪里不会搜哪里
呵百度搜 和 向专业人士请教 哪个好一些
况且,百度也不是面面俱到 一般我都找例子,然后修改,比如安卓--串口 ,肯定有例子,太底层的驱动不需要懂的,还去看系统源码,那效率就低了。知道怎么设置参数 、 打开设备、 收 、发 , 完事啦,还有一种情况是系统裁剪了设备,需要注意就可以了。 luguobing 发表于 2016-7-9 13:38
一般我都找例子,然后修改,比如安卓--串口 ,肯定有例子,太底层的驱动不需要懂的,还去看系统源码,那效 ...
恩 昨天试了一下,对这板子的功能部件的应用例程,QT也能搞
但以前学过字符设备驱动,知道是那么回事,看不到对应的源码,心里总是有点芥蒂。
做过几年单片机开发,不让我看驱动,那就一个心酸 ywlzh 发表于 2016-7-9 13:46
恩 昨天试了一下,对这板子的功能部件的应用例程,QT也能搞
但以前学过字符设备驱动,知道是那么回事, ...
额难道你还要重新写驱动才开心,下次要用网络难道你要把所有的协议都弄懂?有现成了就用,速度速度开发才是正道! luguobing 发表于 2016-7-9 14:15
额难道你还要重新写驱动才开心,下次要用网络难道你要把所有的协议都弄懂?有现成了就用,速度速度 ...
恩就看看他们驱动是怎么写的,至少要看懂吧,真有兴趣可以自己写写驱动呀 本帖最后由 NJ8888 于 2016-7-9 16:58 编辑
最省事办法是mmap,前提你有详细数据手册,执行效率比普通写驱动高好多。比四楼描述方法快。曾经SPI发送5字节,mmap方式消耗时间只有ioctl方式的1/20 NJ8888 发表于 2016-7-9 16:48
最省事办法是mmap,前提你有详细数据手册,执行效率比普通写驱动高好多。比四楼描述方法快。曾经SPI发送5字 ...
你这个方法是不是跳过驱动层,直接配置寄存器?
直接在应用层获取寄存器里的数据? ywlzh 发表于 2016-7-9 20:25
你这个方法是不是跳过驱动层,直接配置寄存器?
直接在应用层获取寄存器里的数据? ...
对,跳过驱动,省了应用到内核以及内核到应用的两次数据拷贝 NJ8888 发表于 2016-7-9 20:28
对,跳过驱动,省了应用到内核以及内核到应用的两次数据拷贝
恩 谢谢 现在还没有达到那个高度,只能远观 还是想先看看驱动,一看源代码那么多,就是不知道那些个配置好的驱动源代码在哪 ywlzh 发表于 2016-7-9 20:34
恩 谢谢 现在还没有达到那个高度,只能远观 还是想先看看驱动,一看源代码那么多,就是不知道那些个配置 ...
我也不会写驱动,所以耍花招用mmap直接访问,我还把linux时钟片的中断关过导致系统卡死在我的程序中换不出去,哈哈
页:
[1]