ไม่สามารถเปิดพอร์ด ttyAMA0 บนราสเบอรี่พายได้

IOT - Internet of things
ไอโอที (IoT) หมายถึงเครือข่ายของวัตถุ อุปกรณ์ พาหนะ สิ่งปลูกสร้าง และสิ่งของอื่นๆ ที่มีวงจรอิเล็กทรอนิกส์ ซอฟต์แวร์ เซ็นเซอร์ และการเชื่อมต่อกับเครือข่าย ฝังตัวอยู่ และทำให้วัตถุเหล่านั้นสามารถเก็บบันทึกและแลกเปลี่ยนข้อมูลได้

Moderator: mindphp, ผู้ดูแลกระดาน

puopun.p
PHP Hero Member
PHP Hero Member
โพสต์: 120
ลงทะเบียนเมื่อ: 27/06/2016 10:03 am

ไม่สามารถเปิดพอร์ด ttyAMA0 บนราสเบอรี่พายได้

โพสต์ที่ยังไม่ได้อ่าน โดย puopun.p »

โค้ด: เลือกทั้งหมด


import serial
import time

def readlineCR(port):
    rv = ""
    while True:
        ch = port.read()
        rv += ch
        if ch=='\r' or ch=='':
            return rv

port = serial.Serial("/dev/ttyAMA0", baudrate=115200, timeout=3.0)

while True:
    port.write("\r\nSay something:")
    port.write("\r\nYou sent:" + repr(rcv))
พอรันแล้วไม่ขึ้นอะไรเลย
puopun.p
PHP Hero Member
PHP Hero Member
โพสต์: 120
ลงทะเบียนเมื่อ: 27/06/2016 10:03 am

Re: ไม่สามารถเปิดพอร์ด ttyAMA0 บนราสเบอรี่พายได้

โพสต์ที่ยังไม่ได้อ่าน โดย puopun.p »

แก้ไขได้แล้ว
สาเหตุ
-เนื่องจากเวอร์ชั่น raspberry pi 3 จะมีบูทูธฝังมาให้ ทำให้พอร์ต serial port จะเป็น ttyAMA0 และ GPIO serial จะเป็น ttyS0 ทำให้ไม่สามารถติดต่อกับเซ็นเซอร์ได้(ปกติ GPIO serial จะเป็น ttyAMA0 อยู่แล้ว)
วิธีแก้ไข
-ทำการเปลี่ยน Alias name ใหม่ โดยใช้วิธีจาก ที่นี่
-หรือใช้เป็น ttyS0 ได้เลย
ตอบกลับโพส

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 68