野火电子论坛

标题: 修改使用uart2~uart8收发数据 [打印本页]

作者: abc53    时间: 2023-5-19 16:16
标题: 修改使用uart2~uart8收发数据
在帖子 只保留eth1网口入坑出坑记录 基础上,需要uart2~uart8串口的输出,修改了uEvn.txt为:

(, 下载次数: 0)
重启后,开发板上可以显示出串口号:
(, 下载次数: 1)
根据官方原理图测试所有uart:
(, 下载次数: 0)
发现uart2~uart5均可以正常收发,但是uart6~uart8死活不行。
然后就有了以下的操作:
1.打开设备树源码位置:
(, 下载次数: 0)
查看imx-fire-uart6-overlay.dts源码,发现源码包含了3个头文件,也一起打开:
(, 下载次数: 0)
(, 下载次数: 1)
2.根据对比,发现uart6对应的引脚应该是:
(, 下载次数: 0)
很显然复用的引脚与我们想要的引脚不一致,这里我们尝试修改引脚标识
(, 下载次数: 1)
通过搜索源码对应的头文件,找到如下关键字
(, 下载次数: 0)
(, 下载次数: 0)
3.疑问:
   (, 下载次数: 1)
  这里就有一个疑问了:引脚是找到了,但是引脚后面的地址0x1b0b1是什么含义呢?
必应搜索找答案,我从不用百度!
https://blog.csdn.net/sunny_hu92/article/details/106664002
https://www.cnblogs.com/fah936861121/articles/7085308.html
看了后豁然开朗,然后依葫芦画瓢,直接修改UART6试试

4.修改源码:
   (, 下载次数: 0)
顺便修改uart7/uart8的配置
5.编译设备树
在内核源码顶层目录输入:
makeARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- npi_v7_defconfig
makeARCH=arm -j4 CROSS_COMPILE=arm-linux-gnueabihf- dtbs

(, 下载次数: 0)
编译文件后,拷贝ebf_linux_kernel-ebf_4.19.35_imx6ul/arch/arm/boot/dts/overlays/下的生成文件到目标板替换,并重启,查看结果
目标板子驱动目录为/usr/lib/linux-image-4.19.35-imx6/overlays/
我们先拷贝到/home/ubuntu目录下
然后用管理员模式cp指令拷贝即可

(, 下载次数: 0)
(, 下载次数: 0)
6.断电重启,测试看结果
   (, 下载次数: 0)
这里每次发送完成后对应更换串口引脚,引脚示意图为:
(, 下载次数: 0)
7.完毕!
附上修改的文件包:
(, 下载次数: 21)






作者: おおおじ。    时间: 2023-5-22 14:39
真不错




欢迎光临 野火电子论坛 (https://www.firebbs.cn/) Powered by Discuz! X3.4