操作串口的时候,总是出现“/dev/ttyS0: no such device or address”,但是这个文件是存在的。
曾经想过,问题是不是处在内核对串口的支持上,但是,用ttySA0和ttySA1都能做为Console的,说明硬件上和内核都是支持的。于是,问题锁定在文件系统上。
后来想到是不是ttyS0建立不正确呢?当时建立是mknod -m 666 ttyS0 c 4 64,网上很多文档都是这样建立的(内核没有开devfs)。
查看/proc/tty/drviers,有一行“ttySAC /dev/s3c2410_serial 204 64-66 serial”,Oh yeah,我明白,s3c2410的串口设备号和x86的不一样的,主设备号是204,此设备号是64。
所以
rm ttyS*
mknod -m 666 ttyS0 c 206 64
mknod -m 666 ttyS1 c 206 65
经过测试,确实这样可行!
阅读(2118) | 评论(0) | 转发(0) |