΢»úÔ­ÀíÓë½Ó¿Ú¼¼Êõ_¥˳Ìì°æ_¿ÎºóÌâ´ð°¸ ÏÂÔØ±¾ÎÄ

A9A8IORIOWA7A6A5A4

ͼ7.1

11. ÔÚIBM PCϵͳÖУ¬Èç¹ûAENÐźÅδ²Î¼ÓI/O¶Ë¿ÚµØÖ·ÒëÂ룬»á³öÏÖʲôÎÊÌ⣿ÔÚûÓÐDMA

»ú¹¹µÄÆäËü΢»úϵͳÖУ¬ÊÇ·ñ´æÔÚͬÑùµÄÎÊÌ⣿

´ð£ºÔÚIBM PCϵͳÖУ¬Èç¹ûAENÐźÅδ²Î¼ÓI/O¶Ë¿ÚµØÖ·ÒëÂ룬Ôò»á³öÏÖDMA»ú¹¹ÓëI/O¶Ë¿Ú¾ºÕù×ÜÏßµÄÎÊÌâ¡£ÔÚûÓÐDMA»ú¹¹µÄÆäËû΢»úϵͳÖУ¬²»»á´æÔÚͬÑùµÄÎÊÌâ¡£

12. ÔÚ8088 CPU ¹¤×÷ÔÚ×î´ó·½Ê½×é³ÉµÄ΢»úϵͳÖУ¬ÀûÓÃ74LS244Éè¼ÆÒ»¸öÊäÈë¶Ë¿Ú£¬·ÖÅ䏸¸Ã¶Ë

¿ÚµÄµØÖ·Îª04E5H£¬ÊÔ»­³öÁ¬½Óͼ¡£

½â£ºÁ¬½ÓͼÈçͼ7.2Ëùʾ¡£

ƬѡÐźÅ

ͼ7.2

13. ÔÚÉÏÌâµÄ»ù´¡ÉÏ£¬ÀûÓÃ74LS374Éè¼ÆÒ»¸öÊä³ö¶Ë¿Ú£¬·ÖÅ䏸¸Ã¶Ë¿ÚµÄµØÖ·ÎªE504H£¬ÊÔ»­³öÁ¬

½Óͼ¡£ÈôÉÏÌâÖÐÊäÈë¶Ë¿ÚµÄbit3¡¢ bit4ºÍbit7 ͬʱΪ1£¬½«ÄÚ´æBUFFER¿ªÊ¼µÄÁ¬Ðø10¸ö×Ö½Úµ¥ÔªµÄÊý¾ÝÓÉE504H¶Ë¿ÚÊä³ö£»Èô²»Âú×ãÌõ¼þ£¬ÔòµÈ´ý¡£ÊÔ±àд³ÌÐò¡£ ½â£ºÁ¬½ÓͼÈçͼ7.3Ëùʾ¡£

ͼ7.3

³ÌÐòÈçÏ£º MOV CX ,10

LEA SI,BUFFER MOV DX,04E5H WAIT1£ºIN AL,DX AND AL,98H CMP AL,98H JNZ WAIT1 MOV DX,0E504H L1£ºMOV AL,[SI] OUT DX,AL INC SI LOOP L1

HLT

14£®ÔÚ8086×î´óϵͳÖУ¬·Ö±ðÀûÓÃ2Ƭ74LS244ºÍ74LS273Éè¼Æ16λÊäÈëºÍÊä³ö½Ó¿Ú£¬ÆäÆðʼ¶Ë¿ÚµØÖ·Îª504H¡¢506H£¬»­³öÓ²¼þÁ¬½Óͼ

½â£ºÓ²¼þÁ¬½ÓͼÈçͼ7.4Ëùʾ¡£

ͼ7.4 Ó²¼þÁ¬½Óͼ

9ÕÂϰÌâ

1.

ÏÂÁеØÖ·ÄÄЩÄܹ»·ÖÅ䏸8253/8254µÄ¼ÆÊýÆ÷0£¿ÎªÊ²Ã´£¿£¨23H¡¢54H¡¢97H¡¢51H¡¢FCH¡¢59H£© ½â£ºÒòΪÒѾ­Ô¼¶¨²ÉÓÃA2,A1×÷Ϊ8253µÄÄÚ²¿µØÖ·Ïߣ¬¶øÇÒ¼ÆÊýÆ÷0µÄµØÖ·Îª00£¬ËùÒÔÔÚÌâÖÐËù¸øµÄµØÖ·ÖÐÖ»ÓÐ51H,59HµÄA2ºÍA1ͬʱΪ0£¬¼´£ºA2A1=00. 2.

Èç¹û¼ÆÊýÆ÷0É趨Ϊ·½Ê½0£¬GATE0£½1£¬CLK0£½1MHz£¬Ê±³£ÊýΪN£½1000£¬Çë»­³öOUT0µÄ²¨ÐΡ£Èç¹û¼ÆÊýÆ÷1É趨Ϊ·½Ê½1£¬ÆäËü²ÎÊýÓë¼ÆÊýÆ÷0Ïàͬ£¬»­³öOUT1µÄ²¨ÐΡ£

3.

±à³ÌʵÏÖ£º½«8253¼ÆÊýÆ÷0ÉèÖóɷ½Ê½4£¬²¢ÖÃʱ³£Êý10000£¬È»ºó´¦Óڵȴý״̬£¬Ö±µ½CEµÄÄÚÈÝ¡Ü1000ºóÔÙÏòÏÂÖ´ÐС£ ½â£º

MOV DX,COUNTD ;дÈë¼ÆÊýÆ÷0µÄ·½Ê½¿ØÖÆ×Ö MOV AL,00111000B OUT DX,AL

MOV DX,COUNTA ;ÉèÖüÆÊýÆ÷0µÄ³£Êý MOV AX,10000 OUT DX,AL XCHG AL,AH OUT DX,AL

L1: MOV DX,COUNTD ;дÈë¼ÆÊýÆ÷0µÄ·½Ê½¿ØÖÆ×Ö MOV AL,0H OUT DX,AL

MOV DX,COUNTA £»¶ÁÈëCE IN AL,DX MOV AH,AL IN AL,DX XCHG AL,AH

CMP AX,1000 £»ÅбðCEµ±Ç°´óС JA L1

4.

ÀûÓÃ8253¿ÉÒÔʵÏÖÈ·¶¨Ê±¼äµÄÑÓ³Ù£¬±à³ÌʵÏÖÑÓʱ10ÃëµÄ³ÌÐò¶Î£¨Éè¿ÉÒÔʹÓõĻù׼ʱÖÓΪ1MHz£©¡£ ½â£º±¾ÌâʹÓüÆÊýÆ÷0ºÍ¼ÆÊýÆ÷1£¬²¢ÇÒ¼ÆÊýÆ÷0µÄÊä³öOUT0×÷Ϊ¼ÆÊýÆ÷1µÄʱÖÓÊäÈëCLK1. ³ÌÐòÈçÏ£º MOV MOV MOV MOV

DX,COUNTD AL,00110100B DX,COUNTA

AX,10000 ;д¼ÆÊýÆ÷0ʱ³£Êý£¬·ÖƵµÃµ½100HzʱÖÓÆµÂÊ

;д¼ÆÊýÆ÷0·½Ê½¿ØÖÆ×Ö

OUT DX,AL

OUT DX,AL