คำถามติดแท็ก serial-port

2
วิธีการเปิดอ่านและเขียนจากพอร์ตอนุกรมใน C?
ฉันสับสนเล็กน้อยเกี่ยวกับการอ่านและการเขียนไปยังพอร์ตอนุกรม ฉันมีอุปกรณ์ USB ใน Linux ที่ใช้ไดรเวอร์อุปกรณ์แปลงอนุกรม FTDI USB เมื่อฉันเสียบมันจะสร้าง: / dev / ttyUSB1 ฉันคิดว่ามันจะง่ายต่อการเปิดและอ่าน / เขียนจากมันใน C. ฉันรู้อัตราการรับส่งข้อมูลและความเท่าเทียมกัน แต่ดูเหมือนว่ามันไม่มีมาตรฐานสำหรับเรื่องนี้? ฉันทำบางสิ่งบางอย่างหายไปหรือบางคนชี้ไปในทิศทางที่ถูกต้อง
139 c  linux  serial-port 

8
Virtual Serial Port สำหรับ Linux
ฉันต้องการทดสอบแอปพลิเคชันพอร์ตอนุกรมบน Linux อย่างไรก็ตามเครื่องทดสอบของฉันมีพอร์ตอนุกรมเดียวเท่านั้น มีวิธีเพิ่มพอร์ตอนุกรมเสมือนลงใน Linux และทดสอบแอปพลิเคชันของฉันโดยจำลองอุปกรณ์ผ่านเชลล์หรือสคริปต์หรือไม่ หมายเหตุ: ฉันไม่สามารถทำการแมปพอร์ตใหม่ได้มันยากที่จะเข้ารหัสบน ttys2 และฉันต้องทดสอบแอปพลิเคชันตามที่เขียนไว้

12
จะค้นหาอุปกรณ์อนุกรมทั้งหมด (ttyS, ttyUSB, .. ) บน Linux โดยไม่ต้องเปิดได้อย่างไร
วิธีที่เหมาะสมในการรับรายการพอร์ต / อุปกรณ์อนุกรมที่มีทั้งหมดบนระบบ Linux คืออะไร? กล่าวอีกนัยหนึ่งเมื่อฉันวนซ้ำอุปกรณ์ทั้งหมดใน/dev/ฉันจะทราบได้อย่างไรว่าพอร์ตใดเป็นพอร์ตอนุกรมในแบบคลาสสิกนั่นคือโดยปกติแล้วจะรองรับอัตราการส่งข้อมูลและการควบคุมการไหลของRTS / CTS วิธีแก้ปัญหาจะถูกเข้ารหัสเป็น C ผมถามเพราะผมใช้ห้องสมุดของบุคคลที่สามที่ไม่นี้ผิดอย่างชัดเจน: /dev/ttyS*มันดูเหมือนจะเพียงย้ำกว่า ปัญหาคือมีพอร์ตอนุกรมผ่าน USB (ที่จัดเตรียมโดยอะแดปเตอร์ USB-RS232) และรายการเหล่านี้อยู่ในรายการ / dev / ttyUSB * และอ่านSerial-HOWTO ที่ Linux.orgฉันได้ความคิดว่าจะมีช่องว่างชื่ออื่นด้วยเมื่อเวลามาถึง ดังนั้นฉันจึงต้องหาวิธีอย่างเป็นทางการในการตรวจจับอุปกรณ์อนุกรม ปัญหาคือดูเหมือนจะไม่มีเอกสารหรือฉันหาไม่พบ ฉันคิดว่าวิธีหนึ่งคือการเปิดไฟล์ทั้งหมดจาก/dev/tty*และเรียกไฟล์เฉพาะioctl()ที่มีอยู่ในอุปกรณ์อนุกรมเท่านั้น นั่นจะเป็นทางออกที่ดีหรือไม่? อัปเดต hrickardsแนะนำให้ดูที่มาของ "setserial" รหัสของมันตรงกับสิ่งที่ฉันคิดไว้: ขั้นแรกให้เปิดอุปกรณ์ด้วย: fd = open (path, O_RDWR | O_NONBLOCK) จากนั้นจะเรียกใช้: ioctl (fd, TIOCGSERIAL, &serinfo) หากการโทรกลับไม่มีข้อผิดพลาดแสดงว่าเป็นอุปกรณ์อนุกรม ฉันพบรหัสที่คล้ายกันในSerial Programming / …
113 linux  serial-port 

