Áù¡¢²Î¿¼ÎÄÏ×
[1] ÎâÕþ½. µ¥Æ¬»ú¿ØÖƺìÍâÏß·ÀµÁ±¨¾¯Æ÷[J]. ½õÖÝʦ·¶Ñ§ÔºÑ§±¨, 2001. [2] ËÎÎÄÐ÷. ´«¸ÐÆ÷Óë¼ì²â¼¼Êõ[M]. ±±¾©: ¸ßµÈ½ÌÓý³ö°æÉç, 2004.
[3] ÓàÎý´æ. µ¥Æ¬»úÔÀí¼°½Ó¿Ú¼¼Êõ[M]. Î÷°²: Î÷°²µç×ӿƼ¼´óѧ³ö°æÉç, 2000. [4] ÌÆÌÒ²¨, ³ÂÓñÁÖ. »ùÓÚAT89C51µÄÖÇÄÜÎÞÏß°²·À±¨¾¯Æ÷ [J]. µç×ÓÉè¼ÆÓ¦ÓÃ, 2003, 5(6): 49¡«51.
[5] ÀîÈ«Àû. µ¥Æ¬»úÔÀí¼°½Ó¿Ú¼¼Êõ[M]. ±±¾©: ±±¾©º½¿Õº½Ìì´óѧ³ö°æÉç, 2004. [6] Ѧ¾ùÒå, ÕÅÑå±ó. MCS-51ϵÁе¥Æ¬Î¢ÐͼÆËã»ú¼°ÆäÓ¦ÓÃ[M]. Î÷°²: Î÷°²½»Í¨´óѧ³ö°æÉç, 2005.
[7] Ðì°®¾û, ÅíÐ㻪. µ¥Æ¬»ú¸ß¼¶ÓïÑÔC51Ó¦ÓóÌÐòÉè¼Æ[M]. ±±¾©: ±±¾©º½¿Õº½Ìì´óѧ³ö°æÉç, 2006.
[8] ¿µ»ª¹â. µç×Ó¼¼Êõ»ù´¡£¨Ä£Äⲿ·Ö£©[M]. ±±¾©: ¸ßµÈ½ÌÓý³ö°æÉç, 2004.
- 13 -
¸½ ¼
¸½¼þ1£ºÔÀíͼ
- 14 -
¸½¼þ2£ºÊµÎïͼ
¸½¼þ3£º³ÌÐò
#include
#define uchar unsigned char #define uint unsigned int
//ÊýÂë¹Ü¶ÎÑ¡¶¨Òå 0 1 2 3 4 5 6 7 8 9 uchar code smg_du[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff}; //¶ÏÂë //ÊýÂë¹Üλѡ¶¨Òå
uchar code smg_we[]={0xe0,0xd0,0xb0,0x70};
uchar dis_smg[8] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8};
- 15 -
sbit smg_we1 = P3^4; //ÊýÂë¹Üλѡ¶¨Òå sbit smg_we2 = P3^5; sbit smg_we3 = P3^6; sbit smg_we4 = P3^7;
sbit c_send = P3^2; //³¬Éù²¨·¢Éä sbit c_recive = P3^3; //³¬Éù²¨½ÓÊÕ
uchar flag_hc_value; //³¬Éù²¨Öмä±äÁ¿
sbit beep = P2^3; //·äÃùÆ÷IO¿Ú¶¨Òå
bit flag_key_b_en,flag_key_set_en; //°´¼ü·äÃùÆ÷ʹÄÜ
uchar smg_i = 3; //ÏÔʾÊýÂë¹ÜµÄ¸öλÊý bit flag_300ms ;
bit key_500ms ;
long distance; //¾àÀë uint set_d; //¾àÀë
bit flag_csb_juli; //³¬Éù²¨³¬³öÁ¿³Ì
uint flag_time0; //ÓÃÀ´±£´æ¶¨Ê±Æ÷0µÄʱºòµÄ
// °´¼üµÄIO±äÁ¿µÄ¶¨Òå
uchar key_can; //°´¼üÖµµÄ±äÁ¿
uchar zd_break_en,zd_break_value; //×Ô¶¯Í˳öÉèÖýçÃæ uchar menu_shudu = 10; //ÓÃÀ´¿ØÖÆÁ¬¼ÓµÄËÙ¶È bit flag_lj_en; //°´¼üÁ¬¼ÓʹÄÜ
bit flag_lj_3_en; //°´¼üÁ¬3´ÎÁ¬¼ÓºóʹÄÜ ¼ÓµÄÊý¾ÍÔ½´óÁË uchar key_time,flag_value; //ÓÃ×öÁ¬¼ÓµÄÖмä±äÁ¿ uchar menu_1; //²Ëµ¥Éè¼ÆµÄ±äÁ¿ uchar a_a;
/***********************1msÑÓʱº¯Êý*****************************/ void delay_1ms(uint q) { uint i,j; for(i=0;i /***********************´¦Àí¾àÀ뺯Êý****************************/ - 16 -