±ÏÒµÉè¼Æ£¨ÂÛÎÄ£©-»ùÓÚMC51µ¥Æ¬»úµÄ¼òÒ×¼ÆËãÆ÷Éè¼Æ - ͼÎÄ ÁªÏµ¿Í·þ

·¢²¼Ê±¼ä : ÐÇÆÚÒ» ÎÄÕ±ÏÒµÉè¼Æ£¨ÂÛÎÄ£©-»ùÓÚMC51µ¥Æ¬»úµÄ¼òÒ×¼ÆËãÆ÷Éè¼Æ - ͼÎĸüÐÂÍê±Ï¿ªÊ¼ÔĶÁ

µÚ¶þÕ ·½°¸ÂÛÖ¤

2.1 ·½°¸¹¹Ë¼

±¾Éè¼Æ¿ÉÒÔ²ÉÓÃÁ½ÖÖ·½°¸£¬Ò»ÖÖÊÇÒÔFPGAΪºËÐÄ´¦ÀíоƬ£¬Å䱸ÏàÓ¦µÄÍâÉ裻ÁíÍâÒ»ÖÖÊÇÒÔAT89S52´¦ÀíÆ÷£¬Å䱸ÏàÓ¦µÄÍâÉè¡£ 1¡¢·½°¸Ò»£º²ÉÓÃFPGA¿ØÖÆ

FPGAÊÇÒ»ÖÖ¸ßÃܶȵĿɱà³ÌÂß¼­Æ÷¼þ,×Ô´ÓXilinx¹«Ë¾1985ÄêÍƳöµÚһƬFPGAÒÔÀ´,FPGAµÄ¼¯³ÉÃܶȺÍÐÔÄÜÌá¸ßºÜ¿ì,Æ伯³ÉÃܶÈ×î¸ß´ï500ÍòÃÅ/ƬÒÔÉÏ,ϵͳÐÔÄÜ¿É´ï200MHz¡£ÓÉÓÚFPGAÆ÷¼þ¼¯³É¶È¸ß,·½±ãÒ×ÓÃ,¿ª·¢ºÍÉÏÊÐÖÜÆÚ¶Ì,ÔÚÊý×ÖÉè¼ÆºÍµç×ÓÉú²úÖеõ½Ñ¸ËÙÆÕ¼°ºÍÓ¦ÓÃ,²¢Ò»¶ÈÔÚ¸ßÃܶȵĿɱà³ÌÂß¼­Æ÷¼þÁìÓòÖжÀÕ¼÷¡Í·¡£

µ«ÊǶø»ùÓÚ SRAM±à³ÌµÄFPGA,Æä±à³ÌÐÅÏ¢Ðè´æ·ÅÔÚÍⲿ´æ´¢Æ÷ÉÏ ,ÐèÍⲿ´æ´¢Æ÷оƬ ,ÇÒʹÓ÷½·¨¸´ÔÓ ,±£ÃÜÐԲ¶øÆä¶ÔÓÚÒ»¸ö¼òµ¥µÄ¼ÆËãÆ÷¶øÑÔ£¬ÊµÓÃFPGAÓеã´ó²ÄСÓ㬳ɱ¾Ì«¸ß¡£

2¡¢·½°¸¶þ£º²ÉÓÃAT89S52

µ¥Æ¬»úÊǵ¥Æ¬Î¢ÐÍ»úµÄ¼ò³Æ£¬¹ÊÓÖ³ÆΪ΢¿ØÖÆÆ÷MCU£¨Micro Control Unit£©¡£Í¨³£Óɵ¥¿é¼¯³Éµç·оƬ×é³É£¬ÄÚ²¿°üº¬ÓмÆËã»úµÄ»ù±¾¹¦Äܲ¿¼þ£ºÖÐÑë´¦ÀíÆ÷CPU£¬´æ´¢Æ÷ºÍI/O½Ó¿Úµç·µÈ¡£Òò´Ë£¬µ¥Æ¬»úÖ»ÒªºÍÊʵ±µÄÈí¼þ¼°ÍⲿÉ豸Ïà½áºÏ£¬±ã¿É³ÉΪһ¸öµ¥Æ¬»ú¿ØÖÆϵͳ¡£µ¥Æ¬»ú¹ã·ºÓÃÓÚÖÇÄܲúÆ·£¬ÖÇÄÜÒÇ±í£¬²â¿Ø¼¼Êõ£¬ÖÇÄܽӿڵȣ¬¾ßÓвÙ×÷¼òµ¥£¬ÊµÓ÷½±ã£¬¼Û¸ñ±ãÒ˵ÈÓŵ㣬¶øÆäÖÐAT89S52ÒÔMCS-51ΪÄںˣ¬Êǵ¥Æ¬»úÖÐ×îµäÐ͵Ĵú±í£¬Ó¦ÓÃÓÚ¸÷ÖÖ¿ØÖÆÁìÓò¡£

