1.WiringPi串口示例程序报错:No Such File or directory
香橙派虽然是一款性价比很高的Linux开发板,但是和树莓派相比,其开发文档、社区资源都相对匮乏,而且很多库都是从树莓派那移植过来的,比如控制IO的库:WiringPi,而这往往会导致一些错误的发生,比如这个让我头痛的串口错误:
分析错误的原因,不难发现问题出在/dev/ttyAMA0这,ls /dev后发现香橙派的ubuntu系统下居然没有这个设备:
于是我就开始在网络上搜索,然而给出的解决方案多是树莓派的,因为树莓派蓝牙串口会与硬件串口冲突,而boot/overlays里有个文件是可以恢复硬件串口的,但是对于香橙派,我只想说连这个文件夹都木有啊!
2.香橙派的串口设备dev/ttySx
经过一系列的折腾,终于搞明白香橙派串口设备在哪
cat /proc/tty/drivers
香橙派的硬件串口Uart的设备名称为ttySx,usb串口名称为ttyUSBx ,而不是树莓派的设备名称ttyAMA0!
但是新的问题又来了,为什么没有ttyS1,ttyS2,ttyS3?
3.修改香橙派硬件配置文件script.fex
多谢https://blog.youkuaiyun.com/renpeng009672/article/details/85100828这篇文章的答案,真是网上找了好久好久都没有找到解决办法,真是要吐槽香橙派技术文档真是少,系统也BUG很多!
香橙派硬件配置可以通过修改script.fex完成(类似树莓派raspi-config的操作)
香橙派使用的是全志的芯片,该类芯片的硬件配置可以参考这份H3芯片手册
http://www.doc88.com/p-9681502404051.html
具体的操作方法:
(1)下载sunxi-tools并编译(如果没有git指令需要安装git)
git clone git://github.com/linux-sunxi/sunxi-tools.git
cd sunxi-tools
make