ฉันมีแล็ปท็อปที่มีพอร์ตอนุกรมเพียงพอร์ตเดียว
ฉันไปที่:
/dev
ไดเรกทอรีและฉันพบ:
ttyS0
ttyS1
ttyS2
ttyS3
ฉันจะรู้ได้อย่างไรว่า "ttyS" ใดที่อ้างถึงพอร์ตอนุกรมของฉัน
ฉันมีแล็ปท็อปที่มีพอร์ตอนุกรมเพียงพอร์ตเดียว
ฉันไปที่:
/dev
ไดเรกทอรีและฉันพบ:
ttyS0
ttyS1
ttyS2
ttyS3
ฉันจะรู้ได้อย่างไรว่า "ttyS" ใดที่อ้างถึงพอร์ตอนุกรมของฉัน
คำตอบ:
ฉันคิดว่ามันเป็นคำสั่งนี้:
dmesg | grep tty
การรันบนกล่อง Linux ของฉันเอง (ซึ่งมี 1 พอร์ตอนุกรมเท่านั้น) จะสร้างบรรทัดเอาต์พุต ttyS0 เดี่ยว ลองด้วยตัวคุณเองคุณจะเห็นว่าฉันหมายถึงอะไร
tty
เพื่อรับชื่อ tty ของคุณ ฉันคิดว่านั่นคือความหมายของ OP เนื่องจากพวกเขาไม่ได้ตั้งคำถามว่า "พอร์ตอนุกรมใดที่getty
ใช้งานอยู่"
ดูว่า UARTs /proc/tty/driver/serial
ที่ตรวจพบใน บรรทัดที่มีuart:unknown
วิธีการ: ไม่พบสิ่งใด
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:16550A port:000002F8 irq:3 tx:111780 rx:1321 RTS|DTR|DSR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
หากมีบางสิ่งเชื่อมต่อและขับสาย CTS, DSR หรือ CD (เหล่านี้คือสายอินพุต) คุณสามารถมั่นใจได้เลยว่ามีบางสิ่งบางอย่าง ... เหมือนกันกับ rx-byte-count
หากคุณต้องการทำสิ่งนี้โดยทางโปรแกรมการอ่านเอาต์พุตจาก dmesg อาจเป็นปัญหาแทนโฟลเดอร์ / dev / serial / by-id มีลิงค์ sym ที่ตั้งชื่อตามข้อมูลที่ระบุตัวตนของอุปกรณ์ของคุณและชี้ไปที่ / dev / tty ที่เฉพาะเจาะจง เชื่อมต่อกับ
ฉันไม่แน่ใจว่านี่เป็นกฎพิเศษของ udev ที่เฉพาะเจาะจงในการแจกจ่าย แต่มันทำงานได้ดีใน Ubuntu ให้ฉันรู้ว่ามันใช้งานได้หรือไม่
ttyS0
ผ่าน3
สอดคล้องกับCOM1
ผ่าน4
ตามลำดับ พวกเขามักจะมีทรัพยากรฮาร์ดแวร์เดียวกันและไม่สามารถตรวจพบได้ตลอดเวลาดังนั้นจึงมีอยู่เสมอ
setserial
เพื่อแมปทรัพยากร ttyS0 ที่ใช้กับพอร์ตอนุกรมของคุณ linux.die.net/man/8/setserial ปกติไม่จำเป็นต้องใช้เนื่องจากมีอะไรนอกเหนือจาก COM4 มักจะมีฮาร์ดแวร์เสริมเพียงพอที่จะให้ Linux ตรวจจับและเพิ่มอุปกรณ์อนุกรมตามความเหมาะสม
นอกจากนี้ยังมีคำสั่งsetserial
ที่ใช้/proc/tty/driver/serial
ในการรับข้อมูล
# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3