话说要选一块linux的开发板作为广播的硬件主板,经过硬件同学的一番对比,选的是正点原子RV1126 Linux核心板,首先必须给正点原子点赞,因为资料那是是相当齐全!老手新手都能找到想要了解的!
看到一堆的文档,是不是有点不知所措,莫慌,第一步,先是通过查看用户手册,熟悉这个板子,包括屏幕上的各种应用,都点一点,根据用户手册的测试例程,逐个的测试开发板的功能,有点感觉先!
连上开发板,关键的几个点,一是串口调试口,波特率是1500000,插上网线后,开发板程序支持dhcp,会获得一个动态ip,然后使用ssh工具即可远程到开发板,然后上传文件,下载日志什么的就都跟使用linux服务器没有什么差别了!
第二步是用户程序开发,这对经常写linux程序的同学来说并不陌生,只是编译程序从gcc换成了arm-linux-gnueabihf-gcc,如:
/opt/atk-dlrv1126-toolchain/bin/arm-linux-gnueabihf-gcc chrdevbaseApp.c -o chrdevbaseApp
第三步尝试驱动程序开发,驱动例程的源码在:
\【正点原子】RV1126 AI开发板资料(A盘)-基础资料\01、程序源码\01、程序源码\06、Linux驱动例程源码
驱动程序编写的文档在:
D:\project\RV1126\【正点原子】RV1126 AI开发板资料(A盘)-基础资料\10、文档教程(非常重要).zip\10、文档教程(非常重要)
尝试了第一个led驱动程序的例子,碰到几个问题记录下:
1、需要先编译sdk的kernel,所以先要参考上图的系统开发手册搭建开发环境!
2、修改例子中的Makefile:
#这个路径要修改为实际sdk的路径 KERNELDIR := /home/alientek/rv1126/kernel CURRENT_PATH := $(shell pwd) obj-m := chrdevbase.o build: kernel_modules kernel_modules: $(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) modules clean: $(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) clean 编译: alientek@ubuntu:~/driver_test/sample/01_chrdevbase$ make ARCH=arm make -C /home/alientek/rv1126/kernel M=/home/alientek/driver_test/sample/01_chrdevbase modules make[1]: 进入目录“/home/alientek/rv1126/kernel” CC [M] /home/alientek/driver_test/sample/01_chrdevbase/chrdevbase.o Building modules, stage 2. MODPOST 1 modules CC /home/alientek/driver_test/sample/01_chrdevbase/chrdevbase.mod.o LD [M] /home/alientek/driver_test/sample/01_chrdevbase/chrdevbase.ko make[1]: 离开目录“/home/alientek/rv1126/kernel”
3、ko文件要拷贝到/lib/modules/4.19.111/
[root@ATK-DLRV1126:~/driver_test]# cp chrdevbase.ko /lib/modules/4.19.111/
再在这个路径地下执行depmod
然后加载ko、运行测试程序!
[root@ATK-DLRV1126:/lib/modules/4.19.111]# modprobe chrdevbase [root@ATK-DLRV1126:/lib/modules/4.19.111]# cd - /root/driver_test [root@ATK-DLRV1126:~/driver_test]# ./chrdevbaseApp /dev/chrdevbase 1 read data:kernel data! [root@ATK-DLRV1126:~/driver_test]# ./chrdevbaseApp /dev/chrdevbase 2 [root@ATK-DLRV1126:~/driver_test]# ./chrdevbaseApp /dev/chrdevbase 1 read data:usr data! [root@ATK-DLRV1126:~/driver_test]#
-------------------广告线---------------
项目、合作,欢迎勾搭,邮箱:promall@qq.com
本文为呱牛笔记原创文章,转载无需和我联系,但请注明来自呱牛笔记 ,it3q.com