µÚÎåÕ Èí¼þÁ÷³Ì¿òͼ¼°µ÷ÊÔ½á¹û
5.1 Ö÷³ÌÐòÁ÷³Ìͼ ´íÎó´ÎÊýµ½6´Î£¿ ±¨¾¯ ·µ»Ø PIN±È½Ï-ÏàÇå³þPIN дPIN дʱ¼ä ÃÅÁåºô½Ð ¸²¸ÇÉÏ´ÎÊäÈëµÄÊýÊäÈëÊý¾ÝÓÐ6λ£¿ ÊÇÊý×Ö¼ü£¿ Êǹ¦Äܼü£¿ ת¶ÔÓ¦µÄ¹¦Äܼü Óмü°´Ï£¿ ¿ª»úÏÔʾHELLO ³õʼ»¯ ±£´æ¼üÅÌ OK ESC SET TIMESET CALL ÊäÈëÏÞÖÆ´ÎÊý¼õÒ» Çý¶¯µç´ÅËø ͼ3 Èí¼þÁ÷³Ìͼ
µÚ 12 Ò³ ¹² 33Ò³
5.2 ³ÌÐòÔ´´úÂë
;************************************************************ ;°´¼ü·Ö²¼ ; 0 1 2 3 ; 4 5 6 7 ; 8 9 -- -- ; CALL SET ESC OK ;P3.0Á¬½Ó»ÆµÆ£¬±íÊ¾ËøºÏ ;P3.1Á¬½ÓÂ̵ƣ¬±íÊ¾Ëø¿ªÆô
;P3.2Á¬½ÓºìµÆ£¬±íʾÊäÈëÁù´ÎÃÜÂë¾ùÓÐÎó
;------------------------------------------------------------------ ;ÊäÈë
;ÐÐÏßµÍ4λP1.0~P1.3 IN EQU P1
;ÁÐÏ߸ß4λP1.4~P1.7 ;Êä³ö
DOUT EQU P2
;ÏÔʾ ¶ÎÂëP0£¬Î»ÂëP2.0~P2.5 DCOUT EQU P2.6 ;µç´ÅÇý¶¯»ú¹¹ SPOUT EQU P2.7 ;±¨¾¯Çý¶¯ ;Êý¾Ý
RDS EQU 23H ;23H~26H£¬6¸öÊý¾Ý´æ´¢µ¥ÔªÀ´´æ·ÅÃÜÂë ;±êÖ¾
FLAGE1 EQU 21H ;Êý¾ÝÊäÈë±êÖ¾ TEMP EQU 22H
;------------------------------------------------------------------ ;Æ÷¼þµØÖ·¶¨Òå
AT24C02 EQU 0A0H ;0A0/0A1£¬W/R ;------------------------------------------------------------------ ;I2C×ÜÏß¼°ÐźÅÏß¶¨Òå SDA BIT P3.7 SCL BIT P3.6
;------------------------------------------------------------------ ;ΪI2CÈí¼þ°ü¶¨Òå ACK BIT 00H ;Ó¦´ð±ê־λ±äÁ¿ SLA DATA 40H ;Æ÷¼þ´ÓµØÖ·±äÁ¿ SUBA DATA 41H ;Æ÷¼þ×ÓµØÖ·±äÁ¿ NUMBYTE DATA 42H ;¶Á/дµÄ×Ö½ÚÊý±äÁ¿ ;------------------------------------------------------------------ ;³£Á¿¶¨Òå
µÚ 13 Ò³ ¹² 33Ò³
MTD EQU 30H ;·¢ËÍÊý¾Ý»º³åÇøÊ×Ö·£¨30H~35H£© MRD EQU 36H ;½ÓÊÜÊý¾Ý»º³åÇøÊ×Ö·£¨36H~3CH£© ;------------------------------------------------------------------
;****************************************************************** ;Ö÷³ÌÐò¿ªÊ¼
;****************************************************************** ORG 0000H LJMP ZSTART ORG 0040H
ZSTART: MOV SP,#70H ST0: MOV TEMP,#00H ;´íÎó¼Ç¼ MOV DPTR,#TAB0 ;½«TAB0µÄÊ×µØÖ·¸³¸øDPTR MOV R0,#RDS ;¸øR0¸³µØÖ·³õÖµ MOV R2,#6
CLR A ;Çå³þA
ST1: MOV @R0,A ;6¸öÊý¾Ý´æ´¢ÇøÇåÁã INC R0
DJNZ R2,ST1 MOV R2,#0
DSPL0: LCALL DISPLAY2 ;¿ª»úÏÔʾHELLO! LCALL DISPLAY2 DJNZ R2,DSPL0 DSPL1: LCALL DISPLAY2 LCALL DISPLAY2 DJNZ R2,DSPL1 MOV R0,#RDS ;Õ¼ÓÃR0
SETB P3.0 NOP CPL P3.0
;------------------------------------------------------------------- ;¼üÅÌɨÃè
K1: MOV IN,#0FEH ;µÚÒ»ÐÐ 111111110 NOP
MOV A,IN
CJNE A,#0FEH,K10S ;Óмü°´Ï£¬×ªK10 K2: MOV IN,#0FDH ;µÚ¶þÐÐ NOP
MOV A,IN
CJNE A,#0FDH,K20S ;Óмü°´Ï£¬×ªK20
µÚ 14 Ò³ ¹² 33Ò³
K3: MOV IN,#0FBH ;µÚÈýÐÐ NOP
MOV A,IN
CJNE A,#0FBH,K30S ;Óмü°´Ï£¬×ªK30 K4: MOV IN,#0F7H ;µÚËÄÐÐ NOP
MOV A,IN
CJNE A,#0F7H,K40S ;Óмü°´Ï£¬×ªK40 LCALL DISPLAY JNB FLAGE1.0,K1 LCALL SP_OUT SJMP K1 ;·µ»ØÑ»·É¨Ãè°´¼ü K10S: LJMP K10 K20S: LJMP K20 K30S: LJMP K30 K40S: LJMP K40 SJMP ST0 ;---Ö÷³ÌÐò½áÊø---
;--------------------------------------------------------------------- ;µÚÒ»ÐÐ
K10: MOV B,A ;Êý¾ÝÔÝ´æ LCALL DELAY10MS ;ÑÓʱȥ¸ÉÈÅ MOV A,IN ;ÔٴζÁÊäÈë CJNE A,B,K2 ;Åжϰ´¼üÊÇ·ñÕæµÄ°´Ï£¬·ñÔòÍ˳ö£¬¼ÌÐøÉ¨ÃèÏÂÒ»ÁÐ
LCALL DELAY10MS ;ÑÓʱȥ¸ÉÈÅ K11: MOV A,IN ;ÔٴζÁÊäÈë CJNE A,B,D11 ;Åжϰ´¼üÊÇ·ñµ¯Æð SJMP K11 ;µÈ´ýµ¯Æð ;ÅжÏÒ»ÐÐÖÐÊÇÄĸö¼ü°´Ï D11: MOV A,B ;ÅжÏÒ»ÐÐÖÐÊÇÄĸö°´¼ü°´Ï CJNE A,#7EH,D12 ;ÅжÏÊäÈëÊý¾ÝÊÇ·ñ´óÓÚ6¸ö CJNE R0,#29H,D11S ;Õ¼ÓÃR0£¬Êý¾Ý¸²¸Ç MOV R0,#RDS ;¸³¼üÖµ D11S: MOV @R0,#0C0H ;µØÖ·¼Ó1 INC R0 ;·µ»Ø¼ÌÐøÉ¨ÃèÏÂÁÐ LJMP K2
D12: CJNE A,#0BEH,D13 CJNE R0,#29H,D12S MOV R0,#RDS D12S: MOV @R0,#0F9H INC R0 LJMP K2
D13: CJNE A,#0DEH,D14
µÚ 15 Ò³ ¹² 33Ò³