YOMEDIA
ADSENSE
Chương 9 - Một số phối ghép cơ bản
87
lượt xem 19
download
lượt xem 19
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Bàn phím là một thiết bị vào rất thông dụng trong các hệ vi xử lý. Trong tr-ờng hợp đơn giản nhất đó có thể chỉ là 1 công tắc có gắn phím (mà ta th-ờng chỉ quan tâm đến ký hiệu trên mặt phím) nối vào 1 chân nào đó của bộ vi xử lý; ở mức phức tạp hơn đó có thể là hàng chục công tắc có gắn phím đ-ợc tổ chức theo một ma trận; phức tạp hơn nữa, đó là một hệ vi xử lý chuyên dụng quản lý cả trăm công tắc có...
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 9 - Một số phối ghép cơ bản
- Ch−¬ng 9 Mét sè phèi ghÐp c¬ b¶n 1. Phèi ghÐp víi bμn phÝm Bμn phÝm lμ mét thiÕt bÞ vμo rÊt th«ng dông trong c¸c hÖ vi xö lý. Trong tr−êng hîp ®¬n gi¶n nhÊt ®ã cã thÓ chØ lμ 1 c«ng t¾c cã g¾n phÝm (mμ ta th−êng chØ quan t©m ®Õn ký hiÖu trªn mÆt phÝm) nèi vμo 1 ch©n nμo ®ã cña bé vi xö lý; ë møc phøc t¹p h¬n ®ã cã thÓ lμ hμng chôc c«ng t¾c cã g¾n phÝm ®−îc tæ chøc theo mét ma trËn; phøc t¹p h¬n n÷a, ®ã lμ mét hÖ vi xö lý chuyªn dông qu¶n lý c¶ tr¨m c«ng t¾c cã g¾n phÝm víi nhiÖm vô nhËn ra phÝm ®−îc gâ vμ t¹o m· ®−a ®Õn cho hÖ vi xö lý. Dï lμ ®¬n lÎ hay lμ tËp hîp c¸c phÝm, khi phèi ghÐp chóng víi bé vi xö lý ta còng ph¶i tho¶ m·n mét sè yªu cÇu ®Æc biÖt ®Ó ®¶m b¶o c¶ hÖ thèng ho¹t ®éng ®óng. Cã rÊt nhiÒu lo¹i c«ng t¾c ®−îc dïng trong phèi ghÐp víi bé vi xö lý nh−ng cã thÓ xÕp chóng vμo 2 nhãm: + c«ng t¾c cã tiÕp xóc c¬ khÝ (kiÓu ®iÖn trë: ®iÖn trë thay ®æi khi Ên vμ khi nh¶ phÝm), vμ + c«ng t¾c kh«ng cã tiÕp xóc c¬ khÝ (kiÓu ®iÖn dung: ®iÖn dung thay ®æi khi Ên vμ khi nh¶ phÝm hoÆc kiÓu hiÖu øng Hall: ®iÖn ¸p thay ®æi khi Ên vμ khi nh¶ phÝm). Trong c¸c lo¹i c«ng t¾c ®ã, lo¹i c«ng t¾c kiÓu ®iÖn trë dùa trªn tiÕp xóc c¬ khÝ lμ rÊt th«ng dông trong thùc tÕ. Trªn h×nh 9.1 lμ c¸ch nèi c«ng t¾c vμo m¹ch ®iÖn vμ ®¸p øng cña nã khi cã lùc t¸c ®éng vμo phÝm (Ên phÝm). 250
- F +5V 1mN Ura F t Ura 5V .. .. t 20ms 20ms H×nh 9.1. ¶nh h−ëng ®é rung cña c«ng t¾c Nh×n vμo ®¸p øng vÒ mÆt c¬-®iÖn cña c«ng t¾c trªn h×nh 9.1, ta nhËn thÊy: v× c«ng t¾c lμ mét hÖ thèng cã qu¸n tÝnh, do ®ã khi ta Ên phÝm råi nh¶ phÝm, xung ®iÖn thu ®−îc ë ®Çu ra cña nã kh«ng ph¶i lμ liªn tôc mμ bÞ ng¾t qu·ng t¹i c¸c giai ®o¹n qu¸ ®é (lóc b¾t ®Çu nhÊn phÝm vμ lóc b¾t ®Çu nh¶ phÝm). §iÒu nμy x¶y ra lμ do trong kÕt cÊu cña c«ng t¾c cã c¸c bé phËn ®μn håi, khi bÞ t¸c ®éng cña lùc bªn ngoμi c¸c kÕt cÊu ®éng cña c«ng t¾c bÞ giao ®éng lμm cho bÒ mÆt tiÕp xóc cña c«ng t¾c bÞ biÕn ®æi. Trong thùc tÕ th× mçi qu¸ tr×nh qu¸ ®é trªn kÐo dμi kho¶ng 10-20 ms. NÕu trong thêi kú qu¸ ®é ta ®äc th«ng tin tõ c«ng t¾c th× rÊt dÔ nhËn ®−îc th«ng tin sai lÖch vÒ tr¹ng th¸i cña c«ng t¾c, v× vËy ng−êi ta th−êng ph¶i chê cì 10-20 ms sau khi c«ng t¾c bÞ Ên hoÆc nh¶ ®Ó ®äc ®−îc tr¹ng th¸i cña c«ng t¾c trong giai ®o¹n x¸c lËp. Khi mét c«ng t¾c ®−îc nèi th¼ng vμo mét ch©n nμo ®ã cña bé vi xö lý hoÆc c¸c m¹ch phô trî, cã mét c¸ch kh¸c ®Ó tr¸nh c¸c hiÖu øng phô kh«ng mong muèn cã thÓ t¸c ®éng lªn ho¹t ®éng cña bé vi xö lý do viÖc c«ng t¾c bÞ rung g©y ra lμ dïng c¸c m¹ch tÝch ph©n nèi bªn c¹nh c«ng t¾c nh− trong tr−êng hîp t¹o tÝn hiÖu cho ®Çu vμo RESET cña hÖ vi xö lý (xem h×nh 5.6). TiÕp theo ta xÐt tr−êng hîp mét sè c«ng t¾c nhÊt ®Þnh ®−îc tæ chøc theo ma trËn gåm c¸c hμng vμ c¸c cét ®Ó t¹o thμnh bμn phÝm cho mét hÖ vi xö lý. Víi tæng sè phÝm kho¶ng 20-30 (bμn phÝm HEXA) th× ®ã lμ tr−êng hîp th−êng thÊy trong c¸c hÖ thèng nhá: c¸c m¸y vi tÝnh trªn mét b¶ng m¹ch in hoÆc c¸c b¶ng m¹ch ®iÒu khiÓn nhá (hay ®−îc gäi lμ "kit"). Trong c¸c m¸y tÝnh c¸ nh©n nh− IBM PC ch¼ng h¹n th× tæng sè phÝm cã thÓ lμ tõ 80-101 hoÆc 104 phÝm tuú theo thÕ hÖ m¸y. §Ó nhËn ®−îc th«ng tin chÝnh x¸c vÒ tr¹ng th¸i cña mét phÝm trong c¸c hÖ thèng nh− vËy ta th−êng ph¶i lμm 3 khèi c«ng viÖc chÝnh nh− sau: 251
- + Ph¸t hiÖn cã Ên phÝm, + Chê c«ng t¾c ë tr¹ng th¸i æn ®Þnh (chèng rung), + T×m phÝm ®−îc Ên vμ t¹o m· cho phÝm ®ã. +5V Cæng ra 00 10k C D E F D0 CPU D1 D2 D3 0 1 2 3 10k D7 D6 D5 D4 D3 ≡ D2 D1 D0 Cæng vμo 01 H×nh 9.2 M¹ch phèi ghÐp bμn phÝm. Vμ ®Ó cã ®−îc mét phèi ghÐp bμn phÝm víi bé vi xö lý thùc hiÖn c¸c chøc n¨ng ®· nªu ë trªn trong thùc tÕ ng−êi ta cã thÓ lμm theo 2 c¸ch: + dïng bé vi xö lý ®Ó qu¶n lý trùc tiÕp bμn phÝm ®−îc ghÐp qua mét sè m¹ch cæng. Cã thÓ thÊy r»ng ë ®©y CPU lμm viÖc trong chÕ ®é th¨m dß. B»ng c¸ch nμy CPU ph¶i ®Ó mét phÇn thêi gian ®Ó qu¶n lý bμn phÝm nh−ng ta l¹i ®¹t ®−îc sù ®¬n gi¶n vÒ phÇn cøng. + dïng mét m¹ch qu¶n lý bμn phÝm chuyªn dông ®Ó phèi ghÐp víi bμn phÝm. ë ®©y CPU lμm viÖc víi bé qu¶n lý bμn phÝm qua yªu cÇu ng¾t. B»ng c¸ch nμy ta gi¶i phãng ®−îc CPU ®Ó nã cã thÓ dμnh thêi gian cho c¸c viÖc kh¸c quan träng h¬n. • CPU trùc tiÕp qu¶n lý bμn phÝm Trong c¸ch lμm nμy, ®Ó ®¬n gi¶n trong t×nh bμy, ta gi¶ thiÕt tr−êng hîp bμn phÝm hÖ 16 gåm 16 c«ng t¾c - phÝm ®¸nh dÊu tõ 0 - FH ghÐp víi bé vi xö lý th«ng qua 252
- c¸c m¹ch cæng nh− trªn h×nh 9.2. C¸c m¹ch cæng cã thÓ lμ c¸c m¹ch IC nh− 74LS373 hoÆc mét phÇn cña PPI 8255A ®−îc lËp tr×nh thÝch hîp. B¾t ®Çu §−a 0 ra mäi hμng §äc c¸c cét Bμn phÝm tèt hay xÊu s §−a 0 ra PhÝm tèt ? tõng hμng ® §äc c¸c cét §äc c¸c cét T¹o m· Ph¸t hiÖn phÝm bÞ Ên s cã phÝm Ên ? s T×m thÊy ? ® Chê 20ms ® Chèng rung T¹o m· phÝm §äc c¸c cét KÕt thóc s ® cã phÝm Ên ? H×nh 9.3. L−u ®å thuËt to¸n ch−¬ng tr×nh phèi ghÐp bμn phÝm. ThuËt to¸n cña ch−¬ng tr×nh ®iÒu khiÓn viÖc phèi ghÐp CPU - bμn phÝm theo s¬ ®å phÇn cøng nãi trªn ®−îc tr×nh bμy b»ng l−u ®å trªn h×nh 9.3. §Çu tiªn ta ph¶i kiÓm tra t×nh tr¹ng (tèt, xÊu) cña bμn phÝm khi nã ch−a ®−îc Ên (®óng ra lμ khi ta ch−a kÞp Ên phÝm nμo hoÆc ch−a kÞp Ên phÝm tiÕp theo) xem liÖu cã phÝm nμo bÞ kÑt (dÝnh) kh«ng b»ng c¸ch ®−a 0 ra c¸c hμng vμ ®äc c¸c cét ®Ó quÐt toμn bé c¸c phÝm. NÕu cã mét c«ng t¾c nμo ®ã nèi hμng vμ cét, møc ®iÖn ¸p 0 ë hμng sÏ truyÒn sang cét vμ ta sÏ ®äc ®−îc ë cét t−¬ng øng møc ®iÖn ¸p 0. Mét bμn phÝm tèt sÏ kh«ng cã c¸c tiÕp ®iÓm cña mét c«ng t¾c nμo ®−îc nèi trong lóc nμy vμ ta sÏ ®äc ®−îc møc 1 ë tÊt c¶ c¸c cét. Ch−¬ng tr×nh theo l−u ®å trªn sÏ bÞ quÈn nÕu bμn phÝm cña ta bÞ dÝnh. Mét c¶i tiÕn cã thÓ ®−îc thªm vμo ch−¬ng tr×nh trªn ®Ó tho¸t ra khái vßng quÈn ®ã vμ ®−a ra th«ng b¸o bμn phÝm bÞ háng. 253
- NÕu bμn phÝm kh«ng bÞ kÑt th× ta míi ®i vμo phÇn ph¸t hiÖn xem liÖu cã mét phÝm nμo ®ã ®−îc Ên kh«ng. NÕu ph¸t hiÖn ra cã mét phÝm ®−îc Ên ta sÏ ph¶i chê cì 20 ms ®Ó cho c«ng t¾c cã thêi gian æn ®Þnh tr¹ng th¸i. TiÕp theo ta ph¶i x¸c ®Þnh l¹i xem cã ®óng lμ cã mét phÝm ®−îc Ên kh«ng, nÕu cã th× ta míi tiÕn hμnh x¸c ®Þnh cô thÓ xem ®ã lμ phÝm nμo trong sè c¸c phÝm. Ta lμm viÖc nμy b»ng c¸ch ®−a 0 ra lÇn l−ît tõng hμng vμ ®äc c¸c cét. Khi ®· biÕt ®−îc to¹ ®é hμng vμ cét cña mét phÝm bÞ Ên th× c«ng viÖc tiÕp theo lμ t¹o m· cho phÝm ®ã. Trong s¬ ®å ®¬n gi¶n nh− s¬ ®å trªn h×nh 9.3 th× viÖc t¹o m· cho phÝm võa t×m thÊy ®−îc thùc hiÖn b»ng c¸ch ®äc 8 bit tõ cæng vμo (4 bit cao chøa th«ng tin vÒ to¹ ®é hμng cßn 4 bit thÊp chøa th«ng tin vÒ to¹ ®é cét) råi chuyÓn thμnh m· hÖ 16 t−¬ng øng víi phÝm b»ng c¸ch tra mét b¶ng thÝch hîp. Sau ®©y lμ v¨n b¶n ch−¬ng tr×nh thùc hiÖn thuËt to¸n ®· nªu dùa trªn s¬ ®å trong h×nh 9.2 b»ng c¸ch dïng m¹ch PPI 8255A víi ®Þa chØ c¬ b¶n lμ 60H. CÇn chó ý r»ng ®©y chØ lμ ch−¬ng tr×nh dïng ®Ó minh ho¹ thuËt to¸n. Ch−¬ng tr×nh 8.1. CPU-HexKeyboard cpu_kbd.asm .Model Small .Stack 100 .Data ;0 1 2 3 4 5 6 7 Key DB 77H 7BH 7DH 7EH 0B7H 0BBH 0BDH 0BEH ;8 9 A B C D E F DB 0D7H 0DBH ODOH ODEH 0E7H 0EBH 0EDH 0EEH PA EQU 60H PB EQU 61H CWR EQU 63H CW EQU 88H ;chÕ ®é 0,PA:ra;PB&PC:vμo .Code Main Proc MOV AX,@Data ;khëi ®Çu DS MOV DS,AX MOV AL,CW ;khëi ®Çu 8255A OUT CWR,AL CALL RD_KBD ;gäi ch−¬ng tr×nh ®äc phÝm Xuly:... ;c¸c xö lý tiÕp theo Main Endp RD_KBD Proc ; thñ tôc ®äc vμ t¹o m· cho phÝm bÞ Ên ; Ra: AL: m· phÝm, 254
- ; AH=00H khi kh«ng cã lçi, ; AH=01 khi cã lçi PUSHF ;cÊt c¸c thanh ghi PUSH BX PUSH CX PUSH DX MOV AL,00 ;®−a 0 ra mäi hμng OUT PA,AL MOV CX,3 ;sè lÇn kiÓm tra dÝnh Wait_Open: IN AL,PB ;®äc cét ®Ó kiÓm tra dÝnh AND AL,0FH ;che c¸c bit cao CMP AL,0FH ;cã phÝm dÝnh? LOOPNE Wait_Open ;®óng, chê khái dÝnh JCXZ Sai ;"qu¸ tam ba bËn": phÝm bÞ kÑt Wait_Pres: IN AL,PB ;®äc cét ®Ó kiÓm tra Ên phÝm AND AL,0FH ;che c¸c bit cao CMP AL,0FH ;cã phÝm Ên? JE Wait_Pres ;kh«ng,chê Ên phÝm MOV CX,5880 ;cã,trÔ 20ms ®Ó chèng rung Tre: LOOP Tre ;®äc ®Ó kiÓm tra l¹i phÝm bÞ Ên IN AL,PB AND AL,0FH ;che c¸c bit cao CMP AL,0FH ;cã phÝm Ên? JE Wait_Pres ;kh«ng,chê Ên phÝm ;t×m phÝm bÞ Ên MOV AL,0FEH ;mÉu bit ®Ó ®−a 0 ra tõng hμng MOV CL,AL ;cÊt mÉu Hgsau: OUT PA,AL ;®−a 0 ra 1 hμng IN AL,PB ;®äc c¸c cét vμ kiÓm tra AND AL,0FH CMP AL,0FH ;®· t×m thÊy phÝm bÞ Ên? JNE Taoma ;®óng,t¹o m· ROL CL,1 ;kh«ng thÊy,®æi mÉu MOV AL,CL JMP Hgsau ;lμm tiÕp víi hμng sau Taoma: MOV BX,000FH ;BX chØ vμo m· cña phÝm F IN AL,PB ;®äc to¹ ®é hμng vμ cét Tiep: CMP AL,Key[BX] ;®óng víi m· chuÈn? JE Thoi ;®óng,m· cña phÝm trong BX DEC BX ;sai,chØ vμo m· kh¸c JNS Tiep ;t×m tiÕp Sai: MOV AH,01 ;AH ®Ó b¸o cã lçi JMP Ra ;®i ra Thoi: MOV AL,BL ;m· cña phÝm hÖ 16 trong AL MOV AH,00 ;AH ®Ó b¸o kh«ng cã lçi Ra: POP DX ;lÊy l¹i c¸c thanh ghi POP CX 255
- POP BX POPF RET ;trë vÒ ch−¬ng tr×nh chÝnh RD_KBD Endp END Main • Dïng m¹ch chuyªn dông ®Ó qu¶n lý bμn phÝm ThÝ dô trªn cho thÊy mét c¸ch phèi ghÐp ®¬n gi¶n gi÷a CPU vμ bμn phÝm. Trong tr−êng hîp CPU cßn ph¶i dμnh thêi gian ®Ó lμm nhiÒu c«ng viÖc kh¸c cña hÖ thèng hoÆc sè l−îng phÝm nhiÒu, th−êng ng−êi ta sö dông c¸c m¹ch qu¶n lý bμn phÝm cã s½n ®Ó lμm c¸c c«ng viÖc ®· nªu liªn quan ®Õn bμn phÝm. Nh− vËy bé vi xö lý ®−îc gi¶i phãng khái c«ng viÖc quÐt bμn phÝm vμ khi cÇn thiÕt nã chØ viÖc ®äc m· cña phÝm bÞ Ên do m¹ch qu¶n lý chuyªn dông ®−a ®Õn. M¹ch AY5-2376 cña General Instrument lμ mét vi m¹ch chuyªn dông nh− vËy. Nã lμm viÖc ®óng theo c¸ch cña mét ch−¬ng tr×nh quÐt bμn phÝm mμ ta ®· m« t¶ ë thÝ dô trªn vμ khi ®· t¹o xong m· cho phÝm bÞ Ên, nã ®−a ra xung STB (xung cho phÐp chèt d÷ liÖu) ®Ó b¸o cho bé vi xö lý biÕt. Bé vi xö lý cã thÓ nhËn biÕt xung STB khi lμm viÖc theo kiÓu th¨m dß (polling) hoÆc cã thÓ ®¸p øng víi xung STB theo kiÓu ng¾t nÕu xung nμy ®−îc sö dông nh− mét xung t¸c ®éng ®Õn ®Çu vμo yªu cÇu ng¾t che ®−îc INTR. M¹ch AY5-2376 cßn cã kh¶ n¨ng qu¶n lý kh«ng nhÇm lÉn ®èi víi bμn phÝm ngay c¶ trong tr−êng hîp cã 2 phÝm ®−îc Ên gÇn nh− ®ång thêi. Mét tr−êng hîp ®Æc biÖt cña viÖc qu¶n lý bμn phÝm dïng vi m¹ch chuyªn dông lμ bμn phÝm cho c¸c m¸y IBM PC vμ c¸c thiÕt bÞ ®Çu cuèi. T¹i ®©y ng−êi ta sö dông mét hÖ vi xö lý chuyªn dông cho c«ng viÖc qu¶n lý bμn phÝm. H¹t nh©n cña hÖ nμy lμ vi m¹ch 8048 - m¸y vi tÝnh trong 1 vá, bao gåm CPU 8bit, ROM, RAM, cæng I/O vμ mét bé ®Õm/®Þnh thêi gian lËp tr×nh ®−îc. Ch−¬ng tr×nh trong ROM cña 8048 ®iÒu khiÓn viÖc kiÓm tra c¸c m¹ch ®iÖn tö cña bμn phÝm khi nã võa ®−îc nèi víi nguån ®iÖn vμ thùc hiÖn viÖc quyÐt bμn phÝm theo 3 c«ng ®o¹n ®· nªu ë trªn. Khi cã mét phÝm ®−îc Ên, m¹ch 8048 ®−a ra tÝn hiÖu yªu cÇu ng¾t ®Õn CPU vμ truyÒn m· cña phÝm bÞ Ên ®Õn CPU. M· nμy ®−îc truyÒn ®i d−íi d¹ng d÷ liÖu nèi tiÕp ®Ó gi¶m bít sè ®−êng d©y cÇn dïng cho viÖc truyÒn tÝn hiÖu. Trong thùc tÕ cßn tån t¹i nh÷ng m¹ch kÕt hîp c¸c phèi ghÐp bμn phÝm - ®Ìn LED trong mét vi m¹ch ®Ó t¹o thuËn lîi cho ng−êi sö dông khi x©y dùng c¸c kit vi xö lý. §ã lμ tr−êng hîp m¹ch 8279 cña Intel, mét vi m¹ch tæ hîp cì lín lËp tr×nh ®−îc. Sau khi ®−îc CPU lËp tr×nh (ghi tõ ®iÒu khiÓn), m¹ch 8279 cã kh¶ n¨ng qu¶n lý bμn phÝm theo 3 c«ng ®o¹n kinh ®iÓn ®· nªu vμ ®ång thêi cã kh¶ n¨ng ®iÒu khiÓn bé phËn hiÖn thÞ gåm nhiÒu nhÊt lμ 16 ®Ìn LED 7 nÐt ë chÕ ®é ®éng. 256
- 2. Phèi ghÐp víi ®Ìn hiÖn thÞ LED (®ièt ph¸t s¸ng) §ièt ph¸t s¸ng - LED lμ mét phÇn tö phèi ghÐp víi bé vi xö lý ë ®Çu ra rÊt th«ng dông. Trong tr−êng hîp ®¬n gi¶n, ®ã cã thÓ lμ mét vμi ®Ìn LED ®¬n lÎ ®Ó b¸o hiÖu mét vμi tr¹ng th¸i nμo ®ã. Phøc t¹p h¬n, ®ã lμ c¸c ®Ìn LED ®−îc tæ hîp thμnh ®Ìn chØ thÞ 7 nÐt hoÆc nhiÒu h¬n ®Ó hiÖn thÞ c¸c th«ng tin d−íi d¹ng sè hoÆc ch÷. §Ó ®iÒu khiÓn ®−îc c¸c ®Ìn LED nμy s¸ng, bé vi xö lý hoÆc c¸c m¹ch cæng cña nã cÇn ®−îc t¨ng c−êng kh¶ n¨ng t¶i b»ng c¸c m¹ch khuÕch ®¹i ®Öm (b»ng transistor, b»ng m¹ch SN7400 hay SN7406) hoÆc c¸c m¹ch ®iÒu khiÓn ®Ìn LED 7 nÐt chuyªn dông (nh− SN7447) ®Ó ®¶m b¶o ®−a ra ®−îc tÝn hiÖu víi c«ng suÊt nhÊt ®Þnh cÇn thiÕt cho ho¹t ®éng cña ®Ìn LED. • CPU - SN7447 - LED 7 nÐt ë chÕ ®é tÜnh Mét trong c¸c phèi ghÐp gi÷a vi xö lý vμ ®Ìn LED 7 nÐt th−êng thÊy lμ dïng m¹ch SN7447 ®Ó gi¶i m· sè BCD ra 7 nÐt vμ ®Ó ®iÒu khiÓn bé ®Ìn chØ thÞ (xem h×nh 9.4). §©y lμ kiÓu ®iÒu khiÓn ®Ìn LED ë chÕ ®é hiÖn thÞ tÜnh víi ®Æc ®iÓm lμ kh¸ ®¬n gi¶n vÒ kÕt cÊu nh−ng rÊt tèn n¨ng l−îng: ®Ó th¾p s¸ng c¸c nÐt cña ®Ìn LED th× cÇn cã dßng ®iÖn liªn tôc ®i qua. μP MAN7 a a A b B c f b D0-D3 C '47 d +5V g D e e c LT f RBI BI g d 150Ω +5V H×nh 9.4. Phèi ghÐp vi xö lý víi LED 7 nÐt th«ng qua m¹ch SN7474. Ta cã thÓ tÝnh s¬ bé ®Ó thÊy sù tiªu tèn n¨ng l−îng cña viÖc hiÖn thÞ theo c¸ch nμy. Mét ®Ìn LED 7 nÐt tiªu tèn n¨ng l−îng nhiÒu nhÊt khi nã ph¶i hiÖn ra sè 8 vμ lóc nμy nã tiªu thô dßng ®iÖn cì 140 mA (kho¶ng 20mA/nÐt tuú theo chñng lo¹i). B¶n th©n mét m¹ch SN7447 khi ho¹t ®éng còng tiªu thô cì 14 mA. NÕu ta dïng 8 ®Ìn LED nμy ®Ó chØ thÞ 8 ch÷ sè (®Þa chØ vμ d÷ liÖu) th× riªng cho m¹ch hiÖn thÞ ta ®· ph¶i cung cÊp gÇn 1,5 A ! 257
- • CPU - 7447 - LED 7 nÐt ë chÕ ®é ®éng - dån kªnh +5V PA7 T8 8255A T2 T3 T1 ... Port A MAN7 MAN7 MAN7 MAN7 ... PA2 PA1 PA0 ... a b c d e f g LT +5V RBI 7447 BI PB0-PB6 8255A- Port B Bus D μP8088 H×nh 9.5. Phèi ghÐp hiÖn thÞ ë chÕ ®é ®éng vμ dån kªnh. §Ó kh¾c phôc nh−îc ®iÓm cña m¹ch phèi ghÐp hiÖn thÞ tÜnh nh− ®· ®−îc nªu ë trªn, ng−êi ta th−êng sö dông m¹ch phèi ghÐp hiÖn thÞ ®éng lμm viÖc theo nguyªn t¾c dån kªnh: toμn bé c¸c ®Ìn hiÖn thÞ dïng chung 1 bé ®iÒu khiÓn SN7447 vμ c¸c ®Ìn LED kh«ng ®−îc ®−îc th¾p s¸ng liªn tôc mμ lu©n phiªn nhau s¸ng theo mét chu kú nhÊt ®Þnh. C«ng suÊt tiªu thô nhê thÕ mμ gi¶m ®i rÊt nhiÒu mμ vÉn ®¹t ®−îc hiÖu qu¶ hiÖn thÞ. S¬ ®å m¹ch cña c¸ch phèi ghÐp nμy ®−îc thÓ hiÖn trªn h×nh 9.5. 258
- Nguyªn t¾c ho¹t ®éng Gi¸ trÞ sè cÇn hiÖn thÞ cña mçi con sè ®−îc göi ®Õn cæng PB cña 8255A tõ CPU d−íi d¹ng m· BCD. Tõ ®©y sè BCD ®−îc m¹ch SN7447 gi¶i m· vμ t¹o ra c¸c tÝn hiÖu ®iÒu khiÓn thÝch hîp ®−a ®Õn c¸c ch©n catèt a, b,..., g cña LED. Mçi gi¸ trÞ cÇn hiÖn thÞ ®−îc ®−a ®Õn cæng PB cø mçi 2 ms mét lÇn cho mét ®Ìn. Gi¸ trÞ sè nãi trªn ®−îc hiÖn ra trªn ch÷ sè thËp ph©n nμo l¹i lμ do c¸c bit cña byte d÷ liÖu tõ CPU ®−a ®Õn cæng PA cña m¹ch 8255A quyÕt ®Þnh. Nh− vËy cø mçi 2 ms th× ph¶i ta ®−a d÷ liÖu ra PB råi PA vμ cho hiÖn ra ®−îc mét gi¸ trÞ sè trªn 1 ®Ìn. NÕu c¶ th¶y cã 8 LED 7 nÐt th× ta mÊt 16 ms ®Ó cho hiÖn sè ra c¶ d·y ®Ìn. Qu¸ tr×nh trªn lÆp ®i lÆp l¹i (1 lÇn hÕt 16 ms hay 60 lÇn trong 1 s) lμm cho ta cã c¶m gi¸c lμ c¸c ®Ìn s¸ng liªn tôc mÆc dï trong thùc tÕ chóng ®−îc ®iÒu khiÓn ®Ó s¸ng kh«ng liªn tôc. Mét ph−¬ng ph¸p phèi ghÐp gièng nh− trªn nh−ng kh«ng dïng ®Õn m¹ch gi¶i m· SN7447 còng rÊt hay ®−îc sö dông. Thay v× m¹ch SN7447 nh− ë trªn, t¹i ®©y ta dïng mét bé khuÕch ®¹i ®Öm chØ ®Ó n©ng cao kh¶ n¨ng t¶i cña cæng PB. V× thÕ trong tr−êng hîp nμy CPU ph¶i ®−a ®Õn PB kh«ng ph¶i lμ 4 bit m· BCD cña gi¸ trÞ sè cÇn hiÖn thÞ mμ lμ c¸c mÉu 7 bit ®Ó lμm s¸ng c¸c nÐt t−¬ng øng víi gi¸ trÞ sè ®ã. Nh− vËy CPU ph¶i ®Ó th× giê ®Ó chuyÓn ®æi tõ gi¸ trÞ sè hÖ 16 sang mÉu bit dμnh cho c¸c nÐt cña LED vμ ta cã kh¶ n¨ng hiÖn ®−îc c¸c sè tõ 0-FH. §Ó gi¶i phãng hoμn toμn ®−îc bé vi xö lý khái c«ng viÖc ®iÒu khiÓn ®Ìn LED ta cã thÓ dïng m¹ch ®iÒu khiÓn 8279 ®· ®−îc nãi ®Õn trong môc tr−íc. 3. Phèi ghÐp víi mμn h×nh Trong giai ®o¹n hiÖn nay, mμn hiÖn thÞ b»ng tinh thÓ láng (liquid crystal display, LCD) vμ mμn h×nh b»ng èng tia ®iÖn tö hay ®Ìn h×nh (cathode ray tube, CRT) lμ c¸c thiÕt bÞ hiÖn thÞ rÊt th«ng dông ®èi víi c¸c m¸y vi tÝnh lo¹i x¸ch tay hoÆc lo¹i ®Ó bμn. Trong phÇn nμy ta sÏ chØ giíi thiÖu c¸c th«ng sè vμ c¸ch phèi ghÐp mμn h×nh CRT víi CPU. M¹ch dïng cho viÖc phèi ghÐp nμy cßn cã tªn lμ bé ®iÒu khiÓn mμn h×nh (CRT controller, CRTC) • Mμn h×nh hiÖn ch÷ (chÕ ®é v¨n b¶n) QuÐt mμnh vμ quÐt dßng §Ìn h×nh thùc chÊt lμ mét ®Ìn ®iÖn tö ®Æc biÖt cã 2 ®Çu, trong ®ã mét ®Çu cã bÒ mÆt loe réng ra ®Ó lμm chç quan s¸t h×nh ¶nh cña c¸c tia ®iÖn tö vμ bªn c¹nh lμ l−íi kim lo¹i nèi víi ®iÖn ¸p rÊt cao ®Ó gia tèc cho c¸c tia ®iÖn tö ph¸t ra tõ mét sóng ®Æt ë ®Çu bªn kia cña ®Ìn. BÒ mÆt phÝa trong cña ®Çu loe cña ®Ìn ®−îc phñ mét líp 259
- ho¸ chÊt (líp huúnh quang) cã kh¶ n¨ng ph¸t s¸ng khi cã ®iÖn tö ®Ëp vμo, mμu cña ¸nh s¸ng ph¸t ra phô thuéc vμo thμnh phÇn ho¸ häc cña líp huúnh quang. NÕu mμn h×nh lμ lo¹i mét mμu th× trªn bÒ mÆt nμy chØ cã mét chÊt huúnh quang duy nhÊt, cßn nÕu lμ mμn h×nh mμu th× líp huúnh quang ®−îc h×nh thμnh tõ rÊt nhiÒu phÇn tö cña 3 lo¹i ho¸ chÊt kh¸c nhau, khi cã ®iÖn tö ®Ëp vμo mçi chÊt liÖu cã thÓ ph¸t ra mét trong 3 mμu c¬ b¶n: ®á (red, R), xanh l¬ hoÆc xanh n−íc biÓn (blue, B) vμ xanh l¸ c©y (green, G). §iÖn tö ph¶i ®i qua mét mÆt n¹ gåm rÊt nhiÒu lç ®Ó ®−îc ®Þnh h−íng chÝnh x¸c vμo c¸c phÇn tö ph¸t mμu. Kho¶ng c¸ch gi÷a c¸c lç trªn mÆt n¹ hay kÝch th−íc cña c¸c ®iÓm ¶nh (pitch) trªn mμn quyÕt ®Þnh ®é ph©n gi¶i cña mét mμn h×nh. Muèn thÓ hiÖn h×nh ¶nh trªn mμn h×nh ta ph¶i ®iÒu khiÓn tia ®iÖn tö, ®−îc ph¸t x¹ ra tõ mét catèt bÞ nung nãng ë ®u«i ®Ìn, di chuyÓn tõ tr¸i sang ph¶i (t¹o ra dßng) vμ tõ cao xuèng thÊp (t¹o ra mμnh), ®ång thêi ta ®iÒu chÕ c−êng ®é cña tia ®iÖn tö theo ®é s¸ng cña h×nh ¶nh muèn hiÖn trong suèt thêi gian tia ®iÖn tö chuyÓn ®éng ®Õn phÇn loe ra cña ®Ìn. Nh÷ng lóc tia ®iÖn tö gÆp ®Çu mót bªn ph¶i còng nh− bªn d−íi cña mμn h×nh nã sÏ bÞ t¾t vμ ®−îc l¸i rÊt nhanh theo h−íng ng−îc l¹i ®Ó l¹i b¾t ®Çu qu¸ tr×nh "quÐt" t¹o ra dßng míi vμ mμnh míi. Tuú theo c¸ch thùc hiÖn viÖc quÐt ta cã thÓ cã c¸ch quÐt 1 mμnh hay 2 mμnh xen kÏ. Tuú theo c¸c tiªu chuÈn kh¸c nhau ta còng cã c¸c th«ng sè vÒ dßng quÐt cho mét mμnh, tÇn sè quÐt dßng hoÆc tÇn sè quÐt mμnh víi c¸c trÞ sè kh¸c nhau. Cho dï cã c¸c th«ng sè kh¸c nhau, mét mμn h×nh cho m¸y vi tÝnh th«ng th−êng ph¶i bao gåm c¸c m¹ch dao ®éng ®Ó t¹o ra xung quÐt dßng, xung quÐt mμnh dïng vμo viÖc ®iÒu khiÓn chuyÓn ®éng cña tia ®iÖn tö vμ m¹ch khuÕch ®¹i tÝn hiÖu h×nh ®Ó ®iÒu khiÓn c−êng ®é s¸ng cña tia ®iÖn tö ®ã. §Ó mμn h×nh nμy hiÖn thÞ ®−îc th«ng tin, ta ph¶i cung cÊp c¸c tÝn hiÖu ®ång bé cho c¸c bé t¹o dao ®éng nãi trªn vμ cung cÊp tÝn hiÖu chøa th«ng tin vÒ ®èi t−îng cÇn hiÖn thÞ (tÝn hiÖu h×nh) cho bé khuÕch ®¹i ¶nh. C¶ 3 tÝn hiÖu ®iÒu khiÓn nμy ph¶i ®−îc ®ång bé víi nhau ®Ó mét ®iÓm ¶nh cña h×nh ph¶i ®−îc hiÖn ra t¹i cïng mét vÞ trÝ trªn mμn trong mçi mμnh. C¸ch hiÖn thÞ ký tù Ký tù hoÆc h×nh vÏ ®−îc hiÖn lªn mμn h×nh b»ng tËp hîp c¸c ®iÓm (dot) s¸ng hay tèi. Trong chÕ ®é v¨n b¶n (text mode) c¸c ®iÓm nμy ®−îc h×nh thμnh b»ng viÖc cã cho tia ®iÖn tö ®Ëp hay kh«ng ®Ëp vμo mμn huúnh quang theo mét khu«n mÉu cã s½n, trong ®ã c¸c ®iÓm ®−îc tæ chøc theo ma trËn. Trªn h×nh 9.6 lμ thÝ dô c¸c ma trËn ®iÓm dïng lμm mÉu ch÷ phôc vô cho viÖc hiÖn thÞ ch÷ E vμ ch÷ H trªn mμn h×nh. ChÊm ®en ®Ó biÓu hiÖn nh÷ng chç cã ®iÖn tö ®Ëp vμo mμn, chÊm tr¾ng ®Ó biÓu hiÖn nh÷ng chç kh«ng cã ®iÖn tö ®Ëp vμo mμn (ch÷ tr¾ng trªn nÒn ®en). §©y lμ ma trËn ®iÓm 5×7 cho c¸c ký tù. C¸c kÝch th−íc ma trËn kh¸c hay ®−îc dïng trong thùc tÕ lμ 7×9, 7×12 hoÆc 9×14. C¸c mÉu ch÷ nh− vËy th−êng ®−îc t¹o s½n cho mçi ký tù ASCII vμ ®−îc chøa trong mét vi m¹ch nhí ROM cã tªn lμ ROM t¹o ch÷. 260
- TÇn sè ®iÓm TÝn hiÖu h×nh T¹o xung Bé ghi dÞch 16.257.000 16,257MHz ®iÓm /s ÷9 dßng quÐt 1 D8-D0 RAM dßng quÐt 2 ®Öm A0-A7 ÷80* ROM t¹o ch÷ A0-A6 dßng quÐt 7 R0-R3 A7-A11 V.syn 50Hz ÷14 ÷25* H×nh 9.6. HiÖn ch÷ E vμ H trªn mμn h×nh H.syn 18,432 KHz Bé chia 80*: bé ®Õm ký tù (80ký tù/hμng+thêi gian quÐt ng−îc dßng) Bé chia 14: bé ®Õm dßng quÐt (14 dßng/ký tù) Bé chia 25*: bé ®Õm hμng ch÷ (25 hμng/mμnh+thêi gian quÐt ng−îc mμnh) H×nh 9.7. S¬ ®å khèi m¹ch hiÖn ch÷ theo ma trËn 9×14 trªn mμn h×nh. Trªn h×nh 9.7 lμ s¬ ®å khèi cña mét m¹ch ®Ó hiÖn thÞ ®−îc mét trang mμn h×nh v¨n b¶n gåm 80 ký tù theo chiÒu ngang vμ 25 ký tù theo chiÒu däc (80 × 25). M· ASCII cña c¸c ký tù thuéc mét trang mμn h×nh cÇn hiÖn thÞ ®−îc chøa s½n trong bé nhí RAM ®Öm mμn h×nh (mçi ký tù cÇn 1 byte ®Ó ghi nhí m· cña nã). NÕu ta cÇn hiÖn thÞ 1 trang mμn h×nh gåm 80×25=2000 ký tù th× ta cÇn dïng ®Õn mét bé nhí RAM ®Öm cã dung l−îng cì 2 KB. Néi dung cña bé nhí RAM ®Öm nμy ®−îc bé ®iÒu khiÓn mμn h×nh ®−a ra ®Þnh kú ®Ó lμm t−¬i mμn h×nh sau mét kho¶ng thêi gian nhÊt ®Þnh (nh− vËy mμn h×nh ®Ó hiÖn thÞ th«ng tin lμm viÖc ë chÕ ®é ®éng). Trong thùc tÕ, bé nhí RAM ®Öm nμy cßn ph¶i th©m nhËp ®−îc b»ng bé vi xö lý ®Ó ta cßn cã kh¶ n¨ng thay ®æi ®−îc néi dung cÇn ®−a ra hiÖn thÞ. C¸c ®Þa chØ A0-A6 sÏ x¸c ®Þnh vÞ trÝ cña ký tù cÇn hiÖn thÞ trong 1 hμng cßn c¸c ®Þa chØ A7-A11 sÏ x¸c ®Þnh to¹ ®é tÝnh theo cét cña c¶ mét hμng ký tù cÇn hiÖn thÞ. Nãi c¸ch kh¸c tæ hîp c¸c bit ®Þa chØ A0-A11 cña RAM ®Öm sÏ quyÕt ®Þnh to¹ ®é cô thÓ cña 1 ký tù trªn mμn h×nh. Trong thùc tÕ ma trËn ®iÓm 9×14 cña bé ROM t¹o ch÷ cã d¹ng nh− trªn h×nh 9.8. C¸c dßng ®iÓm thõa ra ë bèn phÝa lμ ®Ó t¹o ra gi·n c¸ch gi÷a c¸c ch÷ trong 1 hμng vμ gi·n c¸ch gi÷a c¸c hμng víi nhau. 261
- R3 - R0 000000000 000000000 0000 011111110 000000000 0001 010000010 000000000 0010 010000010 000000000 0011 010000010 010111000 0100 011111100 011000100 0101 010000000 010000100 0110 010000000 010000100 0111 010000000 011000100 1000 010000000 010111000 1001 000000000 010000000 1010 000000000 010000000 1011 000000000 000000000 1100 000000000 000000000 1101 H×nh 9.8. Ma trËn ®iÓm 9x14 cho ch÷ P vμ ch÷ p. Khi ROM t¹o ch÷ nhËn ®−îc tÝn hiÖu ®Þa chØ tõ RAM ®Öm th× ®ã chÝnh lμ m· ASCII cña ký tù cÇn hiÖn thÞ vμ mét ma trËn ®iÓm t−¬ng øng cña ký tù ®−îc chän ®Ó ®−a ra mμn h×nh. ViÖc quÐt c¸c dßng ®iÓm trong ma trËn ®iÓm lμ do c¸c tÝn hiÖu quÐt dßng R3 - R0 quyÕt ®Þnh. Gi¶ sö néi dung cña bé ®Õm ký tù lóc nμy lμ 0. Ký tù ®Çu tiªn ë gãc tr¸i mμn h×nh ®−îc chän ®Ó hiÖn thÞ. M· ASCII cña nã ®−îc ®−a ®Õn bé nhí ROM t¹o ch÷. Gi¶ thiÕt lóc ®Çu bé ®Õm dßng quÐt cã R3R2R1R0=0000. ë ®Çu ra cña bé nhí ROM cã dßng ®iÓm ®Çu tiªn (9 ®iÓm cho 1 ký tù) ®−îc ®−a ra bé ghi dÞch, ë ®©y d÷ liÖu tõ d¹ng song song ®−îc biÕn ra d¹ng nèi tiÕp råi ®−a ®Õn bé khuÕch ®¹i víi tèc ®é 16.257.000 ®iÓm/s ®Ó ®iÒu chÕ c−êng ®é cña tia ®iÖn tö ph¸t ra tõ catèt ®Ìn h×nh. Nªn nhí r»ng khi mét dßng quÐt cho mét ký tù võa xong th× bé ®Õm ký tù tù ®éng t¨ng thªm ®Ó ta cã thÓ lÊy ra ®−îc dßng ®iÓm cña ký tù tiÕp theo cÇn hiÖn thÞ ë trong cïng mét hμng. C«ng viÖc cø tiÕp tôc nh− vËy cho ®Õn khi thao t¸c xong víi ký tù thø 80, lóc nμy tia ®iÖn tö bÞ l¸i ng−îc l¹i ®Ó b¾t ®Çu l¹i qu¸ tr×nh trªn ®èi víi dßng quÐt tiÕp theo. Khi ®· quÐt xong ®−îc 14 dßng ®iÓm cho 80 ký tù nh− trªn (tøc lμ cho mét hμng ký tù) th× bé ®Õm hμng ký tù ®−îc tù ®éng t¨ng thªm 1 vμ hμng ký tù tiÕp theo l¹i ®−îc quÐt nh− ®èi víi hμng ký tù tr−íc ®ã. Qu¸ tr×nh sÏ tiÕp diÔn cho ®Õn khi thao t¸c xong víi hμng ký tù thø 25. Lóc nμy tia ®iÖn tö bÞ l¸i ng−îc trë l¹i ®Ó cã thÓ b¾t ®Çu l¹i qu¸ tr×nh lμm t−¬i mμn h×nh tõ ký tù ®Çu tiªn trªn gãc tr¸i cña hμng ký tù thø nhÊt trªn mμn h×nh. 262
- Qu¸ tr×nh lμm t−¬i mét trang mμn h×nh ph¶i ®−îc thùc hiÖn 30-60 lÇn/s ®Ó m¾t ta kh«ng thÓ ph©n biÖt ®−îc tÝnh kh«ng liªn tôc cña qu¸ tr×nh hiÖn thÞ. Bus A Dån kªnh ®Þa chØ CPU dÞa chØ lμm t−¬i 2KB RAM 2KB RAM thuéc tÝnh m· ký tù §Öm vμo,chèt Bus D ra cho bus D tÇn sè ký tù Chèt 8 bit Chèt 8 bit CRTC Bus A ROM Gi¶i m· A0 tÇn t¹o ch÷ thuéc tÝnh sè chän dßng ®iÓm 6845 ®iÓm Ghi dÞch Logic cs xö lý c¸c tÝn hiÖu ®iÒu tÝn hiÖu khiÓn h×nh ®iÌu khiÓn xung nhÞp h×nh ®Ìn h×nh tÇn sè ký tù H×nh 9.9. S¬ ®å khèi bé phèi ghÐp mμn h×nh mét mμu cña IBM. mμn h×nh mét mμu cña IBM Trªn h×nh 9.9 lμ s¬ ®å khèi cña vØ ®iÒu khiÓn mμn h×nh mét mμu (monochrome display adapter, MDA) cña IBM. Nh×n vμo s¬ ®å khèi nμy ta cã thÓ nhËn ra mét sè khèi chøc n¨ng ®· ®−îc giíi thiÖu trªn h×nh 9.7. TÇn sè ®iÓm 16,257 MHz ®−îc chia cho 9 ë bªn trong khèi logic xö lý tÝn hiÖu h×nh ®Ó t¹o ra tÇn sè ký tù 1,787.904 MHz, tÇn sè nμy ®−îc ®−a ®Õn m¹ch ®iÒu khiÓn mμn h×nh CRTC 6845 ®Ó t¹o ra c¸c xung ®ång bé vμ c¶ c¸c xung kh¸c cÇn thiÕt cho viÖc lμn t−¬i mμn h×nh. M¹ch CRTC cã chøc n¨ng bao trïm chøc n¨ng cña c¸c bé ®Õm ký tù, bé ®Õm sè dßng quÐt vμ bé ®Õm sè hμng ký tù cña h×nh 9.7 cïng mét sè chøc n¨ng kh¸c, nh−ng víi kh¶ n¨ng ho¹t ®éng linh ho¹t h¬n nhiÒu v× nã lμ mét vi m¹ch rÊt phøc t¹p lËp tr×nh ®−îc. Khèi logic xö lý tÝn hiÖu h×nh sÏ xö lý c¸c tÝn hiÖu tõ bé ghi dÞch cïng víi c¸c tÝn hiÖu ®iÒu khiÓn h×nh (®ång bé dßng, ®ång bé mμnh) ®Ó t¹o ra tÝn hiÖu h×nh cuèi cïng ®−a ra ®iÒu khiÓn trùc tiÕp mμn h×nh. Trong h×nh 9.9 bªn c¹nh 2 KB RAM ®Öm chøa c¸c byte lμ m· ASCII cña c¸c ký tù cÇn hiÖn thÞ cßn ta cßn thÊy cã 2 KB RAM ®Öm kh¸c dïng ®Ó chøa c¸c byte thuéc tÝnh cña c¸c ký tù ®ã. 263
- Byte m· ASCII Byte thuéc tÝnh 76543210⏐76543210 §Þa chØ ch½n §Þa chØ lÎ a) D÷ liÖu trong bé nhí RAM ®Öm Thuéc tÝnh C¸c bit cña byte thuéc tÝnh 7 654 3 210 NÒn Ch÷ BL(ch÷ I B×nh th−êng BL 000 I 111 §¶o BL 111 I 000 Mμn ®en kh«ng ch÷ BL 000 I 000 Mμn tr¾ng kh«ng ch÷ BL 111 I 111 b) D¹ng thøc cña byte thuéc tÝnh I=1: ch÷ hiÖn ra s¸ng h¬n BL=1: ch÷ nhÊp nh¸y H×nh 9.10. Byte m· ký tù vμ byte thuéc tÝnh. Byte thuéc tÝnh (xem h×nh 9.10) qui ®Þnh c¸ch thøc hiÖn thÞ ký tù ®· cho trªn mμn h×nh: ®é s¸ng cña ký tù, ký tù hiÖn liªn tôc hay nhÊp nh¸y, quan hÖ gi÷a mμu nÒn vμ mμu ch÷ (vÝ dô hiÖn b×nh th−êng th× ch÷ tr¾ng trªn nÒn ®en cßn ®¶o ng−îc th× ch÷ ®en trªn nÒn tr¾ng). Trong bé nhí thùc, byte m· ký tù ®Æt t¹i ®Þa chØ ch½n cßn byte thuéc tÝnh ®Æt t¹i ®Þa chØ lÎ. Mçi m¶ng nhí 2 KB RAM nμy ®Òu th©m nhËp ®−îc tõ CPU hoÆc tõ CRTC. §Ó kh«ng x¶y ra xung ®ét gi÷a CPU vμ CRTC trong khi th©m nhËp bé nhí, th«ng th−êng CPU chØ ®−îc quyÒn th©m nhËp vμo c¸c RAM ®Öm trong thêi gian cña c¸c xung quÐt ng−îc hoÆc c¶ CRTC vμ CPU ®Òu ®−îc chia 1/2 thêi gian liªn tiÕp cña xung ký tù ®Ó th©m nhËp vμo RAM ®Öm. §Ó lμm t−¬i mμn h×nh, CRTC liªn tôc ®−a ®Þa chØ ®Õn c¸c « cña bé nhí m· ký tù vμ bé nhí thuéc tÝnh. Mçi xung ký tù sÏ cho phÐp chèt 1 byte m· ký tù vμ 1 byte thuéc tÝnh ®Ó ®−a ®Õn bé ROM t¹o ch÷ vμ bé gi¶i m· thuéc tÝnh. Qu¸ tr×nh nμy sÏ tiÕp tôc cho c¸c ký tù kh¸c trong trang mμn h×nh vμ cø lÆp ®i lÆp l¹i m·i. c¸c xung nhÞp vμ xung §ång bé C¸c bé phèi ghÐp mμn h×nh kh¸c nhau cã tÇn sè xung ®ång bé dßng, xung ®ång bé mμnh vμ tÇn sè ®iÓm kh¸c nhau ®Ó phï hîp víi c¸c lo¹i mμn h×nh mμ nã ph¶i 264
- ®iÒu khiÓn. Nãi chung c¸c bé phèi ghÐp mμn h×nh th−êng cã tÇn sè xung quÐt dßng n»m trong d¶i 15-50 kHz, tÇn sè xung quÐt mμnh n»m trong d¶i 50-60 Hz vμ tÇn sè ®iÓm n»m trong d¶i 10-100 MHz. thêi gian quÐt tréi Mμn h×nh thêi gian khung h×nh quÐt mμnh lμm viÖc tÝch cùc (tÝch cùc) thêi gian quÐt tréi vμ quÐt ng−îc thêi gian thêi gian quÐt thêi gian quÐt tréi dßng tÝch cùc quÐt tréi vμ quÐt ng−îc H×nh 9.11. Ph©n chia thêi gian cña c¸c xung quÐt dßng vμ quÐt mμnh. Ta lÊy l¹i vÝ dô bé ®iÒu khiÓn mμn h×nh mét mμu cña IBM ®Ó ph©n tÝch c¸c xung chÝnh. H×nh 9.11 biÓu diÔn sù ph©n chia thêi gian cña hai lo¹i xung quÐt. Gi¶ thiÕt ta ph¶i hiÖn thÞ mét trang mμn h×nh gåm 80×25 ký tù víi ma trËn ®iÓm 9×14. Nh− vËy trªn khung h×nh lμm viÖc cña mμn h×nh ta ph¶i cã 80×9=720 ®iÓm/dßng quÐt vμ ta ph¶i cã tÊt c¶ 25×14=350 dßng quÐt. NÕu ta sö dông tÇn sè ®iÓm lμ 16,257 MHz (16.257.000 ®iÓm/s) th× víi tÇn sè dßng 18,432 kHz (hoÆc dßng quÐt/s) ta sÏ cã (16.257.000 ®iÓm/s)/(18.432 dßng quÐt/s)=882 ®iÓm/dßng quÐt. ThÕ mμ trªn ®©y ta võa tÝnh ®−îc lμ trªn khung h×nh lμm viÖc ta chØ cÇn 720 ®iÓm/dßng quÐt. Nh− thÕ ta cã 162 ®iÓm d«i ra, nghÜa lμ t−¬ng øng vÒ mÆt thêi gian ta cã thªm thêi gian ®Ó bï vμo c¸c ®o¹n quÐt tréi (ngoμi vïng lμm viÖc cña mμn h×nh) vμ thêi gian quÐt ng−îc cña tia ®iÖn tö theo chiÒu ngang. T−¬ng tù ta còng cã tÇn sè xung quÐt mÆt lμ 50 Hz (50 mμnh/s), víi tÇn sè dßng 18,432 kHz (hay dßng quÐt/s) ta sÏ cã (18.432 dßng quÐt/s)/(50 mμnh/s)=369 dßng quÐt/mμnh. Tr−íc ®©y ta ®· tÝnh ®−îc trong khung h×nh lμm viÖc ta chØ cÇn 350 dßng quÐt/mμnh, tøc lμ ta cã d«i thªm ra 19 dßng quÐt/mμnh. Víi sè dßng quÐt d«i thªm ra nμy, t−¬ng øng vÒ mÆt thêi gian ta sÏ cã thªm thêi gian ®Ó bï vμo c¸c ®o¹n quÐt tréi (ngoμi vïng lμm viÖc cña mμn h×nh) vμ thêi gian quÐt ng−îc cña tia ®iÖn tö theo chiÒu däc. 265
- • Mμn h×nh ®å ho¹ (chÕ ®é ®å ho¹) mμn h×nh ®å ho¹ mét mμu Trong chÕ ®é v¨n b¶n, c¸c chÊm ë ®Çu ra cña bé ghi dÞch lμ h×nh ¶nh cña c¸c dßng ®iÓm cña c¸c ký tù ®−îc ghi s½n trong ROM t¹o ch÷. T−¬ng tù nh− vËy, ®Ó thÓ hiÖn mét h×nh ¶nh bÊt kú (trong ®ã cã c¶ ch÷, nh−ng kh«ng tu©n theo mét khu«n mÉu s½n cã nμo) ta cã thÓ ®−a vμo thanh ghi dÞch c¸c ®iÓm thμnh phÇn cña h×nh ®ã. §Ó lμm ®−îc diÒu nμy ta kh«ng cÇn ®Õn bé ROM t¹o ch÷ n÷a vμ bé nhí RAM ®Öm lóc nμy, thay v× chøa m· ASCII cña ký tù, ph¶i chøa c¸c ®iÓm ¶nh (pixel hay pel) mμ tæ hîp cña chóng chÝnh lμ h×nh ¶nh cÇn ph¶i hiÖn. ChÕ ®é lμm viÖc kiÓu nμy cña mμn h×nh gäi lμ chÕ ®é ®å ho¹, mμn h×nh hiÖn thÞ h×nh ¶nh theo b¶n ®å ®iÓm ¶nh (bit- map). Gi¶ thiÕt ta ph¶i hiÖn trªn khung h×nh lμm viÖc 640 ®iÓm ¶nh theo chiÒu ngang vμ 400 ®iÓm theo chiÒu däc th× c¶ khung h×nh lμm viÖc nμy t−¬ng ®−¬ng víi mét ma trËn víi 256.000 ®iÓm ¶nh. NÕu ®Ó ghi nhí mçi ®iÓm ¶nh nh− vËy ta cÇn 1 bit trong bé nhí RAM ®Öm th× víi c¶ khung h×nh lμm viÖc ta ph¶i cÇn ®Õn bé nhí víi dung l−îng cì 32 KB. Tõ ®©y ta còng nhËn thÊy r»ng nÕu ph¶i ghi nhí th«ng sè cho mét ®iÓm ¶nh mμu th× ta sÏ ph¶i tèn thªm nhiÒu « nhí h¬n so víi cho tr−êng hîp ®iÓm ¶nh mét mμu. mμn h×nh ®å ho¹ mμu Nh− tr−íc ®©y ®· nãi, mμn h×nh (nhiÒu) mμu kh¸c mμn h×nh mét mμu bëi sù cã mÆt cña c¸c côm 3 phÇn tö trong líp huúnh quang phñ lªn bÒ mÆt phÝa trong cña ®Ìn h×nh, mçi phÇn tö cã kh¶ n¨ng ph¸t ra 1 trong c¸c mμu R, B vμ G. Mμu cña mét ®iÓm ¶nh trªn mμn h×nh mμu lμ sù kÕt hîp cña 3 ®iÓm s¸ng ph¸t ra tõ 3 phÇn tö mμu ®ã khi chóng bÞ 3 tia ®iÖn tö ®i ra tõ 3 sóng ë catèt ®Ìn h×nh b¾n vμo. Nh− vËy, ®Ó ®iÒu khiÓn mét ®iÓm ¶nh cña mμn h×nh mμu ta ph¶i cã 3 tÝn hiÖu ®Ó ®iÒu khiÓn 3 tia R, B vμ G, kÌm thªm 1 tÝn hiÖu ®Ó ®iÒu khiÓn c−êng ®é s¸ng (I) cña ®iÓm ¶nh. Mμn h×nh mμu lo¹i nμy v× vËy cßn ®−îc gäi lμ mμn h×nh RBG hoÆc mμn h×nh RBGI. Chóng th−êng ®−îc thiÕt kÕ ®Ó cã thÓ lμm viÖc ®−îc víi c¸c khu«n h×nh hiÖn thÞ kh¸c nhau vμ víi c¸c tÇn sè cña c¸c xung ®ång bé dßng vμ mμnh n»m trong mét d¶i nhÊt ®Þnh. Ta thÊy ngay r»ng ®Ó ghi nhí th«ng tin cho mét ®iÓm s¸ng trªn mμn h×nh mμu trong bé nhí RAM ®Öm theo kiÓu ®· lμm cho mμn h×nh mét mμu, ta ph¶i tèn 4 bit (thay v× 1 bit nh− trong tr−êng hîp mμn h×nh mét mμu) vμ nÕu ta ph¶i hiÖn thÞ trªn khung h×nh lμm viÖc 640×400 ®iÓm ¶nh th× bé nhí RAM ®Öm cho mμn h×nh mμu ph¶i cã dung l−îng cì 32 KB×4 = 96 KB. 266
- I R G B Mμu 0 0 0 0 §en 0 0 0 1 Xanh biÓn 0 0 1 0 Xanh l¸ c©y 0 0 1 1 Xanh da trêi 0 1 0 0 §á 0 1 0 1 TÝa 0 1 1 0 N©u 0 1 1 1 Tr¾ng 1 0 0 0 Ghi, X¸m 1 0 0 1 Xanh biÓn nh¹t 1 0 1 0 Xanh l¸ c©y nh¹t 1 0 1 1 Xanh da trêi nh¹t 1 1 0 0 §á nh¹t 1 1 0 1 TÝa nh¹t 1 1 1 0 Vμng 1 1 1 1 Tr¾ng chãi H×nh 9.12. 16 mμu cña mμn h×nh mμu ®å ho¹ CGA. Víi 4 bit ®Ó chøa th«ng tin vÒ mμu cho mét ®iÓm ¶nh ta cã kh¶ n¨ng thÓ hiÖn ®−îc ®iÓm ¶nh ®ã víi 16 mμu (xem h×nh 9.12). §Ó cã thÓ hiÖn mét ®iÓm ¶nh víi c¸c gam mμu liªn tôc h¬n ng−êi ta ®· ®−a vμo sö dông c¸c mμn h×nh t−¬ng tù. C¸c mμn h×nh nμy ®−îc nèi qua c¸c m¹ch biÕn ®æi sè - t−¬ng tù (DAC) ë ®Çu vμo vμ c¸c bé biÕn ®æi nμy ®−îc nèi ®Õn c¸c vØ ®iÒu khiÓn mμn h×nh lμm viÖc víi tÝn hiÖu h×nh ë d¹ng sè ®· cã s½n. VÝ dô, nÕu ta dïng 2 bit ®Ó m· ho¸ c¸c gam kh¸c nhau cho 1 mμu c¬ b¶n vμ nÕu ta dïng 1 bé DAC 2 bit cho mçi mμu, ta cã thÓ hiÖn thÞ mét ®iÓm ¶nh víi 4×4×4=64 lo¹i mμu kh¸c nhau. B¶ng mμu vμ mÆt ®iÓm ¶nh Nh− ®· nãi ë trªn, nÕu ta dïng 1 bit trong bé nhí RAM ®Öm ®Ó nhí th«ng tin cho 1 ®iÓm ¶nh mét mμu th× ta ph¶i dïng nhiÒu bit h¬n ®Ó chøa th«ng tin cho 1 ®iÓm ¶nh mμu, v× c¸c th«ng tin cho c¸c mμu R, B vμ G còng ph¶i ®−îc l−u tr÷. VÝ dô, ®Ó hiÖn mét ®iÓm ¶nh mμu víi 256 mμu kh¸c nhau ta sÏ ph¶i dïng ®Õn 8 bit ®Ó l−u tr÷ th«ng tin vÒ ®iÓm ®ã. NÕu ta lÊy tr−êng hîp ph¶i hiÖn thÞ 640×400 ®iÓm, mçi ®iÓm víi 256 mμu kh¸c nhau ta sÏ ph¶i cÇn bé nhí dung l−îng 256.000 byte. §iÒu nμy g©y khã kh¨n trong viÖc thùc hiÖn bé nhí RAM ®Öm vÒ mÆt gi¸ c¶ còng nh− vÒ kh«ng gian ®Þa chØ dμnh cho phÇn hiÖn thÞ trong c¸c hÖ vi xö lý 16 bit. 267
- §Ó h¹n chÕ bít sè bit cÇn thiÕt cho viÖc l−u gi÷ th«ng tin cña ®iÓm ¶nh mμu mμ vÉn ®¶m b¶o ®−îc gam mμu réng ng−êi ta ®· sö dông viÖc m· ho¸ th«ng tin theo b¶ng mμu (palette). §iÒu nμy cã nghÜa lμ trong mét thêi ®iÓm chóng ta chØ ®−îc sö dông mét sè mμu trong mét b¶ng mμu chøa tÊt c¶ c¸c mμu cã thÓ cã. VÝ dô, vØ ®iÒu khiÓn mμn h×nh CGA cña h·ng IBM cã kh¶ n¨ng hiÖn thÞ mét lóc 320×200 ®iÓm víi 4 mμu chän trong b¶ng mμu gåm 16 mμu. V× t¹i mét thêi ®iÓm ta chØ hiÖn 4 mμu nªn ®Ó l−u gi÷ th«ng tin cho 1 ®iÓm ¶nh ta chØ cÇn 2 bit. VÝ dô kh¸c, nÕu t¹i mét thêi ®iÓm ta võa lßng víi viÖc hiÖn thÞ 640×400 ®iÓm ¶nh víi 16 mμu trong b¶ng mμu gåm 256 mμu, chø kh«ng ph¶i lμ víi 256 mμu cïng mét lóc, ta sÏ chØ cÇn ®Õn 4 bit ®Ó l−u gi÷ th«ng tin cho mét ®iÓm ¶nh víi 1 trong 16 mμu. Bé nhí RAM ®Öm sÏ nhá ®i ®−îc mét nöa so víi tr−êng hîp hiÖn ®ñ 256 mμu, lý do lμ mét byte trong tr−êng hîp nμy cã thÓ chøa th«ng tin cho 2 ®iÓm mμu (xem h×nh 9.13a). ViÖc chØ dïng mét sè mμu trong mét b¶ng mμu ®Ó lμm gi¶m kÝch th−íc bé nhí ®Öm lμ rÊt cã lîi ®èi víi c¸c bé ®iÒu khiÓn mμn h×nh cã ®é ph©n gi¶i cao (vμ nh− vËy ®ßi hái bé nhí lín), v× ®iÒu nμy lμm gi¶m ®−îc tÇn sè truy nhËp bé nhí DRAM ®Öm khi lμm t−¬i mμn h×nh. Mét biÖn ph¸p kh¸c ®Ó lμm gi¶m tÇn sè truy nhËp bé nhí ®Öm khi lμm t−¬i mμn h×nh lμ b»ng c¸ch tæ chøc bé nhí ®Öm theo c¸c mÆt nhí song song ®Ó chøa th«ng tin cña mét ®iÓm. C¸ch tæ chøc bé nhí cho kiÓu hiÖn thÞ nμy ®−îc minh häa trªn h×nh 9.13b. Trong c¸ch lμm nμy, 4 bit th«ng tin cña 1 ®iÓm ¶nh ®−îc ®Ó t¹i c¸c vÞ trÝ gièng nhau trong 4 byte liªn tiÕp cña bé nhí DRAM ®Öm. §iÒu nμy t−¬ng ®−¬ng viÖc mçi th«ng tin vÒ 1 mμu ®−îc ®Ó trong mét mÆt ®iÓm (bit plan). Khi bé ®iÒu khiÓn mμn h×nh lÊy 4 byte nμy vμo c¸c thanh ghi cña nã th× nã cã ®−îc c¶ th¶y th«ng tin cña 8 ®iÓm ¶nh. Trong khi 8 diÓm ¶nh nμy ®−îc ®−a ra mμn h×nh th× bé nhí DRAM cã thêi gian håi phôc ®Ó l¹i cã thÓ ®äc tiÕp ®−îc. Víi 4 bit th«ng tin cho mét ®iÓm ¶nh trong 4 mÆt ta sÏ chän ®−îc 1 trong 16 thanh ghi t−¬ng øng vãi 1 trong 16 mμu cña b¶ng mμu gåm 64 mμu (thanh ghi nμy cã 6 bit cho c¸c mμu ®á vμ ®á nh¹t, xanh biÓn vμ xanh biÓn nh¹t, xanh l¸ c©y vμ xanh l¸ c©y nh¹t). §©y còng lμ c¸ch hiÖn ®iÓm mμu cña vØ ®iÒu khiÓn mμn h×nh EGA (enhanced graphics adapter, bé phèi ghÐp ®å ho¹ c¶i tiÕn). • C¸c lo¹i phèi ghÐp mμn h×nh th«ng dông Trªn h×nh 9.14 lμ b¶n liÖt kª c¸c lo¹i m¹ch phèi ghÐp mμn h×nh th«ng dông trong thùc tÕ vμ c¸c th«ng sè kü thuËt chÝnh cña chóng. H×nh 9.14 còng giíi thiÖu c¸c khu«n mÉu hiÖn thÞ cña c¸c vØ phèi ghÐp mμn h×nh cho c¸c m¸y vi tÝnh c¸ nh©n cña h·ng IBM hoÆc t−¬ng thÝch. 268
- D7 D0 ®iÓm1 ®iÓm0 P1 P0 R⏐G⏐B⏐I ⏐R⏐G⏐B ⏐I Bé nhí ®Öm h×nh a) Chøa th«ng tin theo ®iÓm ¶nh Thanh ghi b¶ng mμu xxRIGIBIRGB D7 D0 0 ⏐ ⏐I D0 MÆt I ⏐ ⏐B D1 MÆt B ⎬ 5 MÆt G D2 ⏐ ⏐G D3 MÆt R ⏐ ⏐R Bé nhí ®Öm h×nh ®iÓm1 ®iÓm0 15 ®Õn mμn h×nh RBGI RI, GI, BI, R, B, G b) Chøa th«ng tin theo kiÓu mÆt ®iÓm. H×nh 9.13. C¸ch chøa th«ng tin trong bé nhí RAM ®Öm h×nh. C¸c m¸y tÝnh c¸ nh©n cña IBM hoÆc c¸c m¸y t−¬ng thÝch th−êng kh«ng cã s½n kh¶ n¨ng ®å ho¹ g¾n trªn b¶ng mÑ. Ng−êi dïng ph¶i lùa chän ®Ó c¾m vμo b¶ng mÑ mét vØ m¹ch phèi ghÐp (vØ ®iÒu khiÓn mμn h×nh) víi kh¶ n¨ng hiÖn thÞ ë chÕ ®é v¨n b¶n/®å ho¹ thÝch hîp vμ chän lo¹i mμn h×nh phï hîp víi bé ®iÒu khiÓn ®ã. Do vËy tªn cña bé ®iÒu khiÓn mμn h×nh còng dïng ®Ó gäi lu«n cho lo¹i mμn h×nh t−¬ng thÝch ®i kÌm víi nã. 269
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn