在/dev/中有ttyAMA0和ttyAMA1两个两个串口,但是uart1不能用
cat /proc/tty/driver/ttyAMA
里面只有一个设备,uart1单元没有映射到linux下的设备文件。
- 进入SDK目录\osdrv\opensource\kernel\linux-3.18.y\arch\arm\boot\dts,找到下面两个设备树文件。
- 打开Hi3520dv400-demb.dts文件,增加下面几行
- 在hi3520dv400.dtsi文件中,增加serial1
- 重新编译内核,uImage重新烧入flash中,cat /proc/tty/driver/ttyAMA,可以映射两个串口了。
~ # cat /proc/tty/driver/ttyAMA
serinfo:1.0 driver revision:
0: uart:PL011 rev2 mmio:0x12080000 irq:38 tx:827 rx:43 RTS|DTR|DSR|CD|RI
1: uart:PL011 rev2 mmio:0x12090000 irq:39 tx:0 rx:0 CTS|DSR|CD|RI
- 最后一步,将GPIO复用管脚,配置为了UART1_RXD和UART1_TXD模式。