10
Python: ส่งเสียงบี๊บ
ฉันกำลังพยายามให้โปรแกรมส่งเสียงบี๊บ ฉันใช้เครื่อง windows ฉันได้ดูที่http://docs.python.org/library/winsound.html แต่ไม่แน่ใจว่าฉันจะตั้งโปรแกรมนี้ด้วยเครื่องสแกนบาร์โค้ดได้อย่างไร นี่คือรหัสของฉันสำหรับเครื่องสแกนบาร์โค้ดแบบอนุกรม ser = serial.Serial() ser.baudrate = 9600 #for windows ser.port = 2 #for COM3 ser.open() ser.write('hello') ser.close() UPDATE: เนื่องจากฉันทำให้เพื่อนร่วมงานรำคาญด้วยเสียงบี๊บ ฉันสามารถเอามันมาผ่านแจ็คเสียงสำหรับหูฟังได้หรือไม่?

16
IOException: การอ่านล้มเหลวซ็อกเก็ตอาจปิด - บลูทู ธ บน Android 4.3
ขณะนี้ฉันกำลังพยายามจัดการกับข้อยกเว้นแปลก ๆ เมื่อเปิด BluetoothSocket บน Nexus 7 (2012) ด้วย Android 4.3 (สร้าง JWR66Y ฉันเดาว่าอัปเดต 4.3 ครั้งที่สอง) ฉันได้เห็นโพสต์ที่เกี่ยวข้องบางรายการ (เช่น/programming/13648373/bluetoothsocket-connect-throwing-exception-read-failed ) แต่ดูเหมือนจะไม่มีวิธีแก้ปัญหาสำหรับปัญหานี้ ตามที่แนะนำในเธรดเหล่านี้การจับคู่ใหม่ไม่ได้ช่วยอะไรและการพยายามเชื่อมต่อตลอดเวลา (ผ่านการวนซ้ำโง่ ๆ ) ก็ไม่มีผลเช่นกัน ฉันกำลังจัดการกับอุปกรณ์ฝังตัว (อะแดปเตอร์ในรถยนต์ที่ไม่ใช่ชื่อ OBD-II คล้ายกับhttp://images04.olx.com/ui/15/53/76/1316534072_254254776_2-OBD-II-BLUTOOTH-ADAPTERSCLEAR-CHECK-ENGINE- ไฟพร้อมโทรศัพท์ของคุณ -Oceanside.jpg ) โทรศัพท์ Android 2.3.7 ของฉันไม่มีปัญหาในการเชื่อมต่อและ Xperia ของเพื่อนร่วมงาน (Android 4.1.2) ก็ใช้งานได้เช่นกัน Google Nexus อีกเครื่อง (ฉันไม่รู้ว่า 'One' หรือ 'S' แต่ไม่ใช่ '4') …

1
MacOS: ความแตกต่างระหว่าง /dev/tty.* และ /dev/cu.* คืออะไร
อุปกรณ์อนุกรมแต่ละตัวจะแสดงสองครั้งใน/devครั้งเดียวtty.*และหนึ่งครั้งเป็นcu.*. อะไรคือสิ่งที่cu.*อุปกรณ์? แตกต่างจากtty.*อุปกรณ์อย่างไร? mh@maru ~ --> ls -l /dev/*.usbmodem621 crw-rw-rw- 1 root wheel 11, 5 Dec 25 18:00 /dev/cu.usbmodem621 crw-rw-rw- 1 root wheel 11, 4 Dec 25 18:00 /dev/tty.usbmodem621
89 macos  serial-port  tty 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.