|
楼主 |
发表于 2011-2-11 17:04:31
|
显示全部楼层
刚看了参赛规则,要求要完整电路图与软件清单。软件《上》
1 ; 2010shizhong.ASM 2010/08/10 shantou lishuzhuang zhongqu 13 204
2 ; XiaoXiaoChun LED384 DS1302
3 ;===============================================
4 ;DS1302 RESET
0020 5 czws data 20h ;串行操作位计数
0021 6 czzj data 21h ;串行操作字节数
0022 7 czzl data 22h ;操作指令地址
0023 8 xrsjdz data 23h ;写数据地址
0026 9 dcsjdz data 26h ;读数据地址
10 ;R0=写入操作数据间址
11 ;R1=读出操作数据间址
00B0 12 DS1302clk bit P3.0
00B1 13 DS1302io bit P3.1
00B2 14 DS1302rst bit p3.2
15 ;***********************************************
007F 16 intasj bit 2fh.7 ;7fh
007E 17 pd_dykg bit 2fh.6 ;7eh
0009 18 xsdw equ 09h
0010 19 xsout equ 10h
0012 20 xssj equ 12h
0013 21 a_tbj equ 13h
0014 22 a_tcbj equ 14h
0015 23 a_30bj equ 15h
0016 24 a_dybj equ 16h
0017 25 ms equ 17h
0018 26 s equ ms+1
0019 27 m equ s+1
001A 28 t equ m+1
0030 29 xst equ 30h
0036 30 xt equ xst+06h
003C 31 xdw1 equ xt+06h
003E 32 xsm equ xdw1+02h
0044 33 xm equ xsm+06h
004A 34 xdw2 equ xm+06h
004C 35 xss equ xdw2+02h
0052 36 xs equ xss+06h
00B3 37 a_30 bit p3.3
00B4 38 a_t bit p3.4
00B5 39 a_dykg bit p3.5
00B6 40 dykg bit p3.6
41 ;---------------------------------------
0000 42 org 0000h
0000 011D 43 ajmp ks_setint
44 ;----------------------------------------
000B 45 org 000bh
000B 758A07 46 mov tl0,#007h
000E 758CDC 47 mov th0,#0dch ;10ms ( CPU=11.0592M )
0011 D27F 48 setb intasj
0013 32 49 reti
50 ;----------------------------------------
001B 51 org 001bh
001B 014C 52 ajmp intb
53 ;----------------------------------------
001D 7FFF 54 ks_setint: mov R7,#0ffh
001F 7EFF 55 cs0: MOV r6,#0ffh
0021 00 56 cs1: nop
0022 00 57 nop
0023 00 58 nop
0024 DEFB 59 djnz r6,cs1
0026 DFF7 60 djnz r7,cs0
0028 D288 61 setb it0 ;IT0='1'
002A 758901 62 mov tmod,#01H ;T0=16wjs T1=13wjs
002D 758A00 63 mov tl0,#00h
0030 758C00 64 mov th0,#00h
0033 758167 65 mov sp,#067h
0036 D28C 66 setb tr0
0038 D2A9 67 setb et0
003A C2B9 68 clr pt0
003C 758D00 69 mov th1,#00h
003F 758B00 70 mov tl1,#00h
0042 D28E 71 setb tr1
0044 D2AB 72 setb et1
0046 D2BB 73 setb pt1
0048 D2AF 74 setb ea
004A 0196 75 ajmp t2887
76 ;***************************************************
004C 758B00 77 intb: mov tl1,#00
004F 758DF3 78 mov th1,#0f3h ;( LED = 40 )
0052 C0E0 79 push acc
0054 C0D0 80 push psw
0056 C000 81 push 00h ;R0
0058 758000 82 mov p0,#00h
005B E509 83 mov a,xsdw
005D B4F116 84 cjne a,#0f1h,intb1
0060 A812 85 mov r0,xssj
0062 851090 86 mov p1,xsout
0065 8680 87 mov p0,@r0
0067 E510 88 mov a,xsout
0069 23 89 rl a
006A F510 90 mov xsout,a
006C 0512 91 inc xssj
006E B4FE1E 92 cjne a,#11111110b,intb3
0071 7509D0 93 mov xsdw,#0d0h
0074 018F 94 ajmp intb3
0076 7590FF 95 intb1: mov p1,#0ffh
0079 8509A0 96 mov p2,xsdw
007C A812 97 mov r0,xssj
007E 8680 98 mov p0,@r0
0080 0512 99 inc xssj
0082 0509 100 inc xsdw
0084 E509 101 mov a,xsdw
0086 B4F106 102 cjne a,#0f1h,intb3
0089 8509A0 103 mov p2,xsdw
008C 751230 104 mov xssj,#030h
008F 105 intb3: ; mov p0,xrsjdz
008F D000 106 pop 00h
0091 D0D0 107 pop psw
0093 D0E0 108 pop acc
0095 32 109 reti
110 ;------------------------------------
0096 7F50 111 t2887: mov r7,#50h
0098 7810 112 mov r0,#10h
009A 7600 113 t28870: mov @r0,#0h
009C 08 114 inc r0
009D DFFB 115 djnz r7,t28870
009F 7509F1 116 mov xsdw,#0f1h
00A2 751230 117 mov xssj,#030h
00A5 7510FE 118 mov xsout,#11111110b
00A8 7466 119 mov a,#66h ;显示 :
00AA 793C 120 mov r1,#xdw1
00AC F7 121 mov @r1,a
00AD 09 122 inc r1
00AE F7 123 mov @r1,a
00AF 794A 124 mov r1,#xdw2
00B1 F7 125 mov @r1,a
00B2 09 126 inc r1
00B3 F7 127 mov @r1,a
00B4 3156 128 acall reset1302
00B6 11D4 129 acall bcd
00B8 307FFD 130 t2887a: jnb intasj,t2887a
00BB C27F 131 clr intasj
00BD 5189 132 acall aj1
00BF 0517 133 inc ms
00C1 E517 134 mov a,ms
00C3 B464F2 135 cjne a,#100,t2887a
00C6 751700 136 mov ms,#0h
00C9 5101 137 acall dc1302cz
00CB 11D4 138 acall bcd
00CD 80E9 139 jmp t2887a
00CF E512 140 t2887d: mov a,xssj
00D1 B430FB 141 cjne a,#030h,t2887d
142 ;-----------------------------------
00D4 90010B 143 bcd: mov dptr,#sj
00D7 7952 144 mov r1,#xs
00D9 E518 145 mov a,s
00DB 540F 146 anl a,#0fh
00DD 3147 147 acall lde384ss
00DF 794C 148 mov r1,#xss
00E1 E518 149 mov a,s
00E3 C4 150 swap a
00E4 540F 151 anl a,#0fh
00E6 3147 152 acall lde384ss
00E8 7944 153 mov r1,#xm
00EA E519 154 mov a,m
00EC 540F 155 anl a,#0fh
00EE 3147 156 acall lde384ss
00F0 793E 157 mov r1,#xsm
00F2 E519 158 mov a,m
00F4 C4 159 swap a
00F5 540F 160 anl a,#0fh
00F7 3147 161 acall lde384ss
00F9 7936 162 mov r1,#xt
00FB E51A 163 mov a,t
00FD 540F 164 anl a,#0fh
00FF 3147 165 acall lde384ss
0101 7930 166 mov r1,#xst
0103 E51A 167 mov a,t
0105 C4 168 swap a
0106 540F 169 anl a,#0fh
0108 3147 170 acall lde384ss
010A 22 171 ret
010B 7EFF8181 172 sj: db 07EH,0FFH,081H,081H,0FFH,07EH ;0
010F FF7E
0111 0082FFFF 173 db 000H,082H,0FFH,0FFH,080H,000H ;1
0115 8000
0117 C6E7B199 174 db 0C6H,0E7H,0B1H,099H,08FH,0C6H ;2
011B 8FC6
011D 42C38989 175 db 042H,0C3H,089H,089H,0FFH,076H ;3
0121 FF76
0123 382CA6FF 176 db 038H,02CH,0A6H,0FFH,0FFH,0A0H ;4
0127 FFA0
0129 4FCF8989 177 db 04FH,0CFH,089H,089H,0F9H,071H ;5
012D F971
012F 7EFF8989 178 db 07EH,0FFH,089H,089H,0FBH,072H ;6
0133 FB72
0135 0303F9FF 179 db 003H,003H,0F9H,0FFH,007H,001H ;7
0139 0701
013B 76FF8989 180 db 076H,0FFH,089H,089H,0FFH,076H ;8
013F FF76
0141 4EDF9191 181 db 04EH,0DFH,091H,091H,0FFH,07EH ;9
0145 FF7E
182 ;--------------------------------------------
0147 75F006 183 lde384ss: mov b,#06h
014A A4 184 mul ab
014B FE 185 mov R6,a
014C 7F06 186 mov r7,#06h
014E 93 187 lde384r7: movc a,@a+dptr
188 ; cpl a
014F F7 189 mov @r1,a
0150 0E 190 inc r6
0151 09 191 inc r1
0152 EE 192 mov a,r6
0153 DFF9 193 djnz r7,lde384r7
0155 22 194 ret
195 ;====== 判断DS1302芯片是否掉电 D1=07 D3=08 D5=09 ===
0156 196 reset1302:
0156 7522D1 197 mov czzl,#0d1h
0159 752101 198 mov czzj,#01h
015C 7926 199 mov r1,#dcsjdz
015E 5155 200 acall DS1302dc
0160 B4071D 201 cjne a,#07h,resetDS1302
0163 7522D3 202 mov czzl,#0d3h
0166 752101 203 mov czzj,#01h
0169 7926 204 mov r1,#dcsjdz
016B 5155 205 acall DS1302dc
016D B40810 206 cjne a,#08h,resetDS1302
0170 7522D5 207 mov czzl,#0d5h
0173 752101 208 mov czzj,#01h
0176 7926 209 mov r1,#dcsjdz
0178 5155 210 acall DS1302dc
017A B40903 211 cjne a,#09h,resetDS1302
017D 5101 212 acall dc1302cz
017F 22 213 ret |
|