开发环境:
主机:ubuntu12.04
开发板:rt5350
openwrt:openwrt15.05
1 编写应用程序在前面的章节中, 我们成功的写出了我们自己的驱动程序, 并且向应用程序提供了 open、read、write 三个接口,那么接下来我们就来编写应用程序,调用这些接口。
#include #include #include #include int main(int argc, char **argv){int fd;char val;fd = open(/dev/rt5350, o_rdwr);if (fd < 0){printf(can't open /dev/rt5350\\n);}read(fd, &val, 1);write(fd, &val, 1);return 0;}该应用程序很简单,就是在 main 函数里面依次调用了 open、read、write 三个函数接口。
2 写makefile 文件前面我们写出了应用程序,下来我们就要编译应用程序。首先创建一个rt5350_drv_test 目录,然后进入该目录,再创建一个 src 目录,在 src 目录下新建一个makefile 文件,内容如下。
cc = gcccflags = -wallobjs = rt5350_drv_test.oall: rt5350_drv_test%.o: %.c$(cc) $(cflags) -c -o $@ $< $(ldflags)fbtest: $(objs)$(cc) -o $@ $(objs) $(ldflags)clean:rm -f rbcfg *.occ = gcc
cflags = -wall
objs = rt5350_drv_test.o
all: rt5350_drv_test
%.o: %.c
**(cc) **(cflags) -c -o **@ ** rt5350_drv_test
图1
我们就能看到我们自己写的应用程序的选项 rt5350_drv_test,将该选项配置进系统,即选为*。接下来,退出保存,并重新编译系统。
$make v=99
编译完成以后,新生成的固件里面,就已经包含了我们的应用程序了。
18.4 测试然后将前面编译出来的驱动模块软件包也传入到开发板。接下来就开始测试。
1). 安装驱动程序
opkg install kmod-rt5350_drv_3.18.109-1_ramips_24kec.ipkcd lib/modules/3.18.109/insmod rt5350_drv.ko2). 运行测试程序
cd /rt5350_drv_test3). 卸载驱动
rmmod rt5350_drv当运行测试程序的时候,我们就能看到驱动中 open、read、write 函数中的调试信息。从而说明应用程序成功的调用了驱动的相应的函数。
五分钟看完奔驰A180时尚型 C-NCAP碰撞测试全过程
如何在癌症放射治疗过程中使用人工智能
OpenVINO2022系统应用指南
回顾欧司朗2020年精彩时刻
汽车车身控制模块(BCM)
Openwrt开发指南 第18章 驱动开发之字符设备应用程序
Pasternack推出新型毫米波波导天线
SPI通讯协议的工作方式
通俗易懂讲讲通信原理 通信系统的原理和应用
最新国产激光雷达市场排名出炉!谁是第一?58家公司情况及动态
LVD太阳能电磁感应灯开发
煤气管道堵漏的治理方案
蘑菇车联“车路云一体化”构建智能网联汽车产业生态高地
移动实名制管理系统(电子围栏)有效解决非围闭式工地考勤难题
电池充电电源端的电流和电压噪音产生的原因和解决方法
海尔空调立足自主品牌创牌战略 中国空调出海提速
伺服电机电气性能的检查与维护
plc编程语言与c语言的联系 c语言和PLC有什么区别
通用型WiFi和低功耗蓝牙模组ESP32-C3的优势特征及应用范例
如何使用VLC媒体播放器捕获或录制桌面屏幕视频