2.2 ·½°¸±È½ÏÓëÑ¡Ôñ

ͨ¹ýÒÔÉÏÁ½ÖÖ·½°¸ÂÛÖ¤ºÍ±È½Ï£¬´ÓÉè¼ÆµÄʵÓÃÐÔ£¬·½±ãÐԺͳɱ¾³ö·¢£¬Ñ¡ÔñÁËÒÔAT89S52µ¥Æ¬»ú×÷ΪÖÐÑë´¦Àíµ¥Ôª½øÐмÆËãÆ÷µÄÉè¼Æ£¬ÕâÑùÉè¼ÆÄܹ»ÊµÏÖ¶ÔÁùλ¸¡µãÊýµÄ¼Ó¼õºÍÈýλ¸¡µãÊýµÄ³Ë³ýÔËËã¡£

2

µÚÈýÕ ϵͳӲ¼þÉè¼Æ¼°ËµÃ÷

3.1ϵͳ×é³É¼°×ÜÌå¿òͼ

ͼ3.1 ϵͳ×é³É¼°×ÜÌå¿òͼ

LCDÒº¾§ÏÔʾÆÁÄ£¿é AT89S52 Ö÷¿ØÖÆÄ£ ÓëÃÅÄ£¿é µçÔ´Ä£¿é ¿é ±àÂë¼üÅÌÄ£¿é

3.2Ôª¼þ¼ò½é

3.2.1 AT89S52Ìصã

ͼ3.2.1-1 µ¥Æ¬»úAT89S52

1¡¢Ö÷ÒªÐÔÄÜ£º

(1) ? 8031 CPUÓëMCS-51 ¼æÈÝ

3

? 8K×ֽڿɱà³ÌFLASH´æ´¢Æ÷(ÊÙÃü£º1000д/²ÁÑ­»·) ? È«¾²Ì¬¹¤×÷£º0Hz-33MHz ? Èý¼¶¼ÓÃܳÌÐò´æ´¢Æ÷ ? 128*8λÄÚ²¿RAM ? 32Ìõ¿É±à³ÌI/OÏß ? Èý¸ö16λ¶¨Ê±Æ÷/¼ÆÊýÆ÷ ? °Ë¸öÖжÏÔ´

? È«Ë«¹¤UART´®ÐÐͨµÀ

? µÍ¹¦ºÄµÄÏÐÖú͵ôµçģʽ ? µôµçºóÖжϿɻ½ÐÑ ? ¿´ÃŹ·¶¨Ê±Æ÷ ? Ë«Êý¾ÝÖ¸Õë ? µôµç±êʶ·û

? ƬÄÚÕñµ´Æ÷ºÍʱÖÓµç· (2) ¹Ü½Å˵Ã÷£º VCC£º¹©µçµçѹ¡£

GND£º½ÓµØ¡£

2¡¢AT89S52µÄ¹¦ÄÜÌØÐÔÃèÊö

AT89S52 ÊÇÒ»Öֵ͹¦ºÄ¡¢¸ßÐÔÄÜCMOS8λ΢¿ØÖÆÆ÷£¬¾ßÓÐ 8K ÔÚϵͳ¿É±à³ÌFlash ´æ´¢Æ÷¡£Ê¹ÓÃAtmel ¹«Ë¾¸ßÃÜ¶È·Ç Ò×ʧÐÔ´æ´¢Æ÷¼¼ÊõÖÆÔ죬Ó빤ҵ80C51 ²úÆ·Ö¸ÁîºÍÒý½ÅÍê È«¼æÈÝ¡£Æ¬ÉÏFlashÔÊÐí³ÌÐò´æ´¢Æ÷ÔÚϵͳ¿É±à³Ì£¬ÒàÊÊÓÚ ³£¹æ±à³ÌÆ÷¡£ÔÚµ¥Ð¾Æ¬ÉÏ£¬ÓµÓÐÁéÇɵÄ8 λCPU ºÍÔÚϵͳ ¿É±à³ÌFlash£¬Ê¹µÃAT89S52ΪÖÚ¶àǶÈëʽ¿ØÖÆÓ¦ÓÃϵͳÌá ¹©¸ßÁé»î¡¢³¬ÓÐЧµÄ½â¾ö·½°¸¡£

AT89S52¾ßÓÐÒÔϱê×¼¹¦ÄÜ£º 8k×Ö½ÚFlash£¬256×Ö½ÚRAM£¬ 32 λI/O ¿ÚÏߣ¬¿´ÃŹ·¶¨Ê±Æ÷£¬2 ¸öÊý¾ÝÖ¸Õ룬Èý¸ö16 λ ¶¨Ê±Æ÷/¼ÆÊýÆ÷£¬Ò»¸ö6ÏòÁ¿2¼¶ÖжϽṹ£¬È«Ë«¹¤´®Ðпڣ¬ ƬÄÚ¾§Õñ¼°Ê±Öӵ緡£

