?? 1602shizhong.lss
字號:
void LCD_write_string(unsigned char X,unsigned char Y,unsigned char *s) //列x=0~15,行y=0,1
{
LCD_set_xy( X, Y ); //寫地址
while (*s) // 寫顯示字符
178: 88 81 ld r24, Y
17a: 88 23 and r24, r24
17c: d1 f7 brne .-12 ; 0x172 <LCD_write_string+0xc>
{
LCD_write_data(*s);
s++;
}
}
17e: df 91 pop r29
180: cf 91 pop r28
182: 08 95 ret
00000184 <LCD_write_char>:
void LCD_write_char(unsigned char X,unsigned char Y,unsigned char data) //列x=0~15,行y=0,1
{
184: 1f 93 push r17
186: 14 2f mov r17, r20
LCD_set_xy( X, Y ); //寫地址
188: 0e 94 ab 00 call 0x156 ; 0x156 <LCD_set_xy>
LCD_write_data(data);
18c: 81 2f mov r24, r17
18e: 0e 94 8c 00 call 0x118 ; 0x118 <LCD_write_data>
}
192: 1f 91 pop r17
194: 08 95 ret
00000196 <LCD_time>:
#define _time_H
#include"LCD.h"
void LCD_time(char H,char M,char S,char Day,char Month,char Year,char c)
{
196: bf 92 push r11
198: cf 92 push r12
19a: df 92 push r13
19c: ef 92 push r14
19e: ff 92 push r15
1a0: 0f 93 push r16
1a2: 1f 93 push r17
1a4: df 93 push r29
1a6: cf 93 push r28
1a8: cd b7 in r28, 0x3d ; 61
1aa: de b7 in r29, 0x3e ; 62
1ac: aa 97 sbiw r28, 0x2a ; 42
1ae: 0f b6 in r0, 0x3f ; 63
1b0: f8 94 cli
1b2: de bf out 0x3e, r29 ; 62
1b4: 0f be out 0x3f, r0 ; 63
1b6: cd bf out 0x3d, r28 ; 61
1b8: 18 2f mov r17, r24
1ba: f6 2e mov r15, r22
1bc: d4 2e mov r13, r20
1be: b2 2e mov r11, r18
char week[7][6]={"MON","TUES","WEDN","THURS","FRI","SATUR","SUN"};
1c0: fe 01 movw r30, r28
1c2: 31 96 adiw r30, 0x01 ; 1
1c4: 8a e2 ldi r24, 0x2A ; 42
1c6: df 01 movw r26, r30
1c8: 1d 92 st X+, r1
1ca: 8a 95 dec r24
1cc: e9 f7 brne .-6 ; 0x1c8 <LCD_time+0x32>
1ce: 8d e4 ldi r24, 0x4D ; 77
1d0: 9f e4 ldi r25, 0x4F ; 79
1d2: ae e4 ldi r26, 0x4E ; 78
1d4: b0 e0 ldi r27, 0x00 ; 0
1d6: 89 83 std Y+1, r24 ; 0x01
1d8: 9a 83 std Y+2, r25 ; 0x02
1da: ab 83 std Y+3, r26 ; 0x03
1dc: bc 83 std Y+4, r27 ; 0x04
1de: 1e 82 std Y+6, r1 ; 0x06
1e0: 1d 82 std Y+5, r1 ; 0x05
1e2: de 01 movw r26, r28
1e4: 17 96 adiw r26, 0x07 ; 7
1e6: e0 e6 ldi r30, 0x60 ; 96
1e8: f0 e0 ldi r31, 0x00 ; 0
1ea: 85 e0 ldi r24, 0x05 ; 5
1ec: 01 90 ld r0, Z+
1ee: 0d 92 st X+, r0
1f0: 81 50 subi r24, 0x01 ; 1
1f2: e1 f7 brne .-8 ; 0x1ec <LCD_time+0x56>
1f4: 1c 86 std Y+12, r1 ; 0x0c
1f6: de 01 movw r26, r28
1f8: 1d 96 adiw r26, 0x0d ; 13
1fa: e6 e6 ldi r30, 0x66 ; 102
1fc: f0 e0 ldi r31, 0x00 ; 0
1fe: 85 e0 ldi r24, 0x05 ; 5
200: 01 90 ld r0, Z+
202: 0d 92 st X+, r0
204: 81 50 subi r24, 0x01 ; 1
206: e1 f7 brne .-8 ; 0x200 <LCD_time+0x6a>
208: 1a 8a std Y+18, r1 ; 0x12
20a: de 01 movw r26, r28
20c: 53 96 adiw r26, 0x13 ; 19
20e: ec e6 ldi r30, 0x6C ; 108
210: f0 e0 ldi r31, 0x00 ; 0
212: 86 e0 ldi r24, 0x06 ; 6
214: 01 90 ld r0, Z+
216: 0d 92 st X+, r0
218: 81 50 subi r24, 0x01 ; 1
21a: e1 f7 brne .-8 ; 0x214 <LCD_time+0x7e>
21c: 86 e4 ldi r24, 0x46 ; 70
21e: 92 e5 ldi r25, 0x52 ; 82
220: a9 e4 ldi r26, 0x49 ; 73
222: b0 e0 ldi r27, 0x00 ; 0
224: 89 8f std Y+25, r24 ; 0x19
226: 9a 8f std Y+26, r25 ; 0x1a
228: ab 8f std Y+27, r26 ; 0x1b
22a: bc 8f std Y+28, r27 ; 0x1c
22c: 1e 8e std Y+30, r1 ; 0x1e
22e: 1d 8e std Y+29, r1 ; 0x1d
230: de 01 movw r26, r28
232: 5f 96 adiw r26, 0x1f ; 31
234: e2 e7 ldi r30, 0x72 ; 114
236: f0 e0 ldi r31, 0x00 ; 0
238: 86 e0 ldi r24, 0x06 ; 6
23a: 01 90 ld r0, Z+
23c: 0d 92 st X+, r0
23e: 81 50 subi r24, 0x01 ; 1
240: e1 f7 brne .-8 ; 0x23a <LCD_time+0xa4>
242: 83 e5 ldi r24, 0x53 ; 83
244: 95 e5 ldi r25, 0x55 ; 85
246: ae e4 ldi r26, 0x4E ; 78
248: b0 e0 ldi r27, 0x00 ; 0
24a: 8d a3 std Y+37, r24 ; 0x25
24c: 9e a3 std Y+38, r25 ; 0x26
24e: af a3 std Y+39, r26 ; 0x27
250: b8 a7 std Y+40, r27 ; 0x28
252: 1a a6 std Y+42, r1 ; 0x2a
254: 19 a6 std Y+41, r1 ; 0x29
char h1,h2,m1,m2,s1,s2,day1,day2,month1,month2,year1,year2;
h1=H/10;h2=H%10;m1=M/10;m2=M%10;s1=S/10;s2=S%10;
day1=Day/10;day2=Day%10;month1=Month/10;month2=Month%10;
year1=Year/10;year2=Year%10;
LCD_write_char(8,1,h1+48);
256: 81 2f mov r24, r17
258: 6a e0 ldi r22, 0x0A ; 10
25a: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
25e: 80 5d subi r24, 0xD0 ; 208
260: 48 2f mov r20, r24
262: 61 e0 ldi r22, 0x01 ; 1
264: 88 e0 ldi r24, 0x08 ; 8
266: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(9,1,h2+48);
26a: 81 2f mov r24, r17
26c: 6a e0 ldi r22, 0x0A ; 10
26e: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
272: 90 5d subi r25, 0xD0 ; 208
274: 49 2f mov r20, r25
276: 61 e0 ldi r22, 0x01 ; 1
278: 89 e0 ldi r24, 0x09 ; 9
27a: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(10,1,':');
27e: 4a e3 ldi r20, 0x3A ; 58
280: 61 e0 ldi r22, 0x01 ; 1
282: 8a e0 ldi r24, 0x0A ; 10
284: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(11,1,m1+48);
288: 8f 2d mov r24, r15
28a: 6a e0 ldi r22, 0x0A ; 10
28c: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
290: 80 5d subi r24, 0xD0 ; 208
292: 48 2f mov r20, r24
294: 61 e0 ldi r22, 0x01 ; 1
296: 8b e0 ldi r24, 0x0B ; 11
298: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(12,1,m2+48);
29c: 8f 2d mov r24, r15
29e: 6a e0 ldi r22, 0x0A ; 10
2a0: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
2a4: 90 5d subi r25, 0xD0 ; 208
2a6: 49 2f mov r20, r25
2a8: 61 e0 ldi r22, 0x01 ; 1
2aa: 8c e0 ldi r24, 0x0C ; 12
2ac: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(13,1,':');
2b0: 4a e3 ldi r20, 0x3A ; 58
2b2: 61 e0 ldi r22, 0x01 ; 1
2b4: 8d e0 ldi r24, 0x0D ; 13
2b6: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(14,1,s1+48);
2ba: 8d 2d mov r24, r13
2bc: 6a e0 ldi r22, 0x0A ; 10
2be: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
2c2: 80 5d subi r24, 0xD0 ; 208
2c4: 48 2f mov r20, r24
2c6: 61 e0 ldi r22, 0x01 ; 1
2c8: 8e e0 ldi r24, 0x0E ; 14
2ca: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(15,1,s2+48);
2ce: 8d 2d mov r24, r13
2d0: 6a e0 ldi r22, 0x0A ; 10
2d2: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
2d6: 90 5d subi r25, 0xD0 ; 208
2d8: 49 2f mov r20, r25
2da: 61 e0 ldi r22, 0x01 ; 1
2dc: 8f e0 ldi r24, 0x0F ; 15
2de: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(1,0,year1+48);
2e2: 8e 2d mov r24, r14
2e4: 6a e0 ldi r22, 0x0A ; 10
2e6: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
2ea: 80 5d subi r24, 0xD0 ; 208
2ec: 48 2f mov r20, r24
2ee: 60 e0 ldi r22, 0x00 ; 0
2f0: 81 e0 ldi r24, 0x01 ; 1
2f2: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(2,0,year2+48);
2f6: 8e 2d mov r24, r14
2f8: 6a e0 ldi r22, 0x0A ; 10
2fa: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
2fe: 90 5d subi r25, 0xD0 ; 208
300: 49 2f mov r20, r25
302: 60 e0 ldi r22, 0x00 ; 0
304: 82 e0 ldi r24, 0x02 ; 2
306: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(3,0,'-');
30a: 4d e2 ldi r20, 0x2D ; 45
30c: 60 e0 ldi r22, 0x00 ; 0
30e: 83 e0 ldi r24, 0x03 ; 3
310: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(4,0,month1+48);
314: 80 2f mov r24, r16
316: 6a e0 ldi r22, 0x0A ; 10
318: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
31c: 80 5d subi r24, 0xD0 ; 208
31e: 48 2f mov r20, r24
320: 60 e0 ldi r22, 0x00 ; 0
322: 84 e0 ldi r24, 0x04 ; 4
324: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(5,0,month2+48);
328: 80 2f mov r24, r16
32a: 6a e0 ldi r22, 0x0A ; 10
32c: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
330: 90 5d subi r25, 0xD0 ; 208
332: 49 2f mov r20, r25
334: 60 e0 ldi r22, 0x00 ; 0
336: 85 e0 ldi r24, 0x05 ; 5
338: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(6,0,'-');
33c: 4d e2 ldi r20, 0x2D ; 45
33e: 60 e0 ldi r22, 0x00 ; 0
340: 86 e0 ldi r24, 0x06 ; 6
342: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(7,0,day1+48);
346: 8b 2d mov r24, r11
348: 6a e0 ldi r22, 0x0A ; 10
34a: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
34e: 80 5d subi r24, 0xD0 ; 208
350: 48 2f mov r20, r24
352: 60 e0 ldi r22, 0x00 ; 0
354: 87 e0 ldi r24, 0x07 ; 7
356: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_char(8,0,day2+48);
35a: 8b 2d mov r24, r11
35c: 6a e0 ldi r22, 0x0A ; 10
35e: 0e 94 ec 02 call 0x5d8 ; 0x5d8 <__udivmodqi4>
362: 90 5d subi r25, 0xD0 ; 208
364: 49 2f mov r20, r25
366: 60 e0 ldi r22, 0x00 ; 0
368: 88 e0 ldi r24, 0x08 ; 8
36a: 0e 94 c2 00 call 0x184 ; 0x184 <LCD_write_char>
LCD_write_string(10,0,week[c]);
36e: 86 e0 ldi r24, 0x06 ; 6
370: c8 9e mul r12, r24
372: c0 01 movw r24, r0
374: 11 24 eor r1, r1
376: ae 01 movw r20, r28
378: 4f 5f subi r20, 0xFF ; 255
37a: 5f 4f sbci r21, 0xFF ; 255
37c: 48 0f add r20, r24
37e: 59 1f adc r21, r25
380: 60 e0 ldi r22, 0x00 ; 0
382: 8a e0 ldi r24, 0x0A ; 10
384: 0e 94 b3 00 call 0x166 ; 0x166 <LCD_write_string>
//LCD_write_string(8,0,"Amas");
}
388: aa 96 adiw r28, 0x2a ; 42
38a: 0f b6 in r0, 0x3f ; 63
38c: f8 94 cli
38e: de bf out 0x3e, r29 ; 62
390: 0f be out 0x3f, r0 ; 63
392: cd bf out 0x3d, r28 ; 61
394: cf 91 pop r28
396: df 91 pop r29
398: 1f 91 pop r17
39a: 0f 91 pop r16
39c: ff 90 pop r15
39e: ef 90 pop r14
3a0: df 90 pop r13
3a2: cf 90 pop r12
3a4: bf 90 pop r11
3a6: 08 95 ret
000003a8 <time_change>:
void time_change(void)
{
3a8: 80 91 80 00 lds r24, 0x0080
3ac: 84 31 cpi r24, 0x14 ; 20
3ae: 09 f0 breq .+2 ; 0x3b2 <time_change+0xa>
3b0: 77 c0 rjmp .+238 ; 0x4a0 <__stack+0x41>
if(j==20)
{ j=0;
3b2: 10 92 80 00 sts 0x0080, r1
data[0]++;
3b6: 80 91 78 00 lds r24, 0x0078
3ba: 8f 5f subi r24, 0xFF ; 255
3bc: 80 93 78 00 sts 0x0078, r24
if(data[0]==60)
3c0: 80 91 78 00 lds r24, 0x0078
3c4: 8c 33 cpi r24, 0x3C ; 60
3c6: 09 f0 breq .+2 ; 0x3ca <time_change+0x22>
3c8: 6b c0 rjmp .+214 ; 0x4a0 <__stack+0x41>
{ data[1]++;data[0]=0;
3ca: 80 91 79 00 lds r24, 0x0079
3ce: 8f 5f subi r24, 0xFF ; 255
3d0: 80 93 79 00 sts 0x0079, r24
3d4: 10 92 78 00 sts 0x0078, r1
if(data[1]==60)
3d8: 80 91 79 00 lds r24, 0x0079
3dc: 8c 33 cpi r24, 0x3C ; 60
3de: 09 f0 breq .+2 ; 0x3e2 <time_change+0x3a>
3e0: 5f c0 rjmp .+190 ; 0x4a0 <__stack+0x41>
{ data[2]++;data[1]=0;
3e2: 80 91 7a 00 lds r24, 0x007A
3e6: 8f 5f subi r24, 0xFF ; 255
3e8: 80 93 7a 00 sts 0x007A, r24
3ec: 10 92 79 00 sts 0x0079, r1
if(data[2]==24)
3f0: 80 91 7a 00 lds r24, 0x007A
3f4: 88 31 cpi r24, 0x18 ; 24
3f6: 09 f0 breq .+2 ; 0x3fa <time_change+0x52>
3f8: 53 c0 rjmp .+166 ; 0x4a0 <__stack+0x41>
{ data[3]++;data[2]=0;
3fa: 80 91 7b 00 lds r24, 0x007B
3fe: 8f 5f subi r24, 0xFF ; 255
400: 80 93 7b 00 sts 0x007B, r24
404: 10 92 7a 00 sts 0x007A, r1
if(data[6]==6) data[6]=0;
408: 80 91 7e 00 lds r24, 0x007E
40c: 86 30 cpi r24, 0x06 ; 6
40e: 19 f4 brne .+6 ; 0x416 <time_change+0x6e>
410: 10 92 7e 00 sts 0x007E, r1
414: 05 c0 rjmp .+10 ; 0x420 <time_change+0x78>
else data[6]++;
416: 80 91 7e 00 lds r24, 0x007E
41a: 8f 5f subi r24, 0xFF ; 255
41c: 80 93 7e 00 sts 0x007E, r24
if(data[4]==4||data[4]==6||data[4]==9||data[4]==11)
420: 80 91 7c 00 lds r24, 0x007C
424: 84 30 cpi r24, 0x04 ; 4
426: 61 f0 breq .+24 ; 0x440 <time_change+0x98>
428: 80 91 7c 00 lds r24, 0x007C
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -