今天在研究树莓派下获取GPS信号,买的是串口类似的GPS模块,结果搞了一天都没有研究出来了。最后在一位网友的提示下才发现,原来树莓派的默认串口被蓝牙占用了。
在树莓派里面,有两种串口,一种是硬件串口,一种是mini串口,硬件串口在树莓派3的版本之前,就是直接接在TX和RX接口上的,但是树莓派3版本之后,这两个接口就变成了mini接口,所谓mini接口,就是不稳定的接口。据说也无法接第三方模块来测试,就比如我现在的这个GPS模块。
下面我们来恢复这个默认串口,实际就是把蓝牙占用的串口给恢复。
1、开启串口功能
执行raspi-config,在Interfacing Options配置中把串口功能(Serial)打开
2、关闭蓝牙功能
sudo systemctl disable hciuart
编辑文件/lib/systemd/system/hciuart.service,将文件里面所有的"ttyAMA0"改成"ttyS0",如果没有则不用修改
3、恢复串口使用并设置为通用串口
编辑/boot目录下的config.txt文件,sudo nano /boot/config.txt,在文件末尾加上如下内容
dtoverlay=pi3-miniuart-bt
注意:该语句中的"pi3-miniuart-bt"是对应/boot/overlays目录下的文件pi3-miniuart-bt.dtbo
4、编辑文件/boot/cmdline.txt,sudo nano /boot/cmdline.txt,将文件内容替换成下面的内容
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
5、更新系统并重启
sudo apt-get update
sudo apt-get upgrade
sudo reboot
说实话,上面的搞法太麻烦了,而且把串口恢复后,树莓派的蓝牙就用不了了。最简单、也是最好用的方法是直接买一个USB转串口的模块,啥设置都不用,直接接线,然后插树莓派的USB口,直接就可以使用串口,方便到哭了。。
购买地址(下面2款任选一款购买就可以了,我本人是2款都买了回来,都能正常使用):
ok
mjj通道