Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
back2root:ibm-pc-ms-dos:hardware:8250 [2023/01/06 23:09] – [Port 3FF/2FF - Scratch Pad Register (read/write)] frater | back2root:ibm-pc-ms-dos:hardware:8250 [2023/02/23 20:55] (Version actuelle) – [UART - Universal Asynchronous Receiver/Transmitter] frater | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== UART - Universal Asynchronous Receiver/ | + | ====== |
{{tablelayout? | {{tablelayout? | ||
Ligne 26: | Ligne 26: | ||
| 4-7 |reserved (zero) | | 4-7 |reserved (zero) | ||
- | + | <WRAP round box> | |
- | - 16550 will interrupt if data exists in the FIFO and isn't read within the time it takes to receive four bytes or if no data is received within the time it takes to receive four bytes. | + | |
+ | </ | ||
===== Baud Rate Divisor Table ===== | ===== Baud Rate Divisor Table ===== | ||
{{tablelayout? | {{tablelayout? | ||
Ligne 178: | Ligne 179: | ||
Programming considerations: | Programming considerations: | ||
+ | <WRAP round box> | ||
* 8250' | * 8250' | ||
* 16550' | * 16550' | ||
* PCs are capable of 38.4Kb, while AT's are capable of 115.2Kb | * PCs are capable of 38.4Kb, while AT's are capable of 115.2Kb | ||
* receiver checks only the first stop bit of each character regardless of the number of stop bits specified | * receiver checks only the first stop bit of each character regardless of the number of stop bits specified | ||
- | * Older 8250 and 16450 UARTs may lose THRE interrupt if the THRE and Receive Data (RD) or the Line Status (LS) interrupts occur simultaneously during a full duplex transmission. | + | * Older 8250 and 16450 UARTs may lose THRE interrupt if the THRE and Receive Data (RD) or the Line Status (LS) interrupts occur simultaneously during a full duplex transmission. |
- | + | ||
- Disable/ | - Disable/ | ||
- While inside the RD and LS interrupt routines check the LSR THRE bit and set a flag that a THRE interrupt was waiting. | - While inside the RD and LS interrupt routines check the LSR THRE bit and set a flag that a THRE interrupt was waiting. | ||
Ligne 190: | Ligne 191: | ||
* data loss can occur without overrun or framing errors if the interrupts are serviced too slowly | * data loss can occur without overrun or framing errors if the interrupts are serviced too slowly | ||
* reserved bits are usually set to zero. Code should NOT rely on this being the case since future enhancement may use these bits | * reserved bits are usually set to zero. Code should NOT rely on this being the case since future enhancement may use these bits | ||
- | | + | </ |
- | * see PORTS | + | |
+ | | ||
+ | * see [[back2root: | ||