1.查看串口设备
ls /dev/tty*
其中ttyAMA1是我们要调试我串口。
2.使用ttyAMA1
通过stty -F /dev/ttyAMA1 -a查看串口属性
可以查看波特率是9600
从ttyAMA1中读取数据:
cat /dev/ttyAMA1 //读取串口中的数据 cat /dev/ttyAMA1 > file.txt //读取到的数据保存到txt文本文件中
向ttyAMA1中写数据:
echo "1" > /dev/ttyAMA1
3.串口配置
待补
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修改引脚复用。这样串口就配置成功。