关于树莓派Pi2经过UART链接攀藤G5传感器的python

1.准备工做:树莓派Pi2板子,攀藤G5传感器python

关于树莓派40pin口网上不少,咱们只了解与攀藤G5链接的问题spa

(1)攀藤G5pin1(VCC5v)要注意是5V,有不少板子接的是3V,而树莓派的pin2和pin4均可以接5V。G5的pin1链接Pi2的pin2和pin4均可以。code

(2)攀藤G5pin2(GND 电源负),G5pin2接Pi2的pin6.blog

(3)攀藤G5pin3(SET 待机设置),能够随便接个口子也能够悬空。get

(4)攀藤G5pin4(RXD 串口接收管脚),接Pi2的TXDpin8。其实若是只是传感器发数据而不作向传感器发数据能够让其悬空。cmd

(5)攀藤G5pin5(TXD 串口发送管脚),接Pi2的RXDpin10。it

(6)攀藤G5pin6(RESET),悬空。console

(7)攀藤G5pin7(NC),悬空。class

(8)攀藤G5pin8(NC),悬空。import

关于网上有不少关于树莓派Pi3的设置,由于树莓派Pi3的UART(ttyAMA0)是被蓝牙默认占用的,因此要进行相应的设置,为了确保不出问题,咱们树莓派Pi2一样进行了设置。

控制台sudo nano /boot/config.txt修改以下:

enable_uart=1

同时关掉默认的console

sudo systemctl disable serial-getty@ttyS0.service

以后sudo nano /boot/cmdline.txt

删掉console=ttyAMA0,console=ttyS0

以后就能够直接运行python代码了

import serial
import time
def pm():
    ser = serial.Serial('/dev/ttyAMA0',9600)
    while True:
        time.sleep(0.5)
        count = ser.inWaiting()
        if count >= 24:
            recv = ser.read(count)
            data = map(lambda c:hex(ord(c)),recv)
            print data
        ser.flushInput()
        
    ser.close()
    return
if __name__=='__main__':
    pm()

要注意,攀藤G5默认波特率为9600,链接不一样的传感器要注意不一样的波特率设置。上述按16进制打印,传感器数据前两位固定为(‘0x42’,‘0x4d’),若是不是可能有问题。

并且要注意要安装pyserial。

相关文章
相关标签/搜索