΢»úÔÀíÓë½Ó¿Ú¼¼Êõ£¨µÚ¶þ°æ£© Ç廪´óѧ³ö°æÉç
6.ÏÖÓÐÒ»ÊäÈëÉ豸£¬ÆäÊý¾Ý¶Ë¿ÚµÄµØַΪFFE0H£¬²¢Óڶ˿ÚFFE2HÌṩ״̬£¬µ±ÆäD0λΪ1ʱ±íÃ÷ÊäÈëÊý¾Ý×¼±¸ºÃ¡£Çë±àд²ÉÓòéѯ·½Ê½½øÐÐÊý¾Ý´«Ë͵ijÌÐò¶Î£¬ÒªÇó´Ó¸ÃÉ豸¶ÁÈ¡100B²¢ÊäÈëµ½1000H:2000H¿ªÊ¼µÄÄÚ´æÖС£
MOV DX, 0FFE2H
L1£º IN AL, DX ÕâÊÇÏ°Ìâ6µÄµÚ6ÌâµÄ´ð°¸£¬ TEST AL, 01H Õâ¸ö³ÌÐòд²»³öÀ´£¬½¨ÒéɾÕâÒ»ÎÊ JZ L1
MOV AX, 1000H MOV DS, AX MOV DX, 2000H MOV CX, 100 MOV DX, 0FFE0H L2: IN AL, DX MOV [DX], AL INC BX LOOPN L2
7£®²éѯʽ´«ËÍ·½Ê½ÓÐʲôÓÅȱµã£¿ÖжϷ½Ê½ÎªÊ²Ã´ÄÜÃÖ²¹²éѯ·½Ê½µÄȱµã£¿ ´ð£º²éѯ´«ËÍ·½Ê½CPUͨ¹ý³ÌÐò²»¶Ï²éѯÏàÓ¦É豸µÄ״̬£¬×´Ì¬²»·ûºÏÒªÇó£¬ÔòCPUÐèÒªµÈ´ý£»Ö»Óе±×´Ì¬ÐźŷûºÏÒªÇóʱ£¬CPU²ÅÄܽøÐÐÏàÓ¦µÄ²Ù×÷¡£ÖжϷ½Ê½Ìá¸ßÁ˼ÆËã»úϵͳÖÐÐÅÏ¢´¦ÀíµÄ²¢Ðкʹ¦ÀíÆ÷ЧÂÊ£¬ÖжϿÉÒÔʵÏÖͬ²½²Ù×÷£¬ÊµÊ±´¦ÀíµÈ¹¦ÄÜ¡£
8. 8088/8086ÖжÏÏòÁ¿±íµÄ×÷ÓÃÊÇʲô£¿
´ð£ºÖжÏÏòÁ¿±í½¨Á¢Á˲»Í¬µÄÖжÏÔ´ÓëÆäÏàÓ¦µÄÖжϷþÎñ³ÌÐòÊ×µØÖ·Ö®¼äµÄÁªÏµ£¬ËüÊÇCPUÔÚÏìÓ¦ÖжÏʱ¿ÉÒÔÒÀ¾ÝÖжÏÀàÐÍÂë×Ô¶¯×ªÏòÖжϷþÎñ³ÌÐò¡£
9. ʲô½ÐÖжÏÏòÁ¿£¿Ëü·ÅÔÚÄÄÀ¶ÔÓÚ1CHµÄÖжÏÏòÁ¿ÔÚÄÄÀÈç¹û1CHµÄÖжϳÌÐò´Ó5110H¿ªÊ¼£º2030H¿ªÊ¼£¬ÔòÖжÏÏòÁ¿Ó¦¸ÃÔõÑù´æ·Å£¿ ´ð£ºÖжÏÏòÁ¿¼´ÓÃÀ´ÌṩÖжÏÈë¿ÚµØÖ·µÄÒ»¸öÖ¸Õë¡£
10. 8259ÖÐIRR, IMR, ISRÈý¸ö¼Ä´æÆ÷µÄ×÷ÓÃÊÇʲô£¿
33
΢»úÔÀíÓë½Ó¿Ú¼¼Êõ£¨µÚ¶þ°æ£© Ç廪´óѧ³ö°æÉç
´ð£º¢ÅÖжÏÇëÇó¼Ä´æÆ÷IRR
8259AÓÐ8ÌõÍⲿÖжÏÇëÇóÊäÈëÐźÅÏßIR0-IR7£¬Ã¿Ò»ÌõÇëÇóÏßÉÏÓÐÒ»¸öÏàÓ¦µÄ´¥·¢Æ÷À´±£´æÇëÇóÐźţ¬ËüÃÇÐγÉÁËÖжÏÇëÇó¼Ä´æÆ÷IRR£¨Interrupt Request Register£©¡£
¢ÆÖжÏÆÁ±Î¼Ä´æÆ÷IMR
IMR(Interrupt Mask Register)ÓÃÀ´´æ·ÅÆÁ±ÎλÐÅÏ¢£¬IMRµÄÿһλ¿ÉÒÔ½ûÖ¹IRRÖжÔӦλµÄÖжÏÇëÇóÊäÈëÐźŽøÈë¡£
¢ÇÖжϷþÎñ¼Ä´æÆ÷ISR
ISR£¨Interrupt Service Register£©´æ·Åµ±Ç°ÕýÔÚ½øÐзþÎñµÄËùÓÐÖжϡ£ISRÖÐÏàӦλµÄÖÃλÊÇÔÚÖжÏÏìÓ¦µÄINTAÂö³åÆڼ䣬ÓÉÓÅÏÈȨÅоöµç·¸ù¾ÝIRRÖи÷ÇëÇóλµÄÓÅÏÈȨ¼¶±ðºÍIMRÖÐÆÁ±ÎλµÄ״̬£¬½«ÖжϵÄ×î¸ßÓÅÏȼ¶ÇëÇóλѡͨµ½ISRÖС£
11. ÀàÐͺÅΪ20HµÄÖжϷþÎñ³ÌÐòÈë¿Ú·ûºÅµØַΪINT-5£¬ÊÔд³öÖжÏÏòÁ¿µÄ×°Èë³ÌÐòƬ¶Î¡£ ´ð£ºMOV AX, 0
MOV DS, AX MOV SF, 20H*4 LEA AX, IMS MOV [IS], AX MOV AX, SEQ, INTS MOV [SI+2], AX
12. ¼òÊöDMA¿ØÖÆÆ÷ͬһ°ã½Ó¿ÚоƬµÄÇø±ð¡£
´ð£ºDMA¿ØÖÆÆ÷Äܸø³ö·ÃÎÊÄÚ´æËùÐèÒªµÄµØÖ·ÐÅÏ¢£¬²¢ÄÜ×Ô¶¯Ð޸ĵØÖ·Ö¸Õ룬ҲÄÜÉ趨ºÍÐ޸Ĵ«Ë͵Ä×Ö½ÚÊý£¬»¹ÄÜÏò´æ´¢Æ÷ºÍÍâÉè·¢³öÏàÓ¦µÄ¶Á/д¿ØÖÆÐźš£ÔÚDMA´«ËͽáÊøºó£¬ËüÄÜÊÍ·Å×ÜÏߣ¬°Ñ¶Ô×ÜÏߵĿØÖÆȨÓÖ½»»¹¸øCPU¡£ÓÃDMA·½Ê½´«ÊäÊý¾Ýʱ£¬²»ÐèÒª½øÐб£»¤ºÍ»Ö¸´¶Ïµã¼°ÏÖ³¡Ö®ÀàµÄ¶îÍâ²Ù×÷¡£
13. ¼òÊö8237A3ÖÖ»ù±¾´«ËÍÀàÐ͵ÄÌص㡣
34
΢»úÔÀíÓë½Ó¿Ú¼¼Êõ£¨µÚ¶þ°æ£© Ç廪´óѧ³ö°æÉç
´ð£ºµ¥´Î´«ËÍ·½Ê½£ºÃ¿´ÎDMA²Ù×÷Ö»´«ËÍ1B£¬È»ºó¾Í×Ô¶¯°Ñ×ÜÏß¿ØÖÆȨ½»¸øCPU,Èô»¹ÓÐͨµÀÇëÇóÐźţ¬ÔòDMACÔòÔÙÖØÐÂÏòCPU·¢³ö×ÜÏßÇëÇ󣬻ñµÃ¿ØÖÆȨºóÔð´«ËÍÏÂÒ»BÊý¾Ý¡£
Êý¾Ý¿é´«ËÍ£ºÔÚ½øÈëDMA²Ù×÷ºó£¬¾ÍÁ¬Ðø´«ËÍÊý¾Ý£¬Ö±µ½Õû¿éÊý¾ÝÈ«²¿´«ËÍÍê±Ï£¬ÔÚ×Ö½ÚÊý¼õΪ0»òÍâ½çÊäÈëÖÕÖ¹ÐźÅʱ£¬²Å»á½«×ÜÏß¿ØÖÆȨ½»»¹¸øCPU¡£
ÇëÇó´«ËÍ£ºÕâÖÖ·½Ê½Ò²¿ÉÒÔÓÃÓڳɿéÊý¾Ý´«Êä¡£ÕâÖÖ·½Ê½ÊÊÓÃÓÚ×¼±¸ºÃ´«ËÍÊý¾Ýʱ£¬·¢³öͨµÀÇëÇó£»ÈôÊý¾Ýδ׼±¸ºÃʱ£¬¾ÍʹͨµÀÇëÇóÎÞЧ£¬½«×ÜÏß¿ØÖÆȨ½»»¹¸øCPU¡£
35
΢»úÔÀíÓë½Ó¿Ú¼¼Êõ£¨µÚ¶þ°æ£© Ç廪´óѧ³ö°æÉç
Ï°Ìâ7
1. ²¢ÐнӿÚÓкÎÌص㣿ÆäÓ¦Óó¡ºÏÈçºÎ£¿
´ð£ºÒ»¸ö²¢Ðнӿڰüº¬×´Ì¬ÐÅÏ¢£¬¿ØÖÆÐÅÏ¢£¬ºÍÊý¾ÝÐÅÏ¢£¬ÕâЩÐÅÏ¢·Ö±ð´æ·ÅÔÚ
״̬¼Ä´æÆ÷£¬¿ØÖƼĴæÆ÷ºÍÊý¾Ý»º³å»º³å¼Ä´æÆ÷¡£´Ó²¢Ðнӿڵĵ緽ṹÀ´¿´£¬ËüÓÐÓ²Á¬½ÓÏ߽ӿںͿɱà³Ì½Ó¿ÚÖ®·Ö¡£Ó²Á¬½ÓÏß½Ó¿Ú²»ÄÜÓÃÈí¼þ±à³Ì·½·¨¼ÓÒԸı䣬¶ø¿É±à³Ì½Ó¿Ú¿ÉÓÃÈí¼þ±à³Ì·½Ê½¼ÓÒԸı䡣ÆäÓ¦ÓÃÓÚ´òÓ¡»ú£¬IEEE488½Ó¿Ú£¬¿ª¹ØÁ¿½Ó¿Ú£¬¿ØÖÆÉ豸½Ó¿ÚµÈ¡£
2. ¿É±à³Ì²¢ÐÐоƬ8255ÓÐÄļ¸ÖÖ¹¤×÷·½Ê½£¿Æä²î±ðºÎÔÚ£¿ËûÃÇÔÚΣ»úϵͳÖеÄÁ¬½Ó·½·¨ÓÐʲô²»Í¬£¿
´ð£º8255AÓÐ3ÖÖ¹¤×÷·½Ê½£º³ÆΪ·½Ê½0£¬·½Ê½1ºÍ·½Ê½2¡£
ÆäÖÐA¿Ú¿ÉÒÔ¹¤×÷ÔÚ3ÖÖ·½Ê½ÖеÄÈÎÒ»ÖÖ£»B¿ÚÖ»Äܹ¤×÷ÔÚ·½Ê½0ºÍ·½Ê½1£»C¿Úͨ³£×÷Ϊ¿ØÖÆÐźÅʹÓã¬ÅäºÏA¿ÚºÍB¿ÚµÄ¹¤×÷¡£
¢Ù·½Ê½0£º»ù±¾µÄÊäÈëÊä³ö·½Ê½
·½Ê½0Ö®ËùÒÔ±»³ÆΪ»ù±¾µÄÊäÈëÊä³ö·½Ê½£¬ÊÇÒòΪÔÚÕâÖÖ·½Ê½Ï£¬A¿Ú¡¢B¿ÚºÍC¿Ú(C¿Ú·ÖΪ2¸ö4λʹÓÃ)¶¼¿ÉÌṩ¼òµ¥µÄÊäÈëºÍÊä³ö²Ù×÷£¬¶Ôÿ¸ö¿Ú²»ÐèÒª¹Ì¶¨µÄÓ¦´ðʽÁªÂçÐźš£
¹¤×÷ÔÚ·½Ê½0Ï£¬ÔÚ³ÌÐòÖпÉÖ±½ÓʹÓÃÊäÈëÖ¸Áî(IN)ºÍÊä³ö(OUT)Ö¸Áî¶Ô¸÷¿Ú½øÐжÁд¡£·½Ê½0µÄ»ù±¾¶¨ÒåÈçÏ£º2¸ö8λµÄ¿ÚºÍ2¸ö4λµÄ¿Ú¡£ÈκÎÒ»¸ö¿Ú¶¼¿ÉÒÔ×÷ΪÊäÈë»òÊä³ö¡£Êä³ö¿ÉÒÔ±»Ëø´æ¡£ÊäÈë²»ÄÜËø´æ¡£
·½Ê½0Ò»°ãÓÃÓÚÎÞÌõ¼þ´«Ë͵ij¡ºÏ£¬²»ÐèÒªÓ¦´ðʽÁªÂçÐźţ¬ÍâÉè×ÜÊÇ´¦ÓÚ×¼±¸ºÃµÄ״̬¡£Ò²¿ÉÒÔÓÃ×÷²éѯʽ´«ËÍ£¬²éѯʽ´«ËÍʱ£¬ÐèÒªÓÐÓ¦´ðÐźš£¿ÉÒÔ½«A¿Ú¡¢B¿Ú×÷ΪÊý¾Ý¿ÚʹÓᣰÑC¿Ú·ÖΪ2²¿·Ö£¬ÆäÖÐ4λ¹æ¶¨ÎªÊä³ö£¬ÓÃÀ´Êä³öһЩ¿ØÖÆÐÅÏ¢£»ÁíÍâ4λ¹æ¶¨ÎªÊäÈ룬ÓÃÀ´¶ÁÈëÍâÉèµÄ״̬¡£ÀûÓÃC¿ÚÅäºÏA¿ÚºÍB¿ÚÍê³É²éѯʽµÄI/O²Ù×÷¡£
¢Ú·½Ê½1£ºÑ¡Í¨ÊäÈë/Êä³ö·½Ê½
ÔÚÕâÖÖ·½Ê½Ï£¬µ±A¿ÚºÍB¿Ú½øÐÐÊäÈëÊä³öʱ£¬±ØÐëÀûÓÃC¿ÚÌṩµÄѡͨºÍÓ¦´ðÐźš£¶øÇÒÕâЩÐźÅÓëC¿ÚÖеÄijЩλ֮¼äÓÐ׏̶¨µÄ¶ÔÓ¦¹Øϵ£¬ÕâÖÖ¹ØϵÊÇÓ²¼þ±¾Éí¾ö¶¨µÄ²»ÊÇÈí¼þ¿ÉÒԸıäµÄ¡£ÓÉÓÚ¹¤×÷ÔÚ·½Ê½lʱ£¬ÒªÓÉC¿ÚÖеĹ̶¨Î»À´×÷ΪѡͨºÍÓ¦´ðµÈ¿ØÖÆÐźţ¬Òò´Ë³Æ·½Ê½1ΪѡͨµÄÊäÈë/Êä³ö·½Ê½¡£
36