为了验证前面编写的字符设备编写是否正确,在android 中编写一个测试程序,查看驱动是否正常,为了让android在下载新code,启动时能够自动加载独立驱动模块的Ko 文件,需要在init.rc文件中添加insmod_kernel("driver/char/chr_dev/chr_dev/chr_dev.ko"),让我们的字符驱动能够在android启动时,自动加载ko文件,这样我们的平台在启动时,通过ADB就可以查看到对应的字符设备(/dev/chr_dev)如下图(最后的位置):
目录结构:
测试程序源代码(存放在目录:openplatform/android/externl/chr_dev):
这里有一点需要提醒自己,由于自己对Android 的源代码不是很熟悉,开始连打印debug都不知道怎么打,最后通过同事的提醒,可以查看source code中,前人已经写好的代码,里面有很多可以参考,可以多学习学习,某些地方不知道如何使用,都可以参考。
Android.mk文件:
这里就不一个一个挨着挨着说明了,BUILD_EXCUTEABLE,就会生成可执行程序,并且可执行的程序在/system/bin 目录下,我们可以通过./chr_dev 来调用测试实例,这里说实话对Android.mk 的格式要求,不是很懂,哪里该空格哪里该Table,目前采用的方法都是把别人的source code 拿过来改,但是真正有什么硬性要求,还要后续的学习,才能够真正明白其中的真谛。
具体的测试情况: