开发板 — 调试串口
Posted yantuguiguziPGJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发板 — 调试串口相关的知识,希望对你有一定的参考价值。
《开发板 — 调试串口》
1.查看串口设备
ls /dev/tty*
其中ttyAMA1是我们要调试我串口。
2.使用ttyAMA1
通过stty -F /dev/ttyAMA1 -a查看串口属性
可以查看波特率是9600
通过stty修改串口设置:
1 2 3 |
|
从ttyAMA1中读取数据:
1 2 3 4 5 |
|
向ttyAMA1中写数据:
echo "1" > /dev/ttyAMA1
3.串口配置
场景:在调试串口为ttyFIQ0的时候,要调试485。485连接在uart0上。在设备树中使能了设备树后,发现只能往外发送数据,但是用cat数据接收不进来。(用示波器测试485芯片上的Rx有数据进来的情况下)
可能原因:波特率不同,因为ttyFIQ0是115200,但是uart0的波特率是9600。但是数据可以发送出去用echo,并且在电脑端接收没有乱码。不太理解为什么?
解决:写串口程序。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
|
4.从内核配置串口
问题描述:一开始通过ls查看到有ttyAMA1这个设备节点。但是直接使用的时候不能使用。然后使用stty查看属性。提示:没有这个设备或者地址。
问题分析:有可能是串口驱动里面直接映射了这个设备节点,也就是创建了这个设备节点。但是并没有配置硬件。
问题修改:
1.使能uart1
vi arch/arm/boot/dts/hi3521d.dtsi
可以查看到这个设备。直接将status中修改成okay。就可以了(不过不建议直接在这边修改)
直接修改
vi arch/arm/boot/dts/hi3521d.dts
本来只有一个uart0,这个是我们的调试串口。
然后模仿写一个uart1。
2.引脚复用
查看海思的引脚复用手册可以看到
通过himm修改引脚复用。这样串口就配置成功。
分类: 《开发板》
以上是关于开发板 — 调试串口的主要内容,如果未能解决你的问题,请参考以下文章
AM57x平台开发板的默认调试串口为UART3改为uart1
AM57x平台开发板的默认调试串口为UART3改为uart1