´ËÍ⣬ AT89S52 ¿É½µÖÁ0Hz ¾²Ì¬Âß ¼­²Ù×÷£¬Ö§³Ö2ÖÖÈí¼þ¿ÉÑ¡Ôñ½Úµçģʽ¡£¿ÕÏÐģʽÏ£¬CPU Í£Ö¹¹¤×÷£¬ÔÊÐíRAM¡¢¶¨Ê±Æ÷/¼ÆÊýÆ÷¡¢´®¿Ú¡¢ÖжϼÌÐø¹¤ ×÷¡£µôµç±£»¤·½Ê½Ï£¬RAMÄÚÈݱ»±£´æ£¬Õñµ´Æ÷±»¶³½á£¬ µ¥Æ¬»úÒ»Çй¤×÷Í£Ö¹£¬Ö±µ½ÏÂÒ»¸öÖжϻòÓ²¼þ¸´Î»ÎªÖ¹¡£8 λ΢¿ØÖÆÆ÷ 8K ×Ö½ÚÔÚϵͳ¿É±à³Ì Flash¡£Í¬Ê±¸ÃоƬ»¹¾ßÓÐPDIP¡¢TQFPºÍPLCCµÈÈýÖÖ·â×°ÐÎʽ£¬ÒÔÊÊÓ¦²»Í¬²úÆ·µÄÐèÇó¡£

4

3¡¢AT89S52Òý½Å¹¦ÄÜ

AT89S52 µ¥Æ¬»úΪ40 Òý½ÅоƬ¼ûͼ3.2.1-2¡£

ͼ3.2.1-2 AT89S52Òý½Åͼ

£¨1£©¿ÚÏߣºP0¡¢P1¡¢P2¡¢P3 ¹²Ëĸö°Ëλ¿Ú¡£

P0 ¿Ú£ºP0¿ÚÊÇÒ»¸ö8λ©¼«¿ªÂ·µÄË«ÏòI/O¿Ú¡£×÷ΪÊä³ö¿Ú£¬Ã¿Î»ÄÜÇý¶¯8¸öTTLÂß¼­µçƽ¡£

¶ÔP0¶Ë¿Úд¡°1¡±Ê±£¬Òý½ÅÓÃ×÷¸ß×迹ÊäÈë¡£

µ±·ÃÎÊÍⲿ³ÌÐòºÍÊý¾Ý´æ´¢Æ÷ʱ£¬P0¿ÚÒ²±»×÷ΪµÍ8λµØÖ·/Êý¾Ý¸´Óá£ÔÚÕâÖÖģʽÏ£¬P0²»¾ßÓÐÄÚ²¿ÉÏÀ­µç×è¡£

ÔÚflash±à³Ìʱ£¬P0¿ÚÒ²ÓÃÀ´½ÓÊÕÖ¸Áî×Ö½Ú£»ÔÚ³ÌÐòУÑéʱ£¬Êä³öÖ¸Áî×Ö½Ú¡£³ÌÐòУÑéʱ£¬ÐèÒªÍⲿÉÏÀ­µç×è¡£

P1¿Ú£ºP1 ¿ÚÊÇÒ»¸ö¾ßÓÐÄÚ²¿ÉÏÀ­µç×èµÄ8 λ˫ÏòI/O ¿Ú£¬p1 Êä³ö»º³åÆ÷ÄÜÇý¶¯4 ¸öTTL Âß¼­µçƽ¡£¶ÔP1 ¶Ë¿Úд¡°1¡±Ê±£¬ÄÚ²¿ÉÏÀ­µç×è°Ñ¶Ë¿ÚÀ­¸ß£¬´Ëʱ¿ÉÒÔ×÷ΪÊäÈë¿ÚʹÓá£×÷ΪÊäÈëʹÓÃʱ£¬±»ÍⲿÀ­µÍµÄÒý½ÅÓÉÓÚÄÚ²¿µç×èµÄÔ­Òò£¬½«Êä³öµçÁ÷£¨IIL£©¡£ ´ËÍ⣬P1.0ºÍP1.1·Ö±ð×÷¶¨Ê±Æ÷/¼ÆÊýÆ÷2µÄÍⲿ¼ÆÊýÊäÈ루P1.0/T2£©ºÍ¶¨Ê±Æ÷/¼ÆÊýÆ÷2µÄ´¥·¢ÊäÈ루P1.1/T2EX£©£¬¾ßÌåÈçϱíËùʾ¡£

5