µ±Ç°Î»ÖãºÊ×Ò³ > »ã±àÔÀí¸´Ï°Ìâ¼°´ð°¸
INT 21H
CODE
ENDS END MAIN
Îå¡¢¼ò´ðÌâ,(±¾´óÌâ¹²24СÌâ,24·Ö)
1. ÖжÏÏòÁ¿±í°²ÅÅÔÚÄÚ´æÖеÄÊ²Ã´ÇøÓò£¿×î¶à¿ÉÒÔ°²ÅŶàÉÙ¸öÖжÏÏò Á¿£¿Èô¶ÔÓ¦ÖжÏÀàÐÍÂëΪ 47H µÄÖжϷþÎñ³ÌÐò´æ·ÅÔÚ 2300H£º3460H ¿ªÊ¼µÄÇøÓòÖУ¬Ôò¸ÃÖжÏÏòÁ¿ÔÚÄÚ´æÖÐÊÇÈçºÎ´æ·ÅµÄ(»Í¼±íʾ)£¿
¡¾´ð°¸¡¿
×îµÍ 1K ¿Õ¼äÖУ¬0¡«003FFH £» ×î¶à¿ÉÒÔ°²ÅÅ 256 ¸öÖжÏÏòÁ¿
2. ÖжÏÏìÓ¦ÖÜÆÚÖÐΪʲôÓÐÁ½¸öINTA?
¡¾´ð°¸¡¿
µÚÒ»¸ö×ÜÏßÖÜÆÚÓÃÀ´Í¨ÖªÖжÏÇëÇóÉ豸£¬Î¢´¦ÀíÆ÷×¼±¸ÏìÓ¦Öжϣ¬ÏÖÔÚÓ¦¸Ã×¼±¸ºÃÖжÏÀàÐÍ
Âë¡£
µÚ¶þ¸ö×ÜÏßÖÜÆÚÖУ¬Î¢´¦ÀíÆ÷½ÓÊÕI/O½Ó¿Ú·¢À´µÄÖжÏÀàÐÍÂ룬ÒÔ±ãµÃµ½ÖжÏÏòÁ¿¼´Öжϴ¦
Àí×Ó³ÌÐòµÄÈë¿ÚµØÖ·¡£
3. 8255AµÄ¹¤×÷·½Ê½¿ØÖÆ×ÖºÍC¿ÚµÄ°´Î»ÖÃλ£¯¸´Î»¿ØÖÆ×ÖÓкβî±ð£¿Èô½«C¿ÚµÄPC2½ÅÊä³ö¸ßµçƽ(ÖÃλ)£¬¼ÙÉè8255A¿ØÖƿڵØÖ·ÊÇ303H£¬³ÌÐò¶ÎÓ¦ÊÇÔõÑùµÄ£¿ ¡¾´ð°¸¡¿
¹¤×÷·½Ê½¿ØÖÆ×ÖÊǶÔ8255AµÄÈý¸ö¶Ë¿ÚµÄ¹¤×÷·½Ê½¼°¹¦ÄܽøÐÐ˵Ã÷£¬¼´½øÐгõʼ»¯£¬Ð´ÔÚ³ÌÐòµÄ¿ªÍ·£¬¿ØÖÆ×ÖµÄ×î¸ßλD7=1¡£°´Î»ÖÃλ£¯¸´Î»¿ØÖÆ×ÖÖ»¶ÔC¿Úijһλ(²»ÄÜͬʱ¶Ô¼¸Î»)Êä³ö¸ßµçƽ(ÖÃλ)»òµÍµçƽ(¸´Î»)½øÐпØÖÆ(¶ÔÊäÈëÎÞ×÷ÓÃ)£¬¿ØÖÆ×ÖµÄ×î¸ßλD7=O¡£ PC2ÖÃλ³ÌÐò¶Î£º
MOV DX£¬ 303H MOV AL£¬05H
OUT DX£¬AL £¬
4. Éè 8255AµÄA¿Ú¹¤×÷ÓÚ·½Ê½0ÊäÈ룬B¿Ú¹¤×÷ÓÚ·½Ê½1ÊäÈë¡£ £¨1£© ±àд³õʼ»¯³ÌÐò£¨Éè¶Ë¿ÚµØÖ·ÎªCC90~CC93H£©¡£
£¨2£©±àд³ÌÐòʹC¿ÚPC5Êä³ö¸ßµçƽ,È»ºó´ÓB¿ÚÊäÈëÊý¾Ýµ½ÀÛ¼ÓÆ÷¡£ ¡¾´ð°¸¡¿
£¨1£© MOV DX,0CC93H
ÍòάÊÔÌâ¿âϵͳ µÚ 17 Ò³
MOV AL,10010110B OUT DX,AL
(2) MOV DX,0CC93H MOV AL,00001011B OUT DX,AL
MOV DX,0CC91H IN AL, DX
5. 8253µÄ3¸ö¼ÆÊýÆ÷¶¼ÓÐ3¸öÒý½Å£ºCLK¡¢OUT¡¢GATE£¬ËµÃ÷Èý¸öÐźŵŦÄÜ¡£ ¡¾´ð°¸¡¿
CLKʱÖÓÊäÈëÐźţ¬ÔÚ¼ÆÊý¹ý³ÌÖУ¬´ËÒý½ÅÿÊäÈëÒ»¸öʱÖÓÐźţ¨Ï½µÑØ£©£¬¼ÆÊýÆ÷µÄ¼ÆÊýÖµ¼õÒ»¡£GATEÃÅ¿ØÊäÈëÐźţ¬¿ØÖƼÆÊýÆ÷¹¤×÷µÄÒ»¸öÍⲿÊäÈëÐźš£OUT¼ÆÊýÆ÷Êä³öÐźţ¬µ±¼ÆÊýÖµ¼õΪ0ʱ£¬ÔÚOUTÒý½ÅÉϲúÉúÒ»¸öÊä³öÐźÅ
6. ÒÑÖª8253 MOV AL£¬50H ;__________________________ OUT 07H£¬AL ;__________________________ MOV AL£¬80H ;__________________________ OUT 05H£¬AL ;__________________________ ³ÌÐò¹¦ÄÜ£º__________________________________ ¡¾´ð°¸¡¿
MOV AL£¬50H £»¿ØÖÆ×ÖËÍAL £¨1·Ö£© OUT 07H£¬AL £»Êä³ö¿ØÖÆ×Ö £¨1·Ö£© MOV AL£¬80H £»¼ÆÊýÖµËÍAL £¨1·Ö£© OUT 05H£¬AL £»Êä³öµ½¼ÆÊýÆ÷1 £¨1·Ö£©
7. 8253 µÄ¼ÆÊýÆ÷ 2 ¹¤×÷ÓÚ·½Ê½ 2£¬Æä¼ÆÊýʱÖÓ CLK2 Ϊ 100KHz£¬Êä³ö ÐźŠOUT2 ×÷¶¨Ê±ÖжÏÉêÇ룬¶¨Ê±¼ä¸ôΪ 8ms£¬ÊÔ¼ÆËãÆä¼ÆÊý³õÖµ N£¿ ¡¾´ð°¸¡¿
û¼ÆÒ»¸öÊý¾¹ýµÄʱ¼äΪ 1/f, £¨±¾²½Öè 2 ·Ö£© N=t/(1/f)=t¡¤f=8ms¡¤100kHz£½8¡Á10-3¡Á100¡Á103£½800
8. Éè8253¶¨Ê±¼ÆÊýÆ÷µÄ¶Ë¿ÚµØÖ·ÎªA0H¡¢A2H¡¢A4H¡¢A6H,¼ÆÊýÆ÷1Òª²úÉú·½²¨£¬¼ÆÊý³õֵΪ3050£»¼ÆÊýÆ÷0µÄ¹¤×÷·½Ê½ÊÇ2£¬CLK0½Ó1.2MHZʱÖÓ£¬OUT0µÄÊä³öƵÂÊΪ4KHZ¡£Ð´³ö³õʼ»¯³ÌÐò¡£ ¡¾´ð°¸¡¿
MOV AL, 00100101B=25H OUT 0A6H, AL MOV AL, 03H OUT 0A0H, AL
MOV AL, 01110111BH=77H OUT 0A6H, AL
ÍòάÊÔÌâ¿âϵͳ µÚ 18 Ò³
MOV AL, 50H OUT 0A2H, AL MOV AL, 30H OUT 0A2H, AL
9. Éè8253¶¨Ê±¼ÆÊýÆ÷µÄ¶Ë¿ÚµØÖ·ÎªA0H¡¢A2H¡¢A4H¡¢A6H¡£¼ÆÊýÆ÷1£¬¹¤×÷·½Ê½0£¬¼ÆÊý³õֵΪ128£¬¶þ½øÖƼÆÊý£»¼ÆÊýÆ÷0£¬¹¤×÷·½Ê½ÊÇ1£¬¼ÆÊý³õֵΪ3000£¬BCD¼ÆÊý£»¼ÆÊýÆ÷2£¬¹¤×÷·½Ê½ÊÇ2£¬¼ÆÊý³õֵΪ02F0H¡£Ð´³ö³õʼ»¯³ÌÐò¡£ ¡¾´ð°¸¡¿
MOV AL, 01010000B=50H
OUT 0A6H,AL MOV AL, 80H OUT 0A2H,AL
MOV AL, 00100011BH=23H OUT 0A6H,AL MOV AL, 30H OUT 0A0H,AL
MOV AL, 10110100B=B4H OUT 0A6H,AL MOV AL, 0F0H OUT 0A4H,AL
36
10. ÔÚPC/XT»úÖУ¬8253ͨµÀ1¹¤×÷ÓÚ·½Ê½2£¬ÓÃËü²úÉú¼ä¸ôΪ15¦Ìs(1s=10ms=10¦Ìs)µÄ¸ºÂö³åÐźÅÓÃÓÚ¶Ô¶¯Ì¬RAMË¢ÐµĶ¨Ê±Ðźţ¬¼ÆÊýÂö³åÊäÈëΪ1.19MHZ£¬ÊÔ¼ÆËã³öӦдÈëµÄ¼ÆÊýÖµÊǶàÉÙ?
¡¾´ð°¸¡¿
119.?106TC?115?10?6 ) 18(12H) (
11. ÀûÓÃ8254µÄͨµÀ1£¬²úÉú2KHz·½²¨¡£ÉèÊäÈëʱÖÓÆµÂÊ2MHz£¬¶Ë¿ÚµØÖ·Îª90~93H¡£ £¨1£© д³ö¿ØÖÆ×Ö²¢Çó³ö¼ÆÊý³õÖµ£¨BCDÂë¼ÆÊý£© £¨2£© ±àд³õʼ»¯³ÌÐò ¡¾´ð°¸¡¿
(1) ¿ØÖÆ×Ö:01110111B ¼ÆÊý³õÖµ=2M/2K=1000 (2)MOV AL,77H OUT 93H,AL MOV AX,1000H OUT 90H,AL MOV AL,AH OUT 90H,AL
ÍòάÊÔÌâ¿âϵͳ µÚ 19 Ò³
12. 8259AµÄ¶Ë¿ÚµØÖ·Îª40HºÍ41H£¬°´ÈçÏ·½Ê½Öóõʼ»¯±à³Ì£º1Ƭ8259A£»±ßÑØ´¥·¢·½Ê½£»ÐèICW4£»ÓÃÓÚ8088/8086CPU£»ÖжÏÀàÐÍÂëΪF8H£¬F9H£¬----£¬FFH£»ÆÕͨȫǶÌ×·½Ê½£»²»Óûº³å£»·Ç×Ô¶¯ÖжϽáÊø·½Ê½£¬²¢¶Á³öIRRµÄÄÚÈݵ½AÀÛ¼ÓÆ÷¡£ ¡¾´ð°¸¡¿
MOV AL £¬13H £»(00010011B дÈëICW1) OUT 40H £¬AL MOV AL £¬0F8H £»£¨11111000B дÈëICW2£© OUT 41H £¬AL MOV AL £¬01H £»£¨00000001B дÈëICW4£© OUT 41H £¬AL
MOV AL £¬0AH £»(00001010B дÈëOCW3) OUT 40H £¬AL
IN AL £¬ 40H £»£¨¶Á³öIRRµ½AÀÛ¼ÓÆ÷£©
13. ÉèÖжÏÀàÐͺÅΪ 80 µÄÖжϴ¦Àí³ÌÐòÊ×µØÖ·Îª RINT80£¬Ð´³öÉèÖÃÏàÓ¦ÖжÏÏò Á¿µÄ³ÌÐòƬ¶Î¡£ ¡¾´ð°¸¡¿
PUSH DS £»±£»¤ DS£¬Óë POP DS ¶ÔÓ¦£¬¿ÉûÓÐ MOV DX£¬OFFSET RINT80
MOV AX£¬SEG RINT80 £»ÒÔÏÂÓï¾ä AX Ò²¿ÉÊÇÆäËûͨÓüĴæÆ÷
MOV DS£¬AX MOV AX£¬2580H
INT 21H £»ÉèÖÃÖжÏÏòÁ¿ POP DS
14. ʹÓÃ8259AµÄ¶Ë¿ÚµØÖ·Îª60HºÍ61H£¬°´ÈçÏ·½Ê½Öóõʼ»¯±à³Ì£º1Ƭ8259A£»µçƽ´¥·¢·½Ê½£»ÐèICW4£»ÓÃÓÚ8088/8086CPU£»ÖжÏÀàÐÍÂëΪF0H£¬F1H£¬----£¬F7H£»ÆÕͨȫǶÌ×·½Ê½£»²»Óûº³å£»·Ç×Ô¶¯ÖжϽáÊø·½Ê½£¬²¢¶Á³öISRµÄÄÚÈݵ½AÀÛ¼ÓÆ÷¡£ ¡¾´ð°¸¡¿
MOV AL £¬1BH £»(00011011B дÈëICW1) OUT 60H £¬AL MOV AL 0F0H £»£¨11110000B дÈëICW2£© OUT 61H £¬AL MOV AL £¬01H £»£¨00000001B дÈëICW4£© OUT 61H £¬AL
MOV AL £¬0BH £»(00001011B дÈëOCW3) OUT 60H £¬AL
IN AL £¬ 60H £» £¨¶Á³öISRµ½AÀÛ¼ÓÆ÷£©
15. ÊÔÓÃÁ÷³Ìͼ±íʾÉèÖÃ8259A¹¤×÷·½Ê½µÄ²½Öè¡£
ÍòάÊÔÌâ¿âϵͳ µÚ 20 Ò³
¹²·ÖÏí92ƪÏà¹ØÎĵµ