ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊΠΎΠΌ XON/XOFF ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ . Π Π°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: Π΅ΡΠ»ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π΅ Π΄Π°Π½Π½ΡΠ΅, ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΠ½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡ Π΄Π°Π»ΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ, ΠΎΠ½ΠΎ ΠΏΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌΡ ΠΊΠ°Π½Π°Π»Ρ ΠΏΠΎΡΡΠ»Π°Π΅Ρ Π±Π°ΠΉΡ-ΡΠΈΠΌΠ²ΠΎΠ» XOFF (13h). ΠΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ, ΠΏΡΠΈΠ½ΡΠ² ΡΡΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ», ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΠ½ΠΎΠ²Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΌ ΠΊ ΠΏΡΠΈΠ΅ΠΌΡ Π΄Π°Π½Π½ΡΡ , ΠΎΠ½ΠΎ ΠΏΠΎΡΡΠ»Π°Π΅Ρ ΡΠΈΠΌΠ²ΠΎΠ» XON (11h), ΠΏΡΠΈΠ½ΡΠ² ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ. ΠΡΠ΅ΠΌΡ ΡΠ΅Π°ΠΊΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠ° Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠΌ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, Π½Π° Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° (XON ΠΈΠ»ΠΈ XOFF) ΠΏΠ»ΡΡ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π°ΠΊΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠ° Π½Π° ΠΏΡΠΈΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π° (ΡΠΈΡ. 2.14). ΠΠ· ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠΌ, ΠΈΠΌΠ΅ΡΡΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±ΡΡΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡΠΈΠΌ ΠΎ Π½Π΅Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡΠΈ Π·Π°Π±Π»Π°Π³ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ (ΠΈΠΌΠ΅Ρ Π² Π±ΡΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ).
Π ΠΈΡ. 2.14. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΎΠΌ XON/XOFF
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° β ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ°Π±Π΅Π»Ρ Π΄Π»Ρ Π΄Π²ΡΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ 3 ΠΏΡΠΎΠ²ΠΎΠ΄Π° (ΡΠΌ. ΡΠΈΡ. 2.5, Π°). ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π½Π°Π»ΠΈΡΠΈΡ Π±ΡΡΠ΅ΡΠ° ΠΈ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ΅Π°ΠΊΡΠΈΠΈ (ΡΠ½ΠΈΠΆΠ°ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠ°Π½Π°Π»Π° ΠΈΠ·-Π·Π° ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»Π° XON), ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΄ΡΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΎΠ±ΠΌΠ΅Π½Π°. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ (ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ) ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊΠΎΠΌ, ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ Π½Π°Π±ΠΎΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΡΠΎΠΌΠ΅ ΡΡΠΈΡ Π΄Π²ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΈ ΠΠ£, ΠΈ ΠΠ‘, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
2.5. ΠΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΠΏΡΠΈΠ΅ΠΌΠΎΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠΎΠ²
Π Π‘ΠΠ-ΠΏΠΎΡΡΠ°Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΡΠΈΠ΅ΠΌΠ΅ Π΄Π°Π½Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ UART (Universal Asynchronous Receiver-Transmitter β ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠΉ ΠΏΡΠΈΠ΅ΠΌΠΎΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊ). ΠΡΠΈ ΠΆΠ΅ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ ΡΠΎΡΠΌΠΈΡΡΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. Π‘ΠΠ-ΠΏΠΎΡΡΡ IBM PC XT/AT Π±Π°Π·ΠΈΡΡΡΡΡΡ Π½Π° ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠ°Ρ , ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² Ρ UART i8250 β 8250/16450/16550Π. ΠΡΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ Π½Π° ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅ΠΌΠΎΠΉ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΏΡΠΈ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π΅. ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ:
β¦ 8250 ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ (ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π»ΠΎΠΆΠ½ΡΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ), ΡΡΡΠ΅Π½Π½ΡΠ΅ Π² XT BIOS;
β¦ 8250Π β ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ, Π½ΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΡΠ΅ΡΡΠ½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ BIOS; ΡΡΠ° ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΡΡ AT, Π½ΠΎ Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π½Π° Π΄Π»Ρ ΡΠΊΠΎΡΠΎΡΡΠΈ 9600 Π±ΠΈΡ/Ρ;
β¦ 8250Π β ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ 8250 ΠΈ 8250A, Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ° Π² ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡΡ β Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ XT BIOS; ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² AT ΠΏΠΎΠ΄ DOS (ΠΊΡΠΎΠΌΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ 9600 Π±ΠΈΡ/Ρ).
ΠΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ 8250x ΠΈΠΌΠ΅ΡΡ Π½Π΅Π²ΡΡΠΎΠΊΠΎΠ΅ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡΠΌ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠΈΠ½Ρ. ΠΠ½ΠΈ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ²ΠΎΠΈΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°ΠΌ Π² ΡΠΌΠ΅ΠΆΠ½ΡΡ ΡΠΈΠ½Π½ΡΡ ΡΠΈΠΊΠ»Π°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° β Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡΠΌΠΈ CPU. Π ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΊΠ»Π°ΡΡΠ° AT ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ UART ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π½ΠΈΠΆΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ.
β¦ 16450 β Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ 8250 Π΄Π»Ρ AT. ΠΡΠΈΠ±ΠΎΠΊ 8250 ΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ XT BIOS Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ.
β¦ 16550 β ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ 16450. ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°Π½Π°Π» DMA Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΠΌΠ΅Π΅Ρ FIFO-Π±ΡΡΠ΅Ρ, Π½ΠΎ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΡ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ.
β¦ 16550Π β ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ 16-Π±Π°ΠΉΡΠ½ΡΠ΅ FIFO-Π±ΡΡΠ΅ΡΡ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ DMA. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΡΠΈΠΏ UART Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π² AT ΠΏΡΠΈ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΡΡ ΠΎΠ±ΠΌΠ΅Π½Π°Ρ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡΡ 9600 Π±ΠΈΡ/Ρ ΠΈ Π²ΡΡΠ΅. Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ ΡΡΠΎΠΉ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠΎΠΉ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ² ΠΏΠΎΡΡΠΎΠ² Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡΠ΅ΡΡ.
ΠΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ UART 16550Π Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ², Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π°Π΄ΡΠ΅ΡΠΎΠΌ (ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π°Π΄ΡΠ΅ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ° ΠΏΠΎΡΡΠ°) ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΠΈΡΠ° DLAB (Π±ΠΈΡΠ° 7 ΡΠ΅Π³ΠΈΡΡΡΠ° LCR). Π Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 8 ΡΠΌΠ΅ΠΆΠ½ΡΡ Π°Π΄ΡΠ΅ΡΠΎΠ². Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ² UART 16550A ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π½ΠΈΠΌ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π±Π». 2.4. ΠΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ 8250 ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ° FCR ΠΈ Π²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ FIFO ΠΈ DMA.
Π’Π°Π±Π»ΠΈΡΠ° 2.4. Π Π΅Π³ΠΈΡΡΡΡ UART 16550A
ΠΠΎΡΡΡΠΏ Π Π΅Π³ΠΈΡΡΡ Π§ΡΠ΅Π½ΠΈΠ΅/Π·Π°ΠΏΠΈΡΡ R/W Π‘ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ DLAB ΠΠΌΡ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ 0h 0 THR Transmit Holding Register WO 0h 0 RBR Receiver Buffer Register RO 0h 1 DLL Divisor Latch LSB R/W 1h 1 DIM Divisor Latch MSB R/W 1h 0 IER Interrupt Enable Register R/W 2h x IIR Interrupt Identification Register RO 2h x FOR FIFO Control Register WO 3h x LCR Line Control Register R/W 4h x MCR Modem Control Register R/W 5h x LSR Line Status Register R/WΒΉ 6h x MSR Modem Status Register R/WΒΉ 7h x SCR Scratch Pad Register R/WΒΉ ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΠΈΡΡ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΏΠΈΡΡ Π² ΡΠ΅Π³ΠΈΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ±ΠΎΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°.
Π’HR β ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΉ ΡΠ΅Π³ΠΈΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠ° (ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π·Π°ΠΏΠΈΡΠΈ). ΠΠ°Π½Π½ΡΠ΅, Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΡΠ΅Π³ΠΈΡΡΡ, Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅ΡΠ»Π°Π½Ρ Π² Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΄Π²ΠΈΠ³Π°ΡΡΠΈΠΉ ΡΠ΅Π³ΠΈΡΡΡ (ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½), ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΡΠΏΡΡ Π½Π° Π²ΡΡ ΠΎΠ΄ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° CTS. ΠΠΈΡ 0 ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ (ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ) ΠΏΠ΅ΡΠ²ΡΠΌ. ΠΡΠΈ Π΄Π»ΠΈΠ½Π΅ ΠΏΠΎΡΡΠ»ΠΊΠΈ ΠΌΠ΅Π½Π΅Π΅ 8 Π±ΠΈΡ ΡΡΠ°ΡΡΠΈΠ΅ Π±ΠΈΡΡ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ.
RBR β Π±ΡΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅Π³ΠΈΡΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ (ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ). ΠΠ°Π½Π½ΡΠ΅, ΠΏΡΠΈΠ½ΡΡΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠΌ ΡΠ΄Π²ΠΈΠ³Π°ΡΡΠΈΠΌ ΡΠ΅Π³ΠΈΡΡΡΠΎΠΌ, ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΡΠ΅Π³ΠΈΡΡΡ RBR, ΠΎΡΠΊΡΠ΄Π° ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΡΠΈΡΠ°Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ. ΠΡΠ»ΠΈ ΠΊ ΠΌΠΎΠΌΠ΅Π½ΡΡ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π½Π΅ Π±ΡΠ» ΡΡΠΈΡΠ°Π½ ΠΈΠ· ΡΠ΅Π³ΠΈΡΡΡΠ°, ΡΠΈΠΊΡΠΈΡΡΠ΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΡΠΈ Π΄Π»ΠΈΠ½Π΅ ΠΏΠΎΡΡΠ»ΠΊΠΈ ΠΌΠ΅Π½Π΅Π΅ 8 Π±ΠΈΡ ΡΡΠ°ΡΡΠΈΠ΅ Π±ΠΈΡΡ Π² ΡΠ΅Π³ΠΈΡΡΡΠ΅ ΠΈΠΌΠ΅ΡΡ Π½ΡΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
DLL β ΡΠ΅Π³ΠΈΡΡΡ ΠΌΠ»Π°Π΄ΡΠ΅Π³ΠΎ Π±Π°ΠΉΡΠ° Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΡΠ°ΡΡΠΎΡΡ.
DLM β ΡΠ΅Π³ΠΈΡΡΡ ΡΡΠ°ΡΡΠ΅Π³ΠΎ Π±Π°ΠΉΡΠ° Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΡΠ°ΡΡΠΎΡΡ. ΠΠ΅Π»ΠΈΡΠ΅Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ D=115200/V, Π³Π΄Π΅ V β ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ, Π±ΠΈΡ/Ρ. ΠΡ ΠΎΠ΄Π½Π°Ρ ΡΠ°ΡΡΠΎΡΠ° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ 1,8432 ΠΠΡ Π΄Π΅Π»ΠΈΡΡΡ Π½Π° Π·Π°Π΄Π°Π½Π½ΡΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ 16-ΠΊΡΠ°ΡΠ½Π°Ρ ΡΠ°ΡΡΠΎΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ .
IER β ΡΠ΅Π³ΠΈΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ. ΠΠ΄ΠΈΠ½ΠΈΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΠΈΡΠ° ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΎΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°.
ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ° IER:
β¦ Π±ΠΈΡΡ [7:4]=0 β Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ;
β¦ Π±ΠΈΡ 3 β Mod_IE β ΠΏΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΠΎΠ΄Π΅ΠΌΠ° (Π»ΡΠ±ΠΎΠΉ ΠΈΠ· Π»ΠΈΠ½ΠΈΠΉ CTS, DSR, RI, DCD);
β¦ Π±ΠΈΡ 2 β RxL_IΠ β ΠΏΠΎ ΠΎΠ±ΡΡΠ²Ρ/ΠΎΡΠΈΠ±ΠΊΠ΅ Π»ΠΈΠ½ΠΈΠΈ;
β¦ Π±ΠΈΡ 1 β TxD_IE β ΠΏΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ;
β¦ Π±ΠΈΡ 0 β RxD_IΠ β ΠΏΠΎ ΠΏΡΠΈΠ΅ΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Π° (Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ FIFO β ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ°ΠΉΠΌ-Π°ΡΡΡ).
IIR β ΡΠ΅Π³ΠΈΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ ΠΈ ΠΏΡΠΈΠ·Π½Π°ΠΊΠ° ΡΠ΅ΠΆΠΈΠΌΠ° FIFO (ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ). ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° UART Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΠ΅ΡΡΡΠ΅Ρ ΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠ². ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠ² (ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ): ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡΠΈΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠ°, ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅ΠΌΠ°. ΠΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ UART ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Ρ Π²ΡΡΡΠΈΠΌ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠΌ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ±ΡΠΎΡΠ΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ. Π’ΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΠ°Π²Π»Π΅Π½ Π·Π°ΠΏΡΠΎΡ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°. ΠΠΈΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ° IIR.