ʵÑéÒ»ÎÞÏßͨÐÅϵͳ£¨Í¼Ïñ´«Ê䣩ʵÑé
Ò»¡¢ÊµÑéÄ¿µÄ
1¡¢ÕÆÎÕÎÞÏßͨÐÅ£¨Í¼Ïñ´«Ê䣩ÊÕ·¢ÏµÍ³µÄ¹¤×÷ÔÀí£»
2¡¢Á˽â¸÷µç·ģ¿éÔÚϵͳÖеÄ×÷Óá£
¶þ¡¢ÊµÑéÄÚÈÝ
a) ²âÊÔ·¢Éä»úµÄ¹¤×÷״̬£»
b) ²âÊÔ½ÓÊÕ»úµÄ¹¤×÷״̬£»
c) ²âÊÔͼÏñ´«ÊäϵͳµÄ¹¤×÷״̬£»
d) ͨ¹ý¸Ä±äϵͳÄÚ²¿Á¬½Ó·½Ê½Ôì³É¶ÔͼÏñÐźÅÖÊÁ¿µÄÓ°ÏìÀ´Á˽â¸÷µç·ģ¿éµÄ×÷Óá£
Èý¡¢ÎÞÏßͼÏñ´«ÊäϵͳµÄ»ù±¾¹¤×÷ÔÀí
·¢ÉäÉ豸ºÍ½ÓÊÕÉ豸ÊÇͨÐÅÉ豸µÄÖØÒª×é³É²¿·Ö¡£Æä×÷ÓÃÊǽ«Òѵ÷²¨¾¹ýijЩ´¦Àí£¨Èç·Å´ó¡¢±äƵ£©Ö®ºó£¬Ë͸øÌìÀ¡ÏµÍ³£¬·¢Ïò¶Ô·½»òת·¢ÖмÌÕ¾£»½ÓÊÕϵͳÔÙ½«¿Õ¼ä´«²¥µÄÐźÅͨ¹ýÌìÏß½ÓÊÕ½øÀ´£¬¾¹ýijЩ´¦Àí£¨Èç·Å´ó¡¢±äƵ£©Ö®ºó£¬Ë͵½ºó¼¶½øÐнâµ÷¡¢±àÂëµÈ¡£»¹Ô³ö»ù´øÐÅÏ¢Ë͸øÓû§Öնˡ£ÎªÁËʹ·¢ÉäϵͳºÍ½ÓÊÕϵͳͬʱ¹¤×÷£¬²¢ÇÒÁ˽â¸÷µç·ģ¿éÔÚϵͳÖеÄ×÷Óã¬Í¨¹ýʵÑéÏäÖеÄÌìÏßÄ£¿éºÍÉãÏñÍ·¼°ÏÔʾÆ÷£¬Ê¹µÃ·¢ÉäºÍ½ÓÊÕϵͳ×Ô±Õ»·£¬Í¨¹ýͼÏñÖÊÁ¿À´Ñé֤ͨÐÅϵͳµÄ¹¤×÷״̬£¬¼°¸÷¸öµç·ģ¿éµÄ×÷ÓúÍÁ¬½Ó±ä»¯Ê±¶ÔͨÐÅ»òͼÏñÖÊÁ¿µÄÓ°Ïì¡£
ÒÔÔÀí¿òͼΪÀý£¬¼òµ¥½éÉÜһϸ÷²¿·ÖµÄ¹¦ÄÜÓë×÷Óá£ÉãÏñÍ·²É¼¯µÄÐźÅËÍÈëµ÷ÖÆÆ÷½øƵÂʵ÷ÖÆ£¬ÔÙ¾¹ýÒ»´Î±äƵºó¡¢Â˲¨£¨ÂËÈ¥±äƵ²úÉúµÄг²¨¡¢ÔÓ²¨µÈ£©¡¢·Å´ó¡¢Í¨¹ýÌìÏß·¢Éä³öÈ¥¡£¾¹ý¿Õ¼ä´«²¥£¬½ÓÊÕÌìÏß½«ÐźŽÓÊÕ½øÀ´£¬ÔÙ¾¹ýµÍÔëÉù·Å´ó¡¢Â˲¨£¨ÂËÈ¥¿Õ¼äͬʱ½ÓÊÕµ½µÄÆäËüÔÓ²¨£©¡¢Ï±äƵµ½480MHz£¬ÔÙ¾ÖÐƵÂ˲¨£¬ÂËȥг²¨ºÍÔÓ²¨¡¢¾ÊÓƵ½âµ÷Æ÷£¬½âµ÷ºóÊä³öµ½ÏÔʾÆ÷»¹ÔͼÏñÐźš£
ËÄ¡¢ÊµÑéÒÇÆ÷
ÐźÅÔ´¡¢ÆµÆ×·ÖÎöÒǵȡ£
Î壮²âÊÔ·½·¨ÓëʵÑé²½Öè
£¨Ò»£© ·¢Éä»ú²âÊÔ
ͼ1ÔÀí¿òͼ
»ù´øÐźÅËÍÈëµ÷ÖÆÆ÷£¬½øÐе÷ÖÆ(µ÷·ù»òµ÷ƵµÈµ÷ÖÆ),µ÷Öƺó¸ù¾ÝƵÂÊÒªÇó½øÐÐÉϱäƵ,±ä»»µ½ËùÐè΢²¨ÆµÂÊ,²¢Ó¦ÓÐÒ»¶¨´ø¿í,È»ºó¹¦ÂÊ·Å´ó£¬Í¨¹ýÌìÏß·¢Éä»òÆäËü·½Ê½´«²¥¡£Ã¿´Î±äƵºó,»áÏàÓ¦²úÉúг²¨ºÍÔÓ²¨£¬Ò»°ã±äƵºó¼ÓÏìӦƵ¶ÎµÄÂ˲¨Æ÷,ÒÔÂ˳ýг²¨ºÍÔÓ²¨¡£±£Ö¤·¢ÉäÐźŵÄÖÊÁ¿»òƵÂÊÎȶ¨¶È¡£ÁíÍâµ÷ÖÆÆ÷»ò±äƵÆ÷±¾ÕñÐźŵÄÎȶ¨¶ÈÒ²Ö±½ÓÓ°Ïì·¢ÉäÐźŵĺûµ£¬Òò¶ø£¬¶Ô±¾ÕñÐźŵÄÖÊÁ¿Ò²ÓÐÑϸñµÄÒªÇó¡£ÆµÂÊÎȶ¨¶ÈÊÇÖ¸£ºÔڹ涨µÄʱ¼ä¼ä¸ôÄÚ£¬ÆµÂÊ׼ȷ¶È±ä»¯µÄ×î´óÖµ¡£±äƵÆ÷ËùÐèµÄ±¾ÕñÔ´¸ù¾ÝÐèÒª¿ÉÑ¡ÓÃVCO¡¢DRO¡¢PLLµÈ¡£
a) ²âÊÔ·¢Éäϵͳ¹¦ÂÊ£º°´ÕÕͼ2Á¬½Óµç·¡£
ͼ 2 ·¢Éä»ú¿òͼ
ÉèÐźÅԴƵÂÊΪ480MHz£¬ÐźÅÔ´Êä³ö¹¦ÂÊΪ0dBm¡£²âÊÔ·¢Éä»úÊä³ö¹¦ÂÊ£»ÔÙÖð½¥Ôö¼ÓÐźÅÊäÈ빦ÂÊ£¬¹Û²ì·¢Éä»úÊä³ö¹¦ÂÊÖ±ÖÁ´ïµ½±¥ºÍ¡£
b) ²âÊÔ·¢ÉäƵÂÊÎȶ¨¶È:ÒÔÉÏÁ¬½Ó²»±ä£¬É趨ÐźÅԴƵÂÊΪ480MHz£¬ÐźÅÔ´Êä³ö¹¦ÂÊÈÔΪ0dBm¡£Í¨¹ýƵÆ×·ÖÎöÒǹ۲ì2.2GHzÉäƵÊä³öÐźŵÄÏàλÔëÉù,·Ö±ðÉèÖÃƵÆ×·ÖÎöÒÇSPANΪ1MHz ºÍ100KHz£¬¿É·Ö±ð¹Û²ìµ½Æ«ÀëÔØƵ100KHzºÍ10KHzµÄµ¥±ß´øÏàλÔëÉùÆ×Ãܶȣ¬ÅжϷ¢ÉäÐźŵĶÌÆÚƵÂÊÎȶ¨¶È¡£
ͼ3 ²âÊÔ·½¿òͼ
c)²âÊÔ·¢ÉäÐźŵĴøÍâг²¨¡¢ÔÓ²¨ÒÖÖÆ¡£ÒÔÉÏÁ¬½Ó²»±ä£¬É趨ÐźÅԴƵÂÊΪ480MHz£¬ÐźÅÔ´Êä³ö¹¦ÂÊÈÔΪ0dBm£¬Í¨¹ýƵÆ×·ÖÎöÒǹ۲ì2.2GHzÉäƵÊä³öÐźŵÄƵÆ×,ÉèÖÃƵÆ×·ÖÎöÒÇSPANΪ5GHz£¬´Ëʱ¹Û²ìƵÆ×Êä³öµÄг²¨¡¢ÔÓ²¨µÈ£¬ÓëÖ÷ƵÏà±È½Ï£¬Æä²îֵΪÒÖÖƶȡ£
£¨¶þ£© ½ÓÊÕ»ú²âÊÔ
½ÓÊÕϵͳ»ò½ÓÊÕÉ豸ÊÇͨÐÅÉ豸µÄÖØÒª×é³É²¿·Ö£¬Æä×÷ÓÃÊÇ£ºÍ¨¹ýÌìÏß½ÓÊÕͨÐŶԷ½»ò¾ÖмÌת·¢µÄÉäƵÐźţ¬¾¹ýijЩ´¦Àí£¨Èç·Å´ó¡¢±äƵ£©Ö®ºó£¬Ë͵½ºó¼¶½øÐнâµ÷¡¢±àÂëµÈ£¬»¹Ô³ö»ù´øÐÅÏ¢Ë͸øÓû§Öնˡ£
ÏÖ´úÎÞÏß½ÓÊÕϵͳһ°ã¶¼²ÉÓó¬Íâ²îʽ½á¹¹¡£³¬Íâ²îʽ½á¹¹µÄÖ÷ÒªÌØÕ÷ÊÇÔڵ緹¹³ÉÉϾßÓбäƵÆ÷ºÍÖÐƵ·Å´óÆ÷¡£
ͼ4½ÓÊÕ»ú·½¿òͼ
a)²âÊÔ½ÓÊÕϵͳÔöÒ棺°´ÕÕͼ4Á¬½Óµç·£¬ÔÚµÍÔëÉù·Å´óÆ÷ÊäÈë¶ËÁ¬½ÓÐźÅÔ´£¬ÖÐƵ·Å´óÆ÷Êä³ö¶Ë½ÓƵÆ×·ÖÎöÒÇ¡£É趨ÐźÅԴƵÂÊΪ2.2GHz£»Êä³ö¹¦ÂÊΪ-60dBm¡£ÖÐƵ·Å´óÆ÷Êä³öƵÂÊΪ480MHz£¬´ËʱƵÆ×·ÖÎöÒÇÏÔʾ·ù¶ÈÓë-60dBm²îֵΪ½ÓÊÕÁ´Â·×ÜÔöÒæ¡£
b)²âÊÔ½ÓÊÕ»úÁéÃô¶È£ºÍ¼4Á¬½Ó²»±ä¡£¸Ä±äÐźÅÔ´Êä³ö¹¦ÂÊ´óС£¬¿É´Ó-60dBm¼ÌÐøÍùС±ä»¯£¬ÔÚƵÆ×·ÖÎöÒÇÉϹ۲ìÊä³öÐźÅƵÆס£µ±ÆµÆ×·ÖÎöÒÇRBWÉèΪ10MHz£¬ÆµÆ×·ÖÎöÒÇÏÔʾµÄƵÆ×ÓëƵÆ×·ÖÎöÒÇ»ùµ×ÔëÉù²îֵΪ10dBʱ£¬ÕâʱÐźÅÔ´Êä³ö¹¦ÂÊ·ù¶ÈΪ½ÓÊÕ»ú×îС½ÓÊÕÁéÃô¶È¡£
c)²âÊÔ½ÓÊÕ»ú¶¯Ì¬·¶Î§£ºÍ¼4Á¬½Ó²»±ä¡£É趨ÐźÅÔ´Êä³ö¹¦ÂÊΪ½ÓÊÕ»ú×îС½ÓÊÕÁéÃô¶È£¬¸Ä±äÐźÅÔ´Êä³ö¹¦ÂÊ´óС£¬²»¶ÏÔö¼ÓÐźÅÔ´Êä³ö¹¦ÂÊ£¬¹Û²ìÊä³ö·ù¶È±ä»¯¡£µ±ÊäÈë·ù¶ÈÔö¼Ó£¬Êä³ö·ù¶ÈÒ²Ôö¼Ó£¬µ«Ôö¼ÓÁ¿Ð¡ÓÚ1 dBʱ£¬Îª½ÓÊÕ»úÏßÐÔ¶¯Ì¬·¶Î§£»µ±ÊäÈë·ù¶È±ä»¯£¬Êä³ö·ù¶È²»±ä»¯Ê±£¬Îª½ÓÊÕ»ú¶¯Ì¬·¶Î§¡£
d)²âÊÔ½ÓÊÕ»úÔëÉùϵÊý:ÔÚ΢²¨Â˲¨Æ÷ÊäÈë¶ËÁ¬½ÓÔëÉùϵÊý²âÊÔÒǵÄÔëÉùÔ´,ÊÓƵ·Å´óÆ÷Êä³ö¶Ë½ÓÔëÉùϵÊý²âÊÔÒÇ¡£¼ûͼ5¡£Ó¦°´ÕÕÒÇÆ÷ʹÓÃ˵Ã÷½øÐб»²âϵͳµÄ²âÊÔ¡£
ͼ5 ½ÓÊÕ»úÔëÉù²âÊÔ
£¨Èý£© ϵͳ²âÊÔ
·¢Éä»úºÍ½ÓÊÕ»ú½á¹¹²»±äµÄÇé¿öÏ£¬½ÓÈë΢²¨·¢Éä¡¢½ÓÊÕÌìÏߣ¬ÔÙÍâ¼ÓÉãÏñÍ·ºÍÏÔʾÆ÷£¬¼´½«·¢ÉäºÍ½ÓÊÕϵͳͨ¹ýÌìÏß¡¢ÉãÏñÍ·¡¢ÏÔʾÆ÷×Ô±Õ»·À´²âÊÔÊÕ/·¢ÏµÍ³µÄ¹¤×÷״̬¡£
a)´«ÊäͼÏñʵÑ顣ͨ¹ýÉãÏñÍ·ºÍÏÔʾÆ÷ÑéÖ¤½ÓÊպͷ¢ÉäϵͳµÄ¹¤×÷״̬¡£·¢ÉäϵͳµÄË¥¼õÆ÷µÄÊäÈë¶Ë½ÓÉãÏñÍ·£»½ÓÊÕϵͳÖÐƵ·Å´óÆ÷Êä³ö¶Ë½Ó½âµ÷Æ÷ÊäÈë¶Ë£¬½âµ÷Æ÷Êä³ö¶Ë½ÓÏÔʾÆ÷¡£Á¬½ÓºÃºó£¬¸ø¸÷µç·ģ¿é¼°ÏÔʾÆ÷¡¢ÉãÏñÍ·¼Óµç£¬Á½ÌìÏß¾àÀë40¹«·Ö×óÓÒ£¬²¢ÇÒÁ½Ö»ÌìÏߵļ«»¯·½Ê½ÒªÒ»Ö¡£ÕâʱÏÔʾÆ÷ÉÏÓ¦ÏÔʾÓÐÉãÏñÍ·Éãµ½µÄͼÏñ¡£
b)ÊÕ·¢ÌìÏßÏà¶ÔλÖ÷¢Éú±ä»¯£¬¼«»¯×´Ì¬·¢Éú±ä»¯£¬¹Û²ìͼÏñÖÊÁ¿µÄºÃ»µ¡£Í¨¹ýÕâ¸öʵÑé¿ÉÒԷdz£Ö±¹ÛµØÁ˽ⷢÉäºÍ½ÓÊյŤ×÷״̬¡£
c)µ÷Õû·¢Éä»úµÄϵͳ²ÎÊýÈç½µµÍÊä³ö¹¦Âʵȣ¬¹Û²ìͼÏñÖÊÁ¿µÄ±ä»¯£»
d)µ÷Õû½ÓÊÕ»úµÄϵͳ²ÎÊýÈçÔÚµÍÔëÉùµç·ǰ¼ÓË¥¼õÆ÷£¬¹Û²ìͼÏñÖÊÁ¿µÄ±ä»¯£¬¡£
Áù¡¢ÊµÑé½á¹û
1. ·¢Éä»ú²âÊÔ
(1) ÊäÈëÐźţº480MHz£¬0dBm
(2) Êä³öÐźţº0.6dBm
(3) ²âÊÔÊý¾Ý
ͼÏñ£º
£¨4£©ÏàλÔëÉù
¢Ù100KHzµÄʱºò
N-A=38dB£¬C=2.5dB£¬B=30KHz
N0=N-A+C-10lgB=38+2.5-10lg(3¡Á104)=-4.27dB
¢Ú1MHzµÄʱºò
N-A=-40dB£¬C=2.5dB£¬B=300KHz
N0=N-A+C-10lgB=-40+2.5-10lg(3¡Á105)=-92.27dB
£¨5£©ÖÐÑëÂ˲¨Æ÷£¬Ë¥¼õΪ2dB
ÉϱäƵÆ÷ËðºÄ6dB
ÉäƵ´øͨÂ˲¨Æ÷5~7dBË¥¼õ
ÉäƵ·Å´óÆ÷15~16dBµÝÔö
ÇóÕû¸öµç·µÄÔöÒæ
-2-6-5+16=3dB
2. ϵͳ²âÊÔ
EÃæ·¢É䣬½ÓÊÕEÃæÇåÎú£¬HÃæÄ£ºý¡£
Æß¡¢Ë¼¿¼Ìâ
1¡¢ÏêϸÃèÊöͼÏñ´«ÊäϵͳÖз¢Éä»úµÄ¸÷¸ö×é³É²¿·Ö¼°Æ书ÄÜ¡£
´ð£ºÉãÏñÍ·²É¼¯µÄÐźÅËÍÈëµ÷ÖÆÆ÷½øÐÐƵÂʵ÷ÖÆ£¬¾¹ýÒ»´Î±äƵºó£¬Â˲¨£¬·Å´ó£¬Í¨¹ýÌìÏß·¢Éä³öÈ¥¡£¾¹ý¿Õ¼ä´«²¥½ÓÊÜÌìÏß½«ÐźŽÓÊܽøÀ´£¬¾¹ýµÍÔë·Å´ó£¬Â˲¨£¬Ï±äƵµ½480MHz£¬ÔÙ¾ÖÐƵÂ˲¨£¬ÂËȥг²¨ºÍÔÓ²¨£¬¾ÊÓƵ½âµ÷Æ÷½âµ÷Êä³öµ½ÏÔʾÆ÷»¹ÔͼÏñÐźš£
2¡¢¸Ã·¢Éä»úµÄÊäÈ빦ÂÊ¡¢½ÓÊÕ»úÔöÒæÓë½ÓÊÕ»úÁéÃô¶È£¿
3¡¢ÈôÔÚ½ÓÊÕ»úµÄµÍÔëÉù·Å´óÆ÷Ç°¼ÓÈëË¥¼õÆ÷£¬»áÃ÷ÏԸıäͼÏñÖÊÁ¿£¬¶øÔÚÖÐƵ·Å´óÆ÷Ç°¼ÓÈëË¥¼õÆ÷£¬Í¼ÏñÖÊÁ¿±ä²î³Ì¶ÈÓÐÏÞ£¬ÎªÊ²Ã´£¿
´ð£ºµÍÔëÉù·Å´óÆ÷λÓÚ·Å´óÁ´Â·ÊäÈë¶Ë£¬Õë¶Ô¸ø¶¨µÄÔöÒæÒªÇó£¬ÒýÈ뾡¿ÉÄÜСµÄÄÚ²¿ÔëÉù£¬²¢ÔÚÊä³ö¶Ë»ñµÃ×î´ó¿ÉÄܵÄÐÅÔë±È¶øÉè¼ÆµÄ·Å´óÆ÷¡£¶ø¼õСÆäÇ°¶ËÊäÈ빦ÂÊ»á³öÏÖÃÅÏÞЧӦʹµÃÐźű»ÑÍûÔÚÔëÉùÖУ¬ËùÒÔ¶ÔͼÏñÖÊÁ¿Ó°Ïì½Ï´ó¡£¶øÖÐƵ·Å´óÆ÷Ç°µÄͼÏñÐźÅÒѾ¾¹ýÁËÉäƵ¡¢ÖÐƵÁ½¼¶Â˲¨£¬Õâʱ¼ÓÈëË¥¼õÆ÷Ö»ÊǶÔÆ书ÂÊ·¢Éú¸Ä±ä£¬ÆäÖÊÁ¿±ä²î³Ì¶ÈÓÐÏÞ¡£
4¡¢ËµÃ÷ÓÐÄÄЩÄÚ²¿ÒòËØ»áÓ°Ï챾ϵͳµÄͼÏñÖÊÁ¿£¿
´ð£º1£©ÄÚ²¿µç·´æÔÚ×Å´«ÊäËðºÄ¡£
2£©¸÷¶Ë¿Ú֮ǰ·ÇÀíÏëÆ¥Å䣬¶ÔÐźÅÓÐË¥¼õºÍһЩ²»¿ÉÔ¤Æڵĵþ¼Ó¡£
3£©Â˲¨Æ÷·ÇÀíÏ룬ÆäÌØÐÔ½«¶ÔÐźŲúÉúÓ°Ïì¡£
4£©ÊäÈëÐźų¬³öÁ˽ÓÊÕ»úµÄ¶¯Ì¬·¶Î§£¬·Å´óÆ÷¹¤×÷ÔÚ·ÇÏßÐÔ¡£
5£©ÏµÍ³ÄÚ²¿´æÔÚÔëÉù¡£
6£©½âµ÷Æ÷ÄÜ·ñ³ä·Ö½âµ÷¡£
7£©·¢ÉäÆ÷µÄÊä³ö¹¦ÂÊ¡¢Ë¥¼õÆ÷µÄË¥¼õ±È¡£
5¡¢¾ÙÀý˵Ã÷ÓÐÄÄЩÍⲿÒòËØ»áÓ°Ï챾ϵͳµÄͼÏñÖÊÁ¿£¿¿ÉÄÜͨ¹ýʲô;¾¶Äܹ»½â¾ö¡£
´ð£º1£©ÎÞÏßͨÐÅÖÐ×îÈÝÒ×ÊÜÍⲿ»·¾³ÒòËØÖÆÔ¼£¬ÀýÈç´«²¥¹ý³ÌÖÐÐźÅËðºÄ£¬ÒÔ¼°¶à¾¶Ð§Ó¦ºÍË¥¼õÒ²»áÒýÆð½ÓÊÕ»ú½ÓÊÕ´íÎóͼÏñÊý¾Ý¡£´«²¥ËðºÄ°üÀ¨×ÔÓÉ¿Õ¼äËðºÄºÍÆäËûËðºÄ£¬ÆäËûÖ÷ÒªµÄËðºÄ°üÀ¨£º´óÆø¡¢½µÓê¡¢ÔÆ¡¢ÎíËðºÄ£»Ê÷ľÕÚµ²ËðºÄ£»½¨ÖþÎïµÈÕÚµ²ÎïµÄËðºÄ¡£
½â¾ö·½·¨£ºÉè¼ÆһЩ¾À´í·½·¨£¬È纺Ã÷Â룬ѻ·ÂëÒ»ÀàµÄ£¬×ܶøÑÔÖ®Ó¦ÓÃÒ»¸öÎÞÏßͨÐÅÐÒéÓ¦¸ÃÄܹ»ÓÐЧ¼ì³ö²¢¾ÀÕýÊý¾ÝµÄ´íÎó¡£
2£©¿ÉÄܽÓÊÕµ½ÆäËûʵÑé²úÉúµÄÉäƵÐźŸÉÈŲâÊÔ£¬±ÈÈç²âÊÔµãÅÔ±ßÓÐÀàËƵÄÊÔÑé½øÐУ¬¶øÁ½ÕßÖ®¼äÓÐûÓÐÓÐЧµÄÆÁÕÏ¡£
½â¾ö·½·¨£º´îÔز»Í¬µÄÔØƵ£¬»òÕß²ÉÈ¡²»Í¬µÄµ÷ÖÆ·½Ê½¡£
3£©¸Ä±äÁËÌìÏß·¢Éä½ÓÊÕµÄÏà¶ÔλÖ㬼«»¯×´Ì¬±ä»¯£¬ÉõÖÁÕý½»¡£
½â¾ö·½·¨£ºÐýתÌìÏßʹÕý¶Ô¡£
µÚ¶þƪ£º±±¾©Àí¹¤´óѧ΢»úÔÀíʵÑ鱨¸æÒ»¶þÈý
΢»úÔÀíÓë½Ó¿Ú¼¼ÊõÓ²¼þʵÑ鱨¸æ
ÐÕÃû£º
°à¼¶£º
ѧºÅ£º
ʵÑéÒ»8259ÖжϿØÖÆÆ÷ʵÑé
ʵÑéÄÚÈÝ
Óõ¥Âö³å·¢ÉúÆ÷µÄÊä³öÂö³åΪÖжÏÔ´£¬Ã¿°´Ò»´Î²úÉúÒ»´ÎÖжÏÉêÇ룬µãÁÁ»òϨÃð·¢¹â¶þ¼«¹Ü¡£
¶þ£¬ÊµÑéÄ¿µÄ
£¨1£©ÕÆÎÕ8259µÄ¹¤×÷ÔÀí¡£
£¨2£©ÕÆÎÕ±àдÖжϷþÎñ³ÌÐòµÄ·½·¨¡£
£¨3£©ÕÆÎÕ³õʼ»¯ÖжÏÏòÁ¿µÄ·½·¨¡£
ʵÑé²½Öè
£¨1£©Á¬Ïß
µ¥Âö³å·¢ÉúÆ÷Êä³öP+Óë8259µÄIR0ÏàÁ¬£»
8259µÄƬѡCS8259ÓëCS0ÏàÁ¬£»
8259µÄINTÓë8086µÄINTÏàÁ¬£»
8259µÄINTAÓë8086µÄINTAÏàÁ¬£»
CS273ÓëCS1ÏàÁ¬£»
00ÓëLED0ÏàÁ¬£¬01ÓëLED1ÏàÁ¬£¬ÒÀ´Î½«CS273½Ó¿ÚÓëLEDÏàÁ¬£»ÆäËüÏß¾ùÒÑÁ¬ºÃÈçÏÂͼ£º
£¨2£©±à¼³ÌÐò£¬±àÒëÁ´½Óºó£¬µ¥²½ÔËÐУ¬µ÷ÊÔ³ÌÐò¡£
£¨3£©µ÷ÊÔͨ¹ýºó£¬ÔÚÖжϷþÎñ³ÌÐòµÄNOP´¦ÉèÖöϵ㣬ÔËÐгÌÐò£¬µ±½ÓÊÕµ½ÖжÏÇëÇóºó£¬³ÌÐòÍ£ÔÚÖжϷþÎñ³ÌÐòÄڵĶϵ㴦£¬¹Û²ì¼Ä´æÆ÷AXµÄÖµ¡£
ËÄ£¬ÊµÑéÔ´³ÌÐòÈçÏÂ
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,4A0H ;дICW1£¬µ¥Æ¬8259A£¬ÒªÐ´0CW4
MOV AX,13H
OUT DX,AX
MOV DX,4A2H ;дICW2
MOV AX,80H ;IR0µÄÖжÏÏòÁ¿ÂëΪ80H
OUT DX,AX
MOV AX,01
OUT DX,AX ;Ò»°ãǶÌ×£¬·Ç»º³å·½Ê½£¬·Ç×Ô¶¯EOI
MOV AX,0 ;дOCW1
OUT DX,AX;ÔÊÐíÖжÏ
;ÖжÏÏòÁ¿´æ·ÅÔÚ(0000H:0200H)¿ªÊ¼µÄËĸöµ¥ÔªÀï
MOV AX,0
MOV DS,AX
MOV SI,200H ;ÖжÏÀàÐͺÅΪ80H
MOV AX,OFFSET HINT ;ÖжϷþÎñ³ÌÐòµÄÈë¿ÚµØÖ·
MOV DS:[SI],AX
ADD SI,2
MOV AX,CS
MOV DS:[SI],AX
STI ;¿ªÖжϣ¬ÉèÖÃIF=1
JMP $ ;ÔµØÌøת
HINT: ;ÖжϷþÎñ³ÌÐò
XOR CX,0FFH;CXÈ¡·´
MOV DX,4B0H;CS273½Ó¿ÚµÄµØÖ·£¬Óë8¸öLEDµÆÏàÁ¬
MOV AX,CX;Êä³ö¸ßµÍµçƽ¿ØÖÆLEDµÆµÄÁÁÃð
OUT DX,AX
MOV DX,4A0H ;OCW2µÄµØÖ·
MOV AX,20H ;Ò»°ãEOIÃüÁȫǶÌ×·½Ê½
OUT DX,AX
IRET ;ÖжϷµ»Ø
CODE ENDS
END START
ʵÑé˼¿¼Ìâ
½«P0Á¬ÏßÁ¬½Óµ½IR1¡ªIR7ÈÎÒâÒ»¸ö£»ÖØбàд³ÌÐò¡£
½«P0½Óµ½ÁËIR1£¬ÔÚÔ³ÌÐòµÄ»ù´¡ÉÏ£¬°ÑдICW2µÄ¿ØÖÆ×Ö¸ÄΪ81H£¬ÔÙ°ÑÖжÏÏòÁ¿µÄÈë¿ÚµØÖ·¸ÄΪ0204H¼´¿É¡£³ÌÐòÈçÏ£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,4A0H ;дICW1£¬µ¥Æ¬8259A£¬ÒªÐ´ocw4
MOV AX,13H
OUT DX,AX
MOV DX,4A2H ;дICW2
MOV AX,81H ;IR1µÄÖжÏÏòÁ¿ÂëΪ81H
OUT DX,AX
MOV AX,01
OUT DX,AX ;Ò»°ãǶÌ×£¬·Ç»º³å·½Ê½£¬·Ç×Ô¶¯EOI
MOV AX,0 ;дOCW1
OUT DX,AX;ÔÊÐíÖжÏ
;ÖжÏÏòÁ¿´æ·ÅÔÚ(0000H:0204H)¿ªÊ¼µÄËĸöµ¥ÔªÀï
MOV AX,0
MOV DS,AX
MOV SI,204H ;ÖжÏÀàÐͺÅΪ81H
MOV AX,OFFSET HINT ;ÖжϷþÎñ³ÌÐòµÄÈë¿ÚµØÖ·
MOV DS:[SI],AX
ADD SI,2
MOV AX,CS
MOV DS:[SI],AX
STI ;¿ªÖжϣ¬ÉèÖÃIF=1
JMP $ ;ÔµØÌøת
HINT: ;ÖжϷþÎñ³ÌÐò
XOR CX,0FFH;CXÈ¡·´
MOV DX,4B0H;CS273µÄµØÖ·
MOV AX,CX;Êä³ö¸ßµÍµçƽ¿ØÖÆLEDµÆµÄÁÁÃð
OUT DX,AX
MOV DX,4A0H ;OCW2µÄµØÖ·
MOV AX,20H ;Ò»°ãEOIÃüÁȫǶÌ×·½Ê½
OUT DX,AX
IRET ;ÖжϷµ»Ø
CODE ENDS
END START
ʵÑéÏÖÏó£ºÔËÐгÌÐò£¬´¥·¢Âö³å·¢ÉúÆ÷²úÉúÖжÏÇëÇó£¬ÏàÓ¦¶þ¼«¹ÜµãÁÁ¡£
ÉèÖÃOCW1£¬ÆÁ±Îij¸öÖжÏÇëÇó£¬ÔËÐгÌÐò¹Û²ìÏÖÏó¡£
½«IR0ÖØнÓÈëLED0£¬ÉèÖÃOCW1Ϊ01H£¬ÆÁ±ÎÖжÏIR0£¬ÔòIR0µÄÖжÏÎÞ·¨µÃµ½ÏìÓ¦¡£³ÌÐòÈçÏ£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,4A0H ;ICW1µÄµØÖ·£¬Ð´³õʼ»¯ÃüÁî×ÖICW1
MOV AX,13H ;ÉÏÉýÑØ´¥·¢£¬µ¥Æ¬8259£¬ÒªÐ´ICW4
OUT DX,AX
MOV DX,4A2H ;ICW2µÄµØÖ·£¬Ð´ÖжÏÏòÁ¿ÂëICW2
MOV AX,80H ;IR0µÄÖжÏÏòÁ¿ÂëΪ80H
OUT DX,AX
MOV AX,01 ;дÖжϽáÊø¿ØÖÆ×ÖICW4
OUT DX,AX ;Ò»°ãǶÌ×£¬·Ç»º³å·½Ê½£¬·Ç×Ô¶¯EOI
MOV AX,01H ;дÖжÏÆÁ±Î×ÖOCW1
OUT DX,AX;ÆÁ±ÎIR0ÖжÏ
;ÖжÏÏòÁ¿´æ·ÅÔÚ(0000H:0200H)¿ªÊ¼µÄËĸöµ¥ÔªÀï
MOV AX,0
MOV DS,AX
MOV SI,200H ;ÖжÏÀàÐͺÅΪ80H
MOV AX,OFFSET HINT ;ÖжϷþÎñ³ÌÐòµÄÈë¿ÚµØÖ·
MOV DS:[SI],AX
ADD SI,2
MOV AX,CS
MOV DS:[SI],AX
STI ;¿ªÖжϣ¬ÉèÖÃIF=1
JMP $ ;ÔµØÌøת
HINT: ;ÖжϷþÎñ³ÌÐò
XOR CX,0FFH;CXÈ¡·´
MOV DX,4B0H;CS273µÄµØÖ·
MOV AX,CX;Êä³ö¸ßµÍµçƽ¿ØÖÆLEDµÆµÄÁÁÃð
OUT DX,AX
MOV DX,4A0H ;OCW2µÄµØÖ·
MOV AX,20H ;Ò»°ãEOIÃüÁȫǶÌ×·½Ê½
OUT DX,AX
IRET ;ÖжϷµ»Ø
CODE ENDS
END START
ʵÑéÏÖÏó£º
ÿ°´µ¥Âö³å·¢ÉúÆ÷Ò»´Î²úÉúÒ»´ÎÖжÏÉêÇ룬µ«Á¬½ÓµÄ·¢¹â¶þ¼«¹ÜÒ»Ö±²»ÁÁ¡£
3. ÉèÖÃOCW2£¬Á˽âÖжϽáÊø·½Ê½ÓëÉèÖÃÓÅÏÈȨ¡£
½«IR0ºÍIR1¶¼Á¬½Óµ½P+ÉÏ£¬·Ö±ðÁ¬½ÓLED0ºÍLED1µ½00ºÍ01¡£OCW2½« E0OCW2Ò»°ãEOIÃüÁ½«IR0ÉèÖÃΪ×îµÍÖжÏÓÅÏȼ¶¡£³ÌÐòÈçÏ£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,4A0H ;ICW1µÄµØÖ·
MOV AX,13H ;ÉÏÉýÑØ´¥·¢£¬µ¥Æ¬8259£¬ÒªÐ´ICW4
OUT DX,AX
MOV DX,4A2H ;ICW2µÄµØÖ·
MOV AX,80H ;ÖжÏÏòÁ¿ÂëΪ80H£¬µÍ3λ×Ô¶¯Ð´Èë
OUT DX,AX
MOV AX,01 ;дICW4
OUT DX,AX ;Ò»°ãǶÌ×£¬·Ç»º³å·½Ê½£¬·Ç×Ô¶¯EOI
MOV AX,0 ;дOCW1
OUT DX,AX;ÔÊÐíËùÓÐÖжÏ
;IR0µÄÖжÏÏòÁ¿´æ·ÅÔÚ(0000H:0200H)¿ªÊ¼µÄËĸöµ¥ÔªÀï
MOV AX,0
MOV DS,AX
MOV SI,200H
MOV AX,OFFSET HINT1
MOV DS:[SI],AX
ADD SI,2
MOV AX,CS
MOV DS:[SI],AX
STI ;¿ªÖжϣ¬ÉèÖÃIF=1
;IR1µÄÖжÏÏòÁ¿´æ·ÅÔÚ(0000H:0204H)¿ªÊ¼µÄËĸöµ¥ÔªÀï
MOV AX,0
MOV DS,AX
MOV SI,204H
MOV AX,OFFSET HINT2
MOV DS:[SI],AX
ADD SI,2
MOV AX,CS
MOV DS:[SI],AX
JMP $ ;ÔµØÌøת
HINT1:;ÖжϷþÎñ³ÌÐò1
XOR CX,0F0H ;CX¸ß4λȡ·´
MOV DX,4B0H;CS273µÄµØÖ·
MOV AX,CX ;Êä³ö¸ßµÍµçƽ¿ØÖÆLEDµÆµÄÁÁÃð
OUT DX,AX
MOV DX,4A0H ;OCW2µÄµØÖ·
MOV AX,E0H ;Ò»°ãEOIÃüÁIR0ÓÅÏȼ¶×îµÍ
OUT DX,AX
IRET ;ÖжϷµ»Ø
HINT2: ;ÖжϷþÎñ³ÌÐò2
XOR CX,00FH ;CXµÍ4λȡ·´
MOV DX,4B0H;CS273µÄµØÖ·
MOV AX,CX;Êä³ö¸ßµÍµçƽ¿ØÖÆLEDµÆµÄÁÁÃð
OUT DX,AX
MOV DX,4A0H ;OCW2µÄµØÖ·
MOV AX,E0H ;Ò»°ãEOIÃüÁIR0ÓÅÏȼ¶×îµÍ
OUT DX,AX
IRET ;ÖжϷµ»Ø
CODE ENDS
END START
ʵÑéÏÖÏó£ºCS273µÄ00ÓëLED0ÏàÁ¬£¬01ÓëLED1ÏàÁ¬£¬02ÓëLED2ÏàÁ¬£¬ÒÀ´ÎÏÂÈ¥£¬Ö±ÖÁ07ÓëLED7ÏàÁ¬¡£Ã¿°´µ¥Âö³å·¢ÉúÆ÷Ò»´Î²úÉúÒ»´ÎÖжÏÉêÇ룬ÓÉÓÚIR0µÄÓÅÏȼ¶±ÈIR1µÍ£¬¹ÊÏÈÏìÓ¦IR1,ºóÏìÓ¦IR0£¬¹Û²ìµ½µÍ4λµÄLEDµÆÏȵãÁÁ»òϨÃ𣬸ß4λµÄLEDµÆºóµãÁÁ»òϨÃð¡£
ʵÑéÐĵÃ
ʵÑéÈÃÎÒ¶Ô8259AµÄÄÚ²¿¼Ä´æÆ÷µÄ¹¦ÄÜÓÐÁ˸üÉîµÄÈÏʶ£¬ÕÆÎÕÁË8259AµÄ³õʼ»¯²½Öè¼°Æ乤×÷·½Ê½µÄÑ¡Ôñ£¬ÒÔ¼°ÖжϷþÎñ³ÌÐòµÄ±àд¡£Ê¹ÓÃʵÑéÏäºÍ±àÒëÈí¼þ£¬Ê¹ÎÒÃÇÔÚ±à³ÌºÍ¶¯ÊÖ²Ù×÷·½Ã涼ÓÐÁ˺ܴóµÄÌá¸ß£¬ÈíÓ²¼þµÄ½áºÏ£¬Ê¹ÎÒÃǸü¼Ó͸³¹µÄÀí½âÁËËùѧ֪ʶ¡£
ʵÑé¶þ 8255²¢ÐнӿÚʵÑé
ʵÑéÄÚÈÝ
8255µÄA¿Ú×÷ΪÊäÈë¿Ú£¬ÓëÂß¼µçƽ¿ª¹ØÏàÁ¬¡£8255µÄB¿Ú×÷ΪÊä³ö¿Ú£¬Óë·¢¹â¶þ¼«¹ÜÏàÁ¬¡£±àд³ÌÐò£¬Ê¹µÃÂß¼µçƽ¿ª¹ØµÄ±ä»¯ÔÚ·¢¹â¶þ¼«¹ÜÉÏÏÔʾ³öÀ´¡£
¶þ£¬ÊµÑéÄ¿µÄ
£¨1£©ÕÆÎÕ8255µÄ¹¤×÷ÔÀí¡£
£¨2£©ÕÆÎÕ±àд8255²¢Ðнӿڳõʼ»¯¼°±à³ÌʵÏֵķ½·¨¡£
Èý£¬ÊµÑéÒÇÆ÷
΢»úʵÑé½ÌѧϵͳʵÑéÏä¡¢8086CPUÄ£¿é
ËÄ£¬ÊµÑé²½Öè
Á¬Ïß
8255µÄPA0¡ªPA7·Ö±ðÓëÂß¼µçƽ¿ª¹ØµÄK1¡ªK8ÏàÁ¬
PB0¡ªPB7·Ö±ðÓë·¢¹â¶þ¼«¹Üµç·µÄLED1¡ªLED8ÏàÁ¬
CS0Óë8255µÄƬѡCS8255ÏàÁ¬
ÆäËüÏß·¾ùÒÑÁ¬ºÃ
¾ßÌåÈçͼËùʾ£º
±à¼³ÌÐò£¬±àÒëÁ´½Óºó£¬µ¥²½ÔËÐУ¬µ÷ÊÔ³ÌÐò¡£
µ÷ÊÔͨ¹ýºó£¬È«ËÙÔËÐУ¬¹Û²ìʵÑé½á¹û¡£
׫дʵÑ鱨¸æ¡£
Î壬ʵÑéÔ´³ÌÐòÈçÏÂ
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,90H £»Ð´8255µÄ¿ØÖÆ×Ö£¬A×鹤×÷ÔÚ·½Ê½0£¬A¿ÚÊäÈ룬C¿Ú¸ß4λÊä³ö£¬B×鹤×÷ÔÚ·½Ê½0£¬B¿Ú¼°C¿ÚµÄµÍ4λ¾ù¹¤×÷ÔÚÊä³ö
OUT DX,AX
START1:
MOV DX,04A0H
IN AX,DX £»¶ÁÈ¡A¿ÚÊý¾Ý
MOV DX,04A2H
OUT DX,AX £»½«´ÓA¿Ú¶ÁÈ¡µÄÊý¾Ý´ÓB¿ÚÊä³ö£¬¿ØÖÆLEDµÆ
JMP START1
CODE ENDS
END START
Áù£¬ÊµÑéÏÖÏó
LEDµÆµÍµçƽÓÐЧ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½µÍµçƽʱ£¬¶ÔÓ¦µÄLEDµÆµãÁÁ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½¸ßµçƽʱ£¬¶ÔÓ¦µÄLEDµÆϨÃð
Æߣ¬Ë¼¿¼Ìâ
1£®½«Æ¬Ñ¡Ïß½Óµ½CS1¡ªCS7£»ÖØбàд³ÌÐò¡£
CS0¶ÔÓ¦µØÖ·ÊÇ04A0---O4AF, CS1¶ÔÓ¦µØÖ·ÊÇ04B0---O4BF.
ÏÖ½«Æ¬Ñ¡Ïß½Óµ½CS1£¬ÖØбà³Ì£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04B6H £»CS1¶ÔÓ¦µÄµØÖ·
MOV AX,90H
OUT DX,AX
START1:
MOV DX,04B0H
IN AX,DX
MOV DX,04B2H
OUT DX,AX
JMP START1
CODE ENDS
END START
ʵÑéÏÖÏó£ºÈçͬƬѡÏß½Óµ½CS0
2£®½»»»A ߨ¤ B½ÓÏߣ¬A¿ÚÊä³ö¡¢B¿ÚÊäÈ룻ÖØбàд³ÌÐò¡£
PB0¡ªPB7·Ö±ðÓëÂß¼µçƽ¿ª¹ØµÄK1¡ªK8ÏàÁ¬
PA0¡ªPA7·Ö±ðÓë·¢¹â¶þ¼«¹Üµç·µÄLED1¡ªLED8ÏàÁ¬
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04B6H £»Æ¬Ñ¡Ïß½Óµ½CS1
MOV AX,82H
OUT DX,AX ;д¿ØÖÆ×Ö£¬A,B×é¾ù¹¤×÷ÔÚ·½Ê½0£¬A¿ÚÊä³ö£¬B¿ÚÊäÈë
START1:
MOV DX,04B2H
IN AX,DX £»¶ÁÈ¡B¿ÚÊý¾Ý
MOV DX,04B0H
OUT DX,AX £»½«B¿ÚµÄÊý¾Ý´ÓA¿ÚÊäÈ룬¿ØÖÆLEDµÆ
JMP START1
CODE ENDS
END START
ʵÑéÏÖÏó£º
LEDµÆµÍµçƽÓÐЧ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½µÍµçƽʱ£¬¶ÔÓ¦µÄLEDµÆµãÁÁ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½¸ßµçƽʱ£¬¶ÔÓ¦µÄLEDµÆϨÃð
3£®C¿Ú4λ½ÓLED£»4λ½Ó¿ª¹Ø£»ÖØбàд³ÌÐò¡£
PC4¡ªPC7·Ö±ðÓëÂß¼µçƽ¿ª¹ØµÄK1¡ªK4ÏàÁ¬
PC0¡ªPC3·Ö±ðÓë·¢¹â¶þ¼«¹Üµç·µÄLED1¡ªLED4ÏàÁ¬
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04B6H £»Æ¬Ñ¡½ÓCS1
MOV AX,88H
OUT DX,AX £»A,B×é¾ù¹¤×÷ÔÚ·½Ê½0£¬C¿Ú¸ß4λÊäÈ룬µÍ4λÊä³ö
START1:
MOV DX,04B4H
IN AL,DX£»¶ÁÈ¡C¿ÚÊý¾Ý
MOV CL,4
ROR AL,CL ;²»´øCFλµÄÑ»·ÓÒÒÆ4λ£¬Ê¹C¿ÚÊý¾ÝµÄ¸ß4λÓëµÍ4뻥»»
MOV DX,04B4H
OUT DX,AL £»½«C¿Ú¸ß4λµÄÊý¾Ý´ÓµÍ4λÊä³ö£¬¿ØÖÆLEDµÆ
JMP START1
CODE ENDS
END START
ʵÑéÏÖÏó:LEDµÆµÍµçƽÓÐЧ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½µÍµçƽʱ£¬¶ÔÓ¦µÄLEDµÆµãÁÁ¡£µ±Ä³Ò»¿ª¹Ø²¦µ½¸ßµçƽʱ£¬¶ÔÓ¦µÄLEDµÆϨÃð
ʵÑéÈý 8253¿É±à³Ì¶¨Ê±Æ÷
Ò»£¬ÊµÑéÄÚÈÝ
8253¼ÆÊýÆ÷0£¬1£¬2¹¤×÷ÓÚ·½²¨·½Ê½£¬¹Û²ìÆäÊä³ö¡£
¶þ£¬ÊµÑéÄ¿µÄ
ÕÆÎÕ8253¶¨Ê±/¼ÆÊýÆ÷µÄ±à³ÌÔÀí¡£
Èý£¬ÊµÑéÉ豸
΢»úʵÑé½ÌѧϵͳʵÑéÏä¡¢8086CPUÄ£¿é¡£
ËÄ£¬ÊµÑé²½Öè
Á¬Ïß
CS0Óë8253µÄƬѡCS8253ÏàÁ¬£»
CLK3£¨750KHz£©Óë8253CLK0ÏàÁ¬£»
8253µÄOUT0Óë8253CLK2ÏàÁ¬£»
OUT2Óë·¢¹â¶þ¼«¹ÜLED1ÏàÁ¬£»
ÆäËüÏß¾ùÒÑÁ¬ºÃ¡£
±à¼³ÌÐò£¬±àÒëÁ´½Óºó£¬¸ú×ÙÔËÐУ¬µ÷ÊÔ³ÌÐò¡£
µ÷ÊÔͨ¹ýºó£¬È«ËÙÔËÐУ¬¹Û²ìʵÑé½á¹û¡£
׫дʵÑ鱨¸æ¡£
Î壬ʵÑéÔ´³ÌÐò
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,36H
OUT DX,AX £»Ð´¿ØÖÆ×Ö£¬¼ÆÊýÆ÷0¹¤×÷ÔÚ·½Ê½3£¬ÏȶÁд¼ÆÊýÆ÷µÍ8룬ÔÙ¶Áд¼ÆÊýÆ÷¸ß8룬¶þ½øÖƼÆÊý
MOV DX,04A0H
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX £»½«¼ÆÊý³õÖµ927CHдÈë¼ÆÊýÆ÷0
MOV DX,04A6H
MOV AX,0B6H
OUT DX,AX £»Ð´¿ØÖÆ×Ö£¬¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½3£¬ÏȶÁд¼ÆÊýÆ÷µÍ8룬ÔÙ¶Áд¸ß8룬¶þ½øÖƼÆÊý
MOV DX,04A4H
MOV AX,4
OUT DX,AX
MOV AX,0
OUT DX,AX £»½«¼ÆÊý³õÖµ4HдÈë¼ÆÊýÆ÷2
JMP $ £»ÔµØÌøת£¬µÈ´ý
CODE ENDS
END START
Áù£¬ÊµÑéÏÖÏó
LED1µÆ½»ÌæÁÁÃð£¨ÉÁ˸£©£¬ÇÒÁÁÃðʱ¼äÏàµÈ
Æߣ¬Ë¼¿¼Ìâ
¶¨Ê±Æ÷2¼ÆÊýÖµ¸ÄΪ20H£»¹Û²ìÆäÏÖÏó¡£
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,36H
OUT DX,AX
MOV DX,04A0H
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX
MOV DX,04A6H
MOV AX,096H
OUT DX,AX ;д¿ØÖÆ×Ö£¬¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½3£¬Ö»Ð´¼ÆÊýÆ÷µÍ8룬¶þ½øÖƼÆÊý
MOV DX,04A4H
MOV AX,20H
OUT DX,AX£»½«¼ÆÊý³õÖµ20HдÈë¼ÆÊýÆ÷2
JMP $
CODE ENDS
END START
ʵÑéÏÖÏó£ºLED1µÆµÈʱ¼ä¼ä¸ôµÄ½»ÌæÁ½Ã𣬵«ÁÁÃðµÄÖÜÆÚ¸ü³¤£¬¼´µÆÉÁ˸µÃ¸üÂý
½«¶¨Ê±Æ÷2¸ÄΪ·½Ê½2·ÖƵÆ÷·½Ê½£»¹Û²ìÆäÏÖÏó¡£
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,36H
OUT DX,AX
MOV DX,04A0H
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX
MOV DX,04A6H£»Ð´¿ØÖÆ×Ö£¬¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½2£¬Ö»Ð´¼ÆÊýÆ÷µÍ8룬¶þ½øÖƼÆÊý
MOV AX,094H
OUT DX,AX
MOV DX,04A4H
MOV AX,20H
OUT DX,AX
JMP $
CODE ENDS
END START
ʵÑéÏÖÏó£ºLED1µÆÁÁµÄʱ¼ä±ä³¤£¬ÃðµÄʱ¼ä±ä¶Ì
½«GATE2 ½Óµ½¿ª¹ØÉÏ£»¹Û²ìÆäÏÖÏó¡£
ÓÃÉÏÃæ˼¿¼Ìâ2µÄ³ÌÐò£¬°ÑGATE2 ½Óµ½¿ª¹ØK1ÉÏ¡£µ±´ò¿ª¿ª¹Ø£¨¿ª¹ØÖÃ1£©Ê±£¬ÊµÑéÏÖÏóͬ˼¿¼Ìâ2£»µ±¿ª¹Ø¹Ø±Õʱ£¬LED1µÆʼÖÕÃð¡£
4. ½«GATE2 ½Óµ½PUL P0¿ª¹ØÉÏ£¬¼ÆÊýÆ÷2 ¸ÄΪ·½Ê½1 £»¹Û²ìÆäÏÖÏó¡£
GATE2½Óµ½PUL P0¿ª¹ØµÄP+¶Ë¿Ú
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,36H
OUT DX,AX
MOV DX,04A0H
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX
MOV DX,04A6H£»Ð´¿ØÖÆ×Ö£¬¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½1£¬Ö»Ð´¼ÆÊýÆ÷µÍ8룬¶þ½øÖƼÆÊý
MOV AX,092H
OUT DX,AX
MOV DX,04A4H
MOV AX,20H
OUT DX,AX
JMP $
CODE ENDS
END START
ʵÑéÏÖÏ󣺰´Ò»ÏÂPUL P0¿ª¹Ø£¬LED1µÆÁÁ£¬µ«¼¸Ãëºó¾Í»áϨÃð¡£Õâʱ£¬ÔÙ°´¶¯PUL P0¿ª¹Ø£¬LED1µÆÁÁ£¬¼¸ÃëºóÓÖ»áÃð£¬ÁÁÃðÇé¿öͬµÚÒ»´ÎÏàͬ¡£Ã¿´Îµ±µÆϨÃðºó£¬°´¶¯PUL P0¿ª¹Ø£¬LED1µÆ»á²úÉúͬµÚÒ»´ÎÏàͬµÄÁÁÃðÇé¿ö¡£Ã¿´ÎÔÚµÆδϨÃðʱ£¬°´¶¯PUL P0¿ª¹Ø£¬ÔòµÆÁÁµÄʱ¼ä±ä³¤£¬¶ÔӦʾ²¨Æ÷µÄµÍµçƽʱ¼ä¼Ó³¤¡£
5. ½«GATE2 ½Óµ½PUL P0¿ª¹ØÉÏ£¬¼ÆÊýÆ÷2 ¸ÄΪ·½Ê½5 £»¹Û²ìÆäÏÖÏó¡£
GATE2½Óµ½PUL P0¿ª¹ØµÄP+¶Ë¿Ú
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H
MOV AX,36H
OUT DX,AX
MOV DX,04A0H
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX
MOV DX,04A6H£»Ð´¿ØÖÆ×Ö£¬¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½5£¬Ö»Ð´¼ÆÊýÆ÷µÍ8룬¶þ½øÖƼÆÊý
MOV AX,09AH
OUT DX,AX
MOV DX,04A4H
MOV AX,20H
OUT DX,AX
JMP $
CODE ENDS
END START
ʵÑéÏÖÏ󣺴¥·¢PUL P0¿ª¹ØºóÒ»¶Îʱ¼äLED1µÆÉÁһϣ¬È»ºó¾ÍÁ¢¼´Ï¨Ãð£¬Ê¾²¨Æ÷µÍµçƽ¼«¶Ì
°Ë£¬ÊµÑéÓöµ½µÄÎÊÌ⼰ʵÑéÐĵÃ
ʵÑ黹Ëã˳Àû£¬Ã»ÓÐÓöµ½Ê²Ã´ÎÊÌâ¡£
°Ë£¬ÊµÑéÐĵÃ
ͨ¹ý8255²¢ÐнӿÚʵÑ飬ÎÒ¶Ô8255ÓÐÁ˸üÉî¿ÌµØÁ˽⣬¶ÔÆäÔÚÄÚ´æÖеĵØÖ·£¬¸÷¼Ä´æÆ÷µÄʹÓÃÓÐÁ˽ÏΪÇåÎúµÄÈÏʶ¡£Í¨¹ý˼¿¼ÌâµÄÁ·Ï°£¬ÕÆÎÕÁË8255µÄ±à³ÌÔÀí¡£ÈíÓ²¼þµÄ½áºÏ£¬Ê¹ÎÒÃÇѧÒÔÖÂÓã¬ÄÜÁ¦ÓÐÁ˽ϴóÌáÉý¡£
±¾´ÎʵÑ飬ÊÕ»ñÆĶ࣬¸üÐÎÏóµØÊìϤÁË8253¶¨Ê±¼ÆÊýÆ÷µÄ6ÖÖ¹¤×÷·½Ê½µÄʹÓü°ÆäÌص㣬°üÀ¨Ã¿ÖÖ·½Ê½µÄ¿ØÖÆ×Ö¡¢Æô¶¯·½Ê½¡¢Êä³ö²¨ÐεÄÌصãµÈ¡£Í¨¹ý¶¯ÊÖ½ÓÓ²¼þµç·£¬ÊìÁ·ÁËʵÑéÏäµÄʹÓ㬶øÇÒÓÃʾ²¨Æ÷ºÍLEDµÆ¹Û²ìʵÑéÏÖÏ󣬷½±ãÖ±¹Û¡£
ʵÑéËÄ8250´®ÐнӿÚʵÑé
ʵÑéÄ¿µÄ
(1)ÊìϤ´®ÐÐͨÐŵÄÒ»°ãÔÀíºÍ8250µÄ¹¤×÷ÔÀí¡£
(2)Á˽âRS¡ª232´®Ðнӿڱê×¼¼°Á¬½Ó·½·¨¡£
(3)ÕÆÎÕ8250оƬµÄ±à³Ì·½·¨¡£
¶þ£¬ÊµÑéÉ豸
΢»úʵÑé½ÌѧϵͳʵÑéÏ䣬8086CPUÄ£¿é
Èý¡¢ÊµÑéÄÚÈÝ
ÔÚʵÑéÏäÓëPC»ú£¨ÉÏλ»ú£©Ö®¼äʵÏÖ´®ÐÐͨÐÅ£¬Ö÷»úÿÏ´«Ò»¸ö×Ö·û£¬ÈôͨѶÕýÈ·£¬ÔòÏÂλ»ú·µ»ØÒ»¸öͬÑùµÄ×Ö·û£»Èô²»ÕýÈ·£¬ÔòÎÞ·µ»ØÖµ»òÕß·µ»ØÖµ²»Í¬¡£
ËÄ£¬ÊµÑé²½Öè
ÎÞÐë½ÓÏߣ¬ÄÚ²¿ÒѾÁ¬ºÃ¡£8250µÄ¶Ë¿ÚµØַΪ0480HÆðʼµÄżµØÖ·µ¥Ôª¡£
±àдÏÂλ»ú³ÌÐò£¬±àÒëÁ´½Óºó£¬È«ËÙÔËÐС£
Í˳ö¡°8086ʵÑéϵͳ¡±£¬ÔËÐС°´®¿Úµ÷ÊÔÖúÊÖ¡±ÉÏλ»ú³ÌÐò¡£
½«¡°´®¿Úµ÷ÊÔÖúÊÖ¡±³ÌÐòÊäÈëºÍÊä³ö¶¼µ÷ÕûΪ16½øÖƸñʽ£¬·¢ËÍÒ»¸ö16½øÖÆÊý£¬¹Û²ì·µ»ØµÄÊÇ·ñÊÇͬÑùÒ»¸ö16½øÖÆÊý¡£
Î壬ʵÑé³ÌÐò
³ÌÐòÁ÷³Ìͼ£º
ʵÑéÔ´³ÌÐò£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,486H ; дͨÐÅÏß·¿ØÖƼĴæÆ÷D7=1
MOV AX,80H
OUT DX,AX
MOV DX,480H ;ÉèÖò¨ÌØÂʵÍ×Ö½Ú
MOV AX,12
OUT DX,AX
MOV DX,482H ;ÉèÖò¨ÌØÂʸß×Ö½Ú
MOV AX,0
OUT DX,AX
MOV DX,486H
MOV AX,3
OUT DX,AX
MOV DX,482H ;ÖжÏÔÊÐí¼Ä´æÆ÷
MOV AX,0
OUT DX,AX
MOV DX,48AH ;Çå³ýÔʼ´íÎó״̬
IN AX,DX
MOV DX,480H ;Çå³ýÔʼ״̬
IN AX,DX
LOOP1:
CALL RECV
CALL SEND
JMP LOOP1£»Ñ»··¢ËÍ
SEND:; ·¢ËÍ×Óº¯Êý
PUSH AX
MOV DX,48AH
IN AX,DX
TEST AX,20H
JNZ SEND2 £»·¢ËÍÊý¾Ý¼Ä´æÆ÷¿Õ£¬ÔòÌøתÖÁSEND2£¬·¢ËÍ×Ö·û
POP AX £»·¢ËÍÊý¾Ý¼Ä´æÆ÷²»ÊÇ¿Õ£¬²»¿É·¢ËÍ
JMP SEND
SEND2:
POP AX
MOV DX,480H £»Ö¸Ïò·¢ËͽÓÊÕÊý¾Ý¼Ä´æÆ÷£¬·¢ËÍ×Ö·û
OUT DX,AX
RET
RECV: ;½ÓÊÕ×Óº¯Êý
MOV DX,48AH
IN AX,DX
TEST AX,1
JZ RECV £»Î´½Óµ½µ½Ò»¸ö×Ö·û£¬ÔòÌøתÖÁRECV£¬Èô½ÓÊÕµ½×Ö·û£¬Ôò˳ÐòÍùÏÂÖ´ÐС£
MOV DX,480H £»½ÓÊÕµ½×Ö·û£¬Ö¸Ïò½ÓÊÕ»º´æÆ÷
IN AX,DX £»¶ÁÈ¡½ÓÊÕ»º³åÇøµÄ×Ö·û
RET
CODE ENDS
END START
ʵÑéÏÖÏó£ºÔÚ·¢ËÍÇø¼üÈëÒ»¸ö16½øÖÆÊý£¬½ÓÊÜÇøÊÇͬÑùÒ»¸ö16½øÖÆÊý¡£
Áù£¬Ë¼¿¼Ìâ
Á¬½Ó 8255 ½«½ÓÊÕµ½µÄ 16 ½øÖÆÊý£»Çý¶¯8¸ö²ÊµÆ£»¹Û²ìÆäÏÖÏó¡£
½«8255µÄƬѡÁ¬µ½CS0£¬½«PB0~~PB7ÒÀ´ÎÓëLED1~LED8ÏàÁ¬½Ó
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H £»8255µÄ¿ØÖÆ×Ö£¬B¿ÚÊä³ö
MOV AX,90H
OUT DX,AX
MOV DX,486H £»8250³õʼ»¯
MOV AX,80H
OUT DX,AX
MOV DX,480H
MOV AX,12
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,486H
MOV AX,3
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,48AH
IN AX,DX
MOV DX,480H
IN AX,DX
LOOP1:
CALL RECV £»½ÓÊÕÊäÈëµÄÊý¾Ý
CALL SEND £»½«Êý¾Ý·¢Ë͸øÉÏλ»ú
MOV DX,04A2H £»½«8250·¢Ë͵ĴæÓÚAXÖеÄÊý¾Ý£¬´Ó8255µÄB¿ÚÊä³ö£¬Çý¶¯8¸öLEDµÆ
OUT DX,AX
JMP LOOP1£»Ñ»··¢ËÍ
SEND:
PUSH AX
MOV DX,48AH
IN AX,DX
TEST AX,20H
JNZ SEND2
POP AX
JMP SEND
SEND2:
POP AX
MOV DX,480H
OUT DX,AX
RET
RECV:
MOV DX,48AH
IN AX,DX
TEST AX,1
JZ RECV
MOV DX,480H
IN AX,DX
RET
CODE ENDS
END START
ʵÑéÏÖÏ󣺵±ÔÚ¡°´®¿Úµ÷ÊÔÖúÊÖ¡±µÄ·¢ËÍÇø¼üÈëÒ»¸ö8λµÄ16½øÖÆÊýºó£¬PC»ú½ÓÊÕÇø»áÏÔʾ·¢Ë͵ÄÊý×Ö£¬Í¬Ê±8¸öLEDÒ²»á¶ÔÓ¦µÄÁÁ£¨»òÃ𣩡£
Á¬½Ó 8255 ½«¿ª¹ØµÄ״̬ÒÔ16 ½øÖÆÊýµÄ·½Ê½·¢Ë͵½PC»ú£»¹Û²ìÆäÏÖÏó¡£
½«8¸ö¿ª¹ØÁ¬½Óµ½8255µÄPA0~PA7¿Ú£¬ÔÚpc»úÉϹ۲ì½ÓÊÕÇøµÄÊý¾Ý
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04A6H £»8255µÄ¿ØÖÆ×Ö£¬A¿ÚÊäÈë
MOV AX,90H
OUT DX,AX
MOV DX,486H £»8250³õʼ»¯
MOV AX,80H
OUT DX,AX
MOV DX,480H
MOV AX,12
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,486H
MOV AX,3
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,48AH
IN AX,DX
MOV DX,480H
IN AX,DX
LOOP1:
MOV DX,04A0H £»´Ó8255µÄA¿ÚÊäÈë8¸ö¿ª¹ØµÄ״̬
IN AX,DX
CALL SEND £»½«AXÖеÄÄÚÈÝ´®Ðз¢ËͳöÈ¥£¬¿ÉÔÚPC»úÉÏÏÔʾ
JMP LOOP1
SEND:
PUSH AX
MOV DX,48AH
IN AX,DX
TEST AX,20H
JNZ SEND2
POP AX
JMP SEND
SEND2:
POP AX
MOV DX,480H
OUT DX,AX
RET
CODE ENDS
END START
ʵÑéÏÖÏó£º8¸ö¿ª¹ØµÄ״̬ѻ·ÏÔʾÔÚPC»úµÄ½ÓÊÕÇø£¬µ±¿ª¹Ø״̬¸Ä±äʱ£¬ÏÔʾµÄÊý¾ÝÒ²ËæÖ®¸Ä±ä¡£
Á¬½Ó 8255 ºÍ8253 µÄ GATE0 £»Ê¹Óá°´®¿Úµ÷ÊÔÖúÊÖ¡±³ÌÐò¿ØÖÆ 8253 µÄÕñµ´¡£
½«8255µÄƬѡ½Óµ½CS0,½«8253µÄƬѡ½Óµ½CS1£¬8255µÄB¿ÚÊä³ö£¬ÆäÖÐPB0ÓëGATE0ÏàÁ¬£¬CLK3£¨750KHz£©Óë8253CLK0ÏàÁ¬,8253µÄOUT0Óë8253CLK2ÏàÁ¬,OUT2Óë·¢¹â¶þ¼«¹ÜLED1ÏàÁ¬
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,04B6H ;8253µÄ¿ØÖÆ×Ö£¬¼ÆÊýÆ÷0¹¤×÷ÓÚ·½Ê½3£¬¶þ½øÖƼÆÊý£¬ÏȶÁдµÍ°Ë룬ÔÙ¶Áд¸ß°Ëλ
MOV AX,36H
OUT DX,AX
MOV DX,04B0H £»½«927CHµÄ³õֵдÈë¼ÆÊýÆ÷0
MOV AX,7CH
OUT DX,AX
MOV AX,92H
OUT DX,AX
MOV DX,04B6H £»ÉèÖüÆÊýÆ÷2¹¤×÷ÓÚ·½Ê½3£¬¶þ½øÖƼÆÊý£¬ÏȶÁдµÍ°Ë룬ÔÙ¶Áд¸ß°Ëλ
MOV AX,0B6H
OUT DX,AX
MOV DX,04B4H £»?¼ÆÊýÆ÷2д³õÖµ4H
MOV AX,4
OUT DX,AX
MOV AX,0
OUT DX,AX
MOV DX,04A6H ;8255µÄ³õʼ»¯£¬A¿ÚÊäÈ룬B¿ÚÊä³ö
MOV AX,90H
OUT DX,AX
MOV DX,486H £»8250´®Ðнӿڵijõʼ»¯
MOV AX,80H
OUT DX,AX
MOV DX,480H
MOV AX,12
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,486H
MOV AX,3
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,48AH
IN AX,DX
MOV DX,480H
IN AX,DX
LOOP1:
CALL RECV
CALL SEND
MOV DX,04A2H £»½«AXÖеÄÊý¾Ý£¨´®Ðз¢Ë͵ÄÊý¾Ý£©´ÓB¿ÚÊä³ö
OUT DX,AX
JMP LOOP1
SEND:
PUSH AX
MOV DX,48AH
IN AX,DX
TEST AX,20H
JNZ SEND2
POP AX
JMP SEND
SEND2:
POP AX
MOV DX,480H
OUT DX,AX
RET
RECV:
MOV DX,48AH
IN AX,DX
TEST AX,1
JZ RECV
MOV DX,480H
IN AX,DX
RET
CODE ENDS
END START
ʵÑéÏÖÏó£ºÈÎÒâ¼üÈëÒ»¸ö×îµÍλÊÇ1µÄ8bitµÄ16½øÖÆÊý¾Ý£¬Ê¹GATE0ÖÃ룬Ôòpc»úµÄ½ÓÊÕÇø»áÏÔʾÊäÈëµÄÊý¾Ý£¬Í¬Ê±£¬LED1µÆ»áÒ»Ö±ÉÁ˸
Æߣ¬ÊµÑéÓöµ½µÄÎÊÌâÓëʵÑéÐĵÃ
ʵÑéÓöµ½µÄÎÊÌ⣺
ÔÚ×ö˼¿¼Ìâ3ʱ£¬½«PB0ÓëGATE0ÏàÁ¬£¬CLK3£¨750KHz£©Óë8253CLK0ÏàÁ¬,8253µÄOUT0Óë·¢¹â¶þ¼«¹ÜLED1ÏàÁ¬£¬Ôò¼üÈëÒ»¸ö8bitµÄ16½øÖÆÊý×Öºó£¬LED1µÆ»áÒ»Ö±ÁÁ»òÕßÒ»Ö±Ãð£¬Ã»ÓÐÉÁ˸£¬²éÁËÒ»»á¶ù£¬·¢ÏÖʱʱÖÓCLK3µÄƵÂÊÌ«¸ß£¬½ö¾¹ý¼ÆÊýÆ÷0·ÖƵÊDz»¹»µÄ£¬·ÖƵºóƵÂÊÒÀ¾ÉºÜ¸ß£¬LED1µÆµÄÉÁ˸ÈâÑÛÎÞ·¨·Ö±æ£¬ÐèÒªÔÙ¾¹ý¼ÆÊýÆ÷2·ÖƵ£¬²ÅÄÜ¿´µ½µÆµÄÉÁ˸
ʵÑéÐĵãº
ÔÚ8250´®ÐнӿÚʵÑéÖУ¬³ä·ÖÌå»áµ½ÁËËüµÄ¡°´®ÐС±½Ó¿Ú×÷Óã¬ÌرðÊÇ8250оƬµÄ±à³Ì·½·¨£¬ÆäÇåÎúµÄÌõÀíʹÎÒ¶ÔËüÓÐÁ˸üΪÉî¿ÌµÄÀí½â¡£8250Óë8255²¢ÐнӿÚоƬµÄ½áºÏʹÓ㬸üÊÇÌå»áµ½ÁË´®ÐÐͨÐźͲ¢ÐÐͨÐŵÄÒìͬ¡£
ʵÑéÎå ADC0809ʵÑé
ʵÑéÄ¿µÄ
(1)ÕÆÎÕת»»µÄ»ù±¾ÔÀí¡£
(2)ÕÆÎÕµÄʹÓ÷½·¨¡£
¶þ£¬ÊµÑéÉ豸
΢»úʵÑé½ÌѧϵͳʵÑéÏ䣬8086CPUÄ£¿é
Èý¡¢ÊµÑéÄÚÈÝ
°´²éѯ·½Ê½²ÉÑùһ·A/Dת»»Êý¾Ý£¬Óüòµ¥ÊäÈë¿Ú74LS244²éѯEOCÐźš£Ã¿Ñ»·Ò»´Î0ͨµÀ²ÉÑùÒ»´Î¡£0ͨµÀµÄ²ÉÑù½á¹û·ÅÈëAXÖУ¬ALÓÐЧ¡£
ËÄ£¬ÊµÑé²½Öè
Á¬Ïß
ʵÑéÔÀíͼÈçÏ£º
ÆäÖУ¬½«¿É±äµçλÆ÷AN0ÓëADC0809µÄADIN0ÏàÁ¬£»
½«CS0ÓëADC0809µÄƬѡCS0809¶ËÏàÁ¬£»
½«ADC0809µÄEOCÓë74LS244µÄIN0ÏàÁ¬£»
½«CS1Óë74LS244µÄƬѡCS244¶ËÏàÁ¬¡£
±à¼³ÌÐò£¬±àÒëÁ´½Óºó£¬µ÷ÊÔ³ÌÐò¡£
µ÷ÊÔͨ¹ýºó£¬ÔÚÖжϷþÎñ³ÌÐòÄÚÉèÖöϵ㣬ÔËÐгÌÐò£¬µ±½ÓÊÕµ½ÖжÏÇëÇóºó£¬³ÌÐòÍ£ÔÚÖжϷþÎñ³ÌÐòÄڵĶϵ㴦¡£
׫дʵÑ鱨¸æ
Î壬ʵÑé³ÌÐò
ʵÑéÁ÷³Ìͼ£º
ʵÑéÔ´³ÌÐò£º
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,4A0H ;Ö¸ÏòͨµÀ0
CALL GETAD ;µ÷ÓÃA/Dת»»×Ó³ÌÐò£¬È¡µÃA/DÖµ
JMP START
DELAY: ;ÑÓʱ×Ó³ÌÐò
MOV BP,1000H
DELAY1:
DEC BP
CMP BP,0
JNE DELAY1
RET
GETAD: ;A/Dת»»×Ó³ÌÐò
PUSH DX
MOV AX,34H Æô¶¯A/D
OUT DX,AX
CALL DELAY
MOV DX,4B0H £»Ö¸Ïò74LS244µØÖ·
WAIT1:
IN AX,DX
TEST AX,1
JZ WAIT1 £»EOC=0,ÕýÔڱ任£¬ÌøÖÁWAIT1
POP DX £»EOC=1,ÒÀ´Î±ä»»Íê±Ï£¬¶ÁÈ¡A/DÖµ
IN AX,DX
MOV AH,0
RET
CODE ENDS
END START
ʵÑéÏÖÏó£ºÔÚ¡°JMP START¡±´¦ÉèÖöϵ㣬ȫËÙÔËÐе½´Ë´¦£¬¹Û²ìµ½¼Ä´æÆ÷AX=0045H.µ±ÐýתµçλÆ÷ºó£¬AXµÄÖµ»á±ä»¯¡£
Áù£¬Ë¼¿¼Ìâ
Á¬½ÓÆäËüͨµÀ£¬Ð޸ijÌÐò¡£
½«¿É±äµçλÆ÷AN0ÓëADC0809µÄADIN1ÏàÁ¬£¬ÆäËûÁ¬Ïß²»±ä¡£ÐèÒª½«³ÌÐòÖеġ°MOV DX,4A0H¡±¸ÄΪ¡°MOV DX,4A2H¡±¡£ÊµÑéÏÖÏóͬÉÏ¡£
½«²Éµ½µÄÊý¾Ý·¢Ë͵½ 8250 ÉÏ£»ÔÚ PC »ú¹Û²ìÊý¾Ý¡£
CODE SEGMENT PUBLIC
ASSUME CS:CODE
ORG 100H
START:
MOV DX,486H £»8250´®Ðнӿڵijõʼ»¯
MOV AX,80H
OUT DX,AX
MOV DX,480H
MOV AX,12
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,486H
MOV AX,3
OUT DX,AX
MOV DX,482H
MOV AX,0
OUT DX,AX
MOV DX,48AH
IN AX,DX
MOV DX,480H
IN AX,DX
M1: MOV DX,4A2H ;Ö¸ÏòͨµÀ1
CALL GETAD ;µ÷ÓÃA/Dת»»×Ó³ÌÐò£¬È¡µÃA/DÖµ
CALL SEND £»µ÷Óô®Ðз¢ËÍ×Ó³ÌÐò
JMP M1 £»Ñ»·µÈ´ý
DELAY: £»ÑÓʱ
MOV BP,1000H
DELAY1:
DEC BP
CMP BP,0
JNE DELAY1
RET
GETAD: ;A/Dת»»×Ó³ÌÐò
PUSH DX
MOV AX,34H
OUT DX,AX
CALL DELAY
MOV DX,4B0H
WAIT1: £»Ö¸Ïò74LS244µØÖ·
IN AX,DX
TEST AX,1
JZ WAIT1
POP DX
IN AX,DX
MOV AH,0
RET
SEND: £»´®Ðз¢ËÍ×Ó³ÌÐò
PUSH AX
MOV DX,48AH
IN AX,DX
TEST AX,20H
JNZ SEND2
POP AX
JMP SEND
SEND2:
POP AX
MOV DX,480H
OUT DX,AX
RET
CODE ENDS
END START
ʵÑéÏÖÏ󣺿ɱäµçλÆ÷AN0Êä³öµÄÄ£ÄâÁ¿¾A/Dת»»ºóËùµÃµÄ8bitÊý¾ÝÏÔʾÔÚpc»úµÄ½ÓÊÕÇø¡£ÐýתµçλÆ÷£¬ÏÔʾµÄÊýÖµÒ²»áËæÖ®¸Ä±ä¡£
Æߣ¬ÊµÑéÐĵÃ
ͨ¹ý±¾´ÎʵÑ飬»ù±¾ÕÆÎÕÁËADת»»³ÌÐòµÄ±àд£¬°üÀ¨Í¨µÀµÄÑ¡Ôñ¡¢EOCµçƽµÄ¼ì²âºÍA/Dת»»×Ó³ÌÐòµÄ±àд£¬ÓÐÀûÓÚ֪ʶµÄ»ýÀÛ¡£Ê¹ÓÃ8250´®ÐнӿÚоƬ£¬ÓÃÉÏλ»ú¹Û²âת»»ºóµÄ8bitÊý×Ö£¬Ö±¹ÛÓÐȤ£¬µ±µ÷½ÚµçλÆ÷ʱ£¬PC»úÏÔʾµÄÖµ»áºÜ¿ìËæÖ®±ä»¯¡£×Ô¼º¶¯ÊÖÁ¬Ïߣ¬½øÒ»²½ÊìϤÁËADC0809оƬµÄµç·ÔÀíͼ£¬ÓëÀíÂÛ֪ʶÏà½áºÏ£¬Ñ§ÒÔÖÂÓá£