มี USART ที่สามารถส่ง & amp; รับข้อมูล 9 บิต (ไม่ว่าจะมีหรือไม่มีพาริตี้) ต่อตัวละคร แต่ฉันเห็นว่าพวกเขาเป็นอุปกรณ์รวมที่เป็นส่วนหนึ่งของไมโครคอนโทรลเลอร์หรือ System-on-a Chip (SoC) ฉันได้เห็น USART ที่ใช้งานได้ 9 บิตบน Atmel ARM และ AVR SoCs UART ประเภททั่วไป 8250 หรือ 16550 (ซึ่งถือเป็นอุปกรณ์ที่ใช้งานกับพีซีได้) จะไม่สามารถใช้อักขระ 9 บิตได้และ จำกัด ไว้ที่ 8 บิตต่ออักขระ
อย่างไรก็ตามมี kludges หลากหลายให้ใช้บิตข้อมูล 8 บิตบวกกับพาริตี้บิตเพื่อจำลองอักขระ 9 บิต
ใช้ UART ของพีซีด้วยโปรโตคอล 9 บิต
ฉันสามารถทำการสื่อสารแบบอนุกรม 9 บิตแทน 7 หรือ 8 บิตได้หรือไม่
โครงร่างหนึ่งสำหรับการส่งข้อมูลคือการกำหนดค่าพาริตี UART ใหม่ (เป็น ODD หรือ EVEN) ก่อนการส่งแต่ละไบต์ตามบิตข้อมูลที่ 9 และพาริตีของ 8 บิตที่ต่ำกว่า การรับอักขระ 9 บิตเป็นบิตที่ยากขึ้นเนื่องจากบิตที่ 9 ของอักขระแต่ละตัวจะต้องได้รับมาจากพาริตีของ 8 บิตที่ได้รับบวกหรือไม่ว่าจะมี ข้อผิดพลาดพาริตี สำหรับไบต์นั้น แบบแผนนี้ควรทำในระดับไดรเวอร์อุปกรณ์และอาจลดปริมาณข้อมูลได้อย่างมาก
ภาคผนวก
ฉันกำลังมองหาการ์ด 9 บิต + ไดรเวอร์สำหรับ Windows
นี่เป็นคำถามทางเทคนิคเกี่ยวกับการช็อปปิ้งซึ่งไม่ได้รับอนุญาตใน SU
อย่างไรก็ตามฉันไม่พบสิ่งที่คุณขอ (และมันไม่ถูก):
Sealevel 7205e: โปรไฟล์ต่ำ PCI Express RS-232, RS-422, อินเตอร์เฟส RS-485
อินเตอร์เฟส PCI Express แบบ 7205e แบบ low-profile มีพอร์ตอนุกรมสองพอร์ตที่สามารถกำหนดค่าได้ RS-232 , RS-422 หรือ RS-485 พอร์ตอนุกรมแต่ละพอร์ตใช้ UC 16C950 พร้อม FIFOs ขนาด 128- ไบต์ Tx / Rx ที่เปิดใช้งานอัตราข้อมูล 921.6K bps สำหรับการสื่อสารความเร็วสูงที่เชื่อถือได้ในแอพพลิเคชั่นที่ต้องใช้ข้อมูลจำนวนมาก UART ที่มีประสิทธิภาพสูงนี้มีการสนับสนุนการกำหนดเฟรม 9 บิต และเป็นซอฟต์แวร์ที่เข้ากันได้กับแอปพลิเคชัน 16550 รุ่นเก่าอย่างสมบูรณ์ นอกจากนี้ออสซิลเลเตอร์ 14.7456 และนาฬิกาพรีแคลคาร์ที่ยืดหยุ่นของ UART ยังรองรับอัตราการรับส่งข้อมูลที่หลากหลายและไม่ได้มาตรฐาน