arm linux驱动程序和应用程序之间的一些问题

发布网友 发布时间:2022-04-23 09:16

我来回答

3个回答

热心网友 时间:2023-10-11 07:01

个人的见解:
1、驱动算是底层的东西,它加载后在用户层也就是文件系统中会生成一个设备文件,一般在/dev目录下。
2、应用程序就是看名字就是应用层的,它就是利用上面所说的设备文件跟底层联系的。所以应用层开发只需对设备文件进行操作就行了。
3、QT的话,其实是属于应用层的,具体就一下QT移植与开发。
另外,团IDC网上有许多产品团购,便宜有口碑追问大哥,你答非所问吧

热心网友 时间:2023-10-11 07:01

我不知道你用的那个版本的kernel,但是据我所知,ioctl的cmd参数的定义,不是你那么简单的....

需要用到ioctl的命令字定义的几个宏定义...

自己定义是没有用的,因为ioctl需要知道你的命令是io读还是io写..

比如在我的程序里面我这样定义命令字...

你自己查一下_IOW,_IO这两个宏...

#include <linux/ioctl.h>//使用下面的宏

#define DEVICE_NAME "/dev/test_device"
#define TEST_MAGIC_NUM 'k'
#define PORT_SET _IOW(TEST_MAGIC_NUM,1,int)
#define PORT_GET _IO(TEST_MAGIC_NUM,2)
#define PORT_LOCK _IO(TEST_MAGIC_NUM,3)

你的应用程序中,也应该把这样定义的命令字给包含进去...这两个个宏的意义是,不要和系统已经使用ioctl的cmd重复...因为ioctl接口并不是仅仅给你使用的.你自己写的命令字会把系统原有的给覆盖...

热心网友 时间:2023-10-11 07:02

查看驱动部分管脚配置是不是和ARM板上一致。GPIO口,要查开发板电路

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com