单片机电子密码锁例程-LCD1602显示

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

/*************************eepromÓ¦ÓÃ-ÃÜÂëËø³ÌÐò****************************MCU£ºstc89c52rc****¾§Õñ£º11.0592M****±àÒë»·¾³£ºKeiluVision4****ʱ¼ä£º2015/12/18****ʵÏÖ¹¦ÄÜ£ºÊ¹Óõ¥Æ¬»úeepromÉÈÇø½«ÃÜÂë¼Ä´æÔÚeepromÉÈÇøʵÏÖµôµç²»¸Ä±äÃÜÂë****ÊäÈëÕýÈ·ÃÜÂëºóµã»÷Ent¼ü¿É´ò¿ª¼ÌµçÆ÷ÈôÃÜÂë´íÎóÏÔʾError´íÎóÈý´Î´¥·¢Éù¹â¾¯±¨****ÃÜÂëÐ޸ģºÊäÈëÕýÈ·ÃÜÂëºó°´Set¼ü½øÈëÃÜÂëÉèÖÃģʽÊäÈëÁùλÐÂÃÜÂëÃÜÂëÈô·ÇÁùλÔòÐèÒªÖØÐÂÊäÈë****ÃÜÂëΪÁùλÃÜÂëʱÐèÒªµÚ¶þ´ÎÊäÈëÃÜÂëµÚ¶þ´ÎÃÜÂë±ØÐëÓëµÚÒ»´ÎÏàͬÏàͬÔòÐ޸ijɹ¦****²»Í¬ÔòÐÞ¸Äʧ°ÜÈý´Î²»Í¬ºóÃÜÂëÐÞ¸Äʧ°ÜÌø³öÃÜÂëÐÞ¸Ä****ÃÜÂëÈ·ÈÏ£ºÔÚÊäÈëÃÜÂëģʽ°´È·ÈϼüÑéÖ¤ÃÜÂëÔÚÐÞ¸ÄÃÜÂëģʽ°´È·ÈϼüÑéÖ¤ÐÞ¸ÄÃÜÂëÊÇ·ñ·ûºÏÒªÇó****È¡Ïû¼ü£ºÔÚÊäÈëÃÜÂëģʽ°´È¡Ïû¼üÇå³ýÊäÈëÔÚÃÜÂëÐÞ¸Äģʽ°´È¡Ïû¼üÍ˳öÃÜÂëÐÞ¸ÄÃÜÂë»Ö¸´³õʼÃÜÂë****000000****eeprom£ºµ¥Æ¬»úµÄµç¿É²Áдֻ¶Á³ÌÐò¿ÉÒÔµôµç²»¶ªÊ§Êý¾Ý****³õʼÃÜÂ룺³õʼÃÜÂëΪ000000ÒѾ­´æÈëeepromÖÐ****¼üÅ̲¼¾Ö£º****____________________****|1||2||3||.|****____________________****|4||5||6||Set|****____________________****|7||8||9||Esc|****____________________****|*||0||#||Ent|****____________________*/#includestc89c52.h//Í·Îļþ#includeintrins.hsbitRS=P2^0;//¶¨Òå¿ÚsbitRW=P2^1;sbitEN=P2^2;sbitM=P0^0;sbitBuzz=P0^1;#defineRS_CLRRS=0//ºê¶¨Òå#defineRS_SETRS=1#defineRW_CLRRW=0#defineRW_SETRW=1#defineEN_CLREN=0#defineEN_SETEN=1#defineDataPortP1unsignedcharset_mark;unsignedcharx,e,b;unsignedcharkey;unsignedcharin_word1=99,in_word2=99,in_word3=99,in_word4=99,in_word5=99,in_word6=99;unsignedcharset_word1,set_word2,set_word3,set_word4,set_word5,set_word6;unsignedchars1,s2,s3,s4,s5,s6;unsignedcharcodetable[]={'0','1','2','3','4','5','6','7','8','9','','*','#','.'};voidDelayUs2x(unsignedchart)//΢ÃëÑÓʱº¯Êý{while(--t);}voidDelayMs(unsignedchart)//ºÁÃëÑÓʱº¯Êý{while(t--){DelayUs2x(245);DelayUs2x(245);}}voidDelay1s(){DelayMs(200);DelayMs(200);DelayMs(200);DelayMs(200);DelayMs(200);}voidLCD_Write_Com(unsignedcharcom)//дÈëÃüÁÊý{//while(LCD_Check_Busy());DelayMs(5);RS_CLR;RW_CLR;EN_SET;DataPort=com;_nop_();EN_CLR;}voidLCD_Write_Data(unsignedcharData)//дÈëÊý¾Ýº¯Êý{//while(LCD_Check_Busy());DelayMs(5);RS_SET;RW_CLR;EN_SET;DataPort=Data;_nop_();EN_CLR;}voidLCD_Clear(void)//ÇåÆÁº¯Êý{LCD_Write_Com(0x01);DelayMs(5);}voidLCD_Init(void)//³õʼ»¯º¯Êý{LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);LCD_Write_Com(0x0b);LCD_Write_Com(0x01);LCD_Write_Com(0x06);DelayMs(5);LCD_Write_Com(0x0c);}/*------------------------------------------------дÈë×Ö·û´®º¯Êý------------------------------------------------*/voidLCD_Write_String(unsignedcharx,unsignedchary,unsignedchar*s){if(y==0){LCD_Write_Com(0x80+x);//±íʾµÚÒ»ÐÐ}else{LCD_Write_Com(0xC0+x);//±íʾµÚ¶þÐÐ}while(*s){LCD_Write_Data(*s);s++;}}/*------------------------------------------------дÈë×Ö·ûº¯Êý------------------------------------------------*/voidLCD_Write_Char(unsignedcharx,unsignedchary,unsignedcharData){if(y==0){LCD_Write_Com(0x80+x);}else{LCD_Write_Com(0xC0+x);}LCD_Write_Data(Data);}/*************************************************eeprom²Á³ý**************************************************/voideeprom_E(unsignedintaddr){ISP_ADDRH=addr8;ISP_ADDRL=addr;ISP_CONTR=0x81;ISP_CMD=0X03;ISP_TRIG=0X46;ISP_TRIG=0XB9;_nop_();_nop_();ISP_CONTR=0x00;ISP_CMD=0x00;ISP_TRIG=0x00;ISP_ADDRH=0x80;ISP_ADDRL=0x00;}/*************************************************eepromдÈë*************************************************/voideeprom_W(unsignedintaddr,unsignedchardat){ISP_ADDRH=addr8;ISP_ADDRL=addr;ISP_CONTR=0x81;ISP_CMD=0X02;ISP_DATA=dat;ISP_TRIG=0X46;ISP_TRIG=0XB9;_nop_();_nop_();ISP_CONTR=0x00;ISP_CMD=0x00;ISP_TRIG=0x00;ISP_ADDRH=0x80;ISP_ADDRL=0x00;}/*************************************************eeprom¶ÁÈ¡*************************************************/unsignedchareeprom_R(unsignedintaddr){unsignedchardat;ISP_ADDRH=addr8;ISP_ADDRL=addr;ISP_CONTR=0x81;ISP_CMD=0X01;ISP_TRIG=0X46;ISP_TRIG=0XB9;_nop_();_nop_();ISP_CONTR=0x00;ISP_CMD=0x00;ISP_TRIG=0x00;ISP_ADDRH=0x80;ISP_ADDRL=0x00;dat=ISP_DATA;return(dat);}/******************************************************½«ÃÜÂëдÈëeeprom*****************************************************/voidset_to_eeprom(){eeprom_E(0x2000);DelayMs(10);eeprom_W(0x2001,set_word1);eeprom_W(0x2002,set_word2);eeprom_W(0x2003,set_word3);eeprom_W(0x2004,set_word4);eeprom_W(0x2005,set_word5);eeprom_W(0x2006,set_word6);}voidOpen()//¿ªËøº¯Êý{unsignedcharh;M=0;for(h=40;h0;h--)DelayMs(200);M=1;}voidAlarm()//¾¯±¨º¯Êý{Buzz=0;DelayMs(220);DelayMs(220);Buzz=1;DelayMs(220);}voidIN_word(unsignedchara){LCD_Write_Char(key,1,'*');if(key==0)in_word1=a;if(key==1)in_word2=a;if(key==2)in_word3=a;if(key==3)in_word4=a;if(key==4)in_word5=a;if(key==5)in_word6=a;key++;}voidSET_word(unsignedchara){LCD_Write_Char(key,1,table[a]);if(key==0)in_word1=a;if(key==1)in_word2=a;if(key==2)in_word3=a;if(key==3)in_word4=a;if(key==4)in_word5=a;if(key==5)in_word6=a;key++;}voidIN_init(){in_word1=99;in_word2=99;in_word3=99;in_word4=99;in_word5=99;in_word6=99;}voidkeycan(){unsignedcharg,t;P3=0xfe;t=P3;t=t&0xf0;if(t!=0xf0){DelayMs(10);t

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功