?? main.lis
字號(hào):
.module main.c
.area text(rom, con, rel)
0000 .dbfile D:\MEGA8\西門(mén)子3508\3508呼死你/define.h
0000 .dbfunc e delay_us _delay_us fV
0000 ; time -> R16,R17
.even
0000 _delay_us::
0000 .dbline -1
0000 .dbline 71
0000 ; #include <iom8v.h>
0000 ; #include <macros.h>
0000 ; #include <eeprom.h>
0000 ; #include "uart.h"
0000 ; #include "define.h"
0000 ; #include "led.h"
0000 ;
0000 ; #include "uartnews.h"
0000 ; #include "timetask.h"
0000 ;
0000 ; /* 工程名稱(chēng): 呼死你
0000 ; * 日期: 06-04-26
0000 ; * 最后修改日期: 06-04-26
0000 ; * 芯片類(lèi)型: ATmega 8L
0000 ; * 晶體: 7.3728MHZ
0000 ; * 熔絲位: 8F9F
0000 ; * 鎖定位: 00E8
0000 ; * 看門(mén)狗: 安全極別2-常開(kāi) 2.1秒溢出
0000 ; * 版本:
0000 ; * 測(cè)試說(shuō)明: 06-04-26測(cè)試
0000 ;
0000 ;
0000 ; /**************************************************
0000 ; *原型:void open(void)
0000 ; *功能:判斷是初次上電,觸發(fā)開(kāi)機(jī)
0000 ; *參數(shù):無(wú)
0000 ; *返回:無(wú)
0000 ; *日期:04-12-7
0000 ; **************************************************/
0000 ; //定義開(kāi)機(jī)腳
0000 ; #define OPENBIT 7
0000 ; #define RESTKEY 3
0000 ; void open(void)
0000 ; {
0000 ; SET_BIT(PORTD,OPENBIT);
0000 ;
0000 ; delay_ms(2000);
0000 ;
0000 ; CLR_BIT(PORTD,OPENBIT); //開(kāi)平觸低
0000 ; }
0000 ; /**************************************************
0000 ; *原型:void port_init(void)
0000 ; *功能:端口初始化
0000 ; *參數(shù):無(wú)
0000 ; *返回:無(wú)
0000 ; **************************************************/
0000 ; void port_init(void)
0000 ; {
0000 ; PORTC = 0X0F; //PC0-PC38870輸入,與按鍵共用,
0000 ; DDRC = 0X20;
0000 ;
0000 ; PORTB = 0X00;
0000 ; DDRB = 0X3F; //PB0-PB2,PB5輸出控制,PB3話(huà)筒開(kāi)關(guān),PB4提示聲,PB5警聲
0000 ;
0000 ; DDRD = 0XF6; //PD0,PD2-AUDIO,PD3輸入
0000 ; PORTD = NULL;
0000 ;
0000 ; RED_LED;//紅燈亮
0000 ; }
0000 ; /**************************************************
0000 ; *原型:void watchdog_init(void)
0000 ; *功能:dog初始化
0000 ; *參數(shù):無(wú)
0000 ; *返回:無(wú)
0000 ; **************************************************/
0000 ; void watchdog_init(void)
0000 ; {
0000 ; WDR(); //清dog
0000 ; WDTCR = ( (1<<WDCE) | (1<<WDE) );
0000 ; WDTCR = 0x0F; //2.1秒復(fù)位
0000 ; }
0000 L5:
0000 .dbline 73
0000 ; /**************************************************
0000 ; *原型:void watchdog_task(void)
0000 .dbline 74
0000 ; *功能:判斷是否dog復(fù)位,如不是觸發(fā)手機(jī)開(kāi)機(jī)
0000 0150 subi R16,1
0002 1040 sbci R17,0
0004 .dbline 75
0004 ; *參數(shù):無(wú)
0004 L6:
0004 .dbline 76
0004 ; *返回:無(wú)
0004 81E0 ldi R24,1
0006 90E0 ldi R25,0
0008 8017 cp R24,R16
000A 9107 cpc R25,R17
000C CCF3 brlt L5
000E .dbline -2
000E L4:
000E .dbline 0 ; func end
000E 0895 ret
0010 .dbsym r time 16 I
0010 .dbend
0010 .dbfunc e delay_ms _delay_ms fV
0010 ; time -> R20,R21
.even
0010 _delay_ms::
0010 00D0 rcall push_gset1
0012 A801 movw R20,R16
0014 .dbline -1
0014 .dbline 80
0014 ; **************************************************/
0014 ; void watchdog_task(void)
0014 ; {
0014 ; if(!GET_BIT(MCUCSR , WDRF))//是否dog復(fù)位
0014 06C0 rjmp L10
0016 L9:
0016 .dbline 82
0016 .dbline 83
0016 A895 wdr
0018 .dbline 84
0018 09E3 ldi R16,825
001A 13E0 ldi R17,3
001C F1DF rcall _delay_us
001E .dbline 85
001E 4150 subi R20,1
0020 5040 sbci R21,0
0022 .dbline 86
0022 L10:
0022 .dbline 81
0022 ; open();
0022 4030 cpi R20,0
0024 4507 cpc R20,R21
0026 B9F7 brne L9
0028 X0:
0028 .dbline -2
0028 L8:
0028 00D0 rcall pop_gset1
002A .dbline 0 ; func end
002A 0895 ret
002C .dbsym r time 20 i
002C .dbend
002C .dbfile D:\MEGA8\西門(mén)子3508\3508呼死你/led.h
002C .dbfunc e ray_led _ray_led fV
.even
002C _ray_led::
002C .dbline -1
002C .dbline 17
002C .dbline 18
002C 81E0 ldi R24,1
002E 80930200 sts _raybz,R24
0032 .dbline 19
0032 .dbline 19
0032 9498 cbi 0x12,4
0034 .dbline 19
0034 9598 cbi 0x12,5
0036 .dbline 19
0036 .dbline 19
0036 .dbline 20
0036 86E0 ldi R24,6
0038 80930100 sts _LEDCOUNT,R24
003C .dbline -2
003C L12:
003C .dbline 0 ; func end
003C 0895 ret
003E .dbend
.area bss(ram, con, rel)
0000 .dbfile D:\MEGA8\西門(mén)子3508\3508呼死你/led.h
0000 L14:
0000 .blkb 1
.area text(rom, con, rel)
003E .dbfile D:\MEGA8\西門(mén)子3508\3508呼死你/led.h
003E .dbfunc e LED _LED fc
003E .dbsym s led1 L14 c
.even
003E _LED::
003E .dbline -1
003E .dbline 29
003E .dbline 31
003E 00910100 lds R16,_LEDCOUNT
0042 1127 clr R17
0044 0030 cpi R16,0
0046 0107 cpc R16,R17
0048 E9F0 breq L18
004A X1:
004A 0130 cpi R16,1
004C E0E0 ldi R30,0
004E 1E07 cpc R17,R30
0050 41F1 breq L23
0052 0230 cpi R16,2
0054 E0E0 ldi R30,0
0056 1E07 cpc R17,R30
0058 49F1 breq L24
005A 0330 cpi R16,3
005C E0E0 ldi R30,0
005E 1E07 cpc R17,R30
0060 51F1 breq L25
0062 0430 cpi R16,4
0064 E0E0 ldi R30,0
0066 1E07 cpc R17,R30
0068 59F1 breq L26
006A 0530 cpi R16,5
006C E0E0 ldi R30,0
006E 1E07 cpc R17,R30
0070 59F1 breq L27
0072 0630 cpi R16,6
0074 E0E0 ldi R30,0
0076 1E07 cpc R17,R30
0078 61F1 breq L28
007A 0730 cpi R16,7
007C E0E0 ldi R30,0
007E 1E07 cpc R17,R30
0080 59F1 breq L29
0082 44C0 rjmp L15
0084 X2:
0084 .dbline 32
0084 L18:
0084 .dbline 34
0084 2090F700 lds R2,_Busybz
0088 2220 tst R2
008A 11F0 breq L19
008C .dbline 35
008C 01E0 ldi R16,1
008E 3EC0 rjmp L13
0090 L19:
0090 .dbline 38
0090 82E0 ldi R24,2
0092 2090F800 lds R2,_WorkCount
0096 8215 cp R24,R2
0098 10F0 brlo L21
009A .dbline 39
009A 04E0 ldi R16,4
009C 37C0 rjmp L13
009E L21:
009E .dbline 42
009E 03E0 ldi R16,3
00A0 35C0 rjmp L13
00A2 L23:
00A2 .dbline 44
00A2 .dbline 44
00A2 9498 cbi 0x12,4
00A4 .dbline 44
00A4 9598 cbi 0x12,5
00A6 .dbline 44
00A6 .dbline 44
00A6 .dbline 45
00A6 949A sbi 0x12,4
00A8 .dbline 46
00A8 06E0 ldi R16,6
00AA 30C0 rjmp L13
00AC L24:
00AC .dbline 48
00AC .dbline 48
00AC 9498 cbi 0x12,4
00AE .dbline 48
00AE 9598 cbi 0x12,5
00B0 .dbline 48
00B0 .dbline 48
00B0 .dbline 49
00B0 949A sbi 0x12,4
00B2 .dbline 50
00B2 0027 clr R16
00B4 2BC0 rjmp L13
00B6 L25:
00B6 .dbline 52
00B6 .dbline 52
00B6 9498 cbi 0x12,4
00B8 .dbline 52
00B8 9598 cbi 0x12,5
00BA .dbline 52
00BA .dbline 52
00BA .dbline 53
00BA 959A sbi 0x12,5
00BC .dbline 54
00BC 06E0 ldi R16,6
00BE 26C0 rjmp L13
00C0 L26:
00C0 .dbline 56
00C0 949A sbi 0x12,4
00C2 .dbline 57
00C2 959A sbi 0x12,5
00C4 .dbline 58
00C4 06E0 ldi R16,6
00C6 22C0 rjmp L13
00C8 L27:
00C8 .dbline 60
00C8 .dbline 60
00C8 9498 cbi 0x12,4
00CA .dbline 60
00CA 9598 cbi 0x12,5
00CC .dbline 60
00CC .dbline 60
00CC .dbline 61
00CC 959A sbi 0x12,5
00CE .dbline 62
00CE 0027 clr R16
00D0 1DC0 rjmp L13
00D2 L28:
00D2 .dbline 64
00D2 85E0 ldi R24,5
00D4 80930000 sts L14,R24
00D8 L29:
00D8 .dbline 66
00D8 20900000 lds R2,L14
00DC 3324 clr R3
00DE 822D mov R24,R2
00E0 8150 subi R24,1
00E2 80930000 sts L14,R24
00E6 2220 tst R2
00E8 11F0 breq L30
00EA .dbline 67
00EA 07E0 ldi R16,7
00EC 0FC0 rjmp L13
00EE L30:
00EE .dbline 68
00EE 20900200 lds R2,_raybz
00F2 2220 tst R2
00F4 39F4 brne L32
00F6 .dbline 69
00F6 .dbline 70
00F6 81E0 ldi R24,1
00F8 80930200 sts _raybz,R24
00FC .dbline 71
00FC .dbline 71
00FC 9498 cbi 0x12,4
00FE .dbline 71
00FE 9598 cbi 0x12,5
0100 .dbline 71
0100 .dbline 71
0100 .dbline 72
0100 06E0 ldi R16,6
0102 04C0 rjmp L13
0104 L32:
0104 .dbline 74
0104 .dbline 75
0104 2224 clr R2
0106 20920200 sts _raybz,R2
010A .dbline 76
010A 0027 clr R16
010C L15:
010C .dbline -2
010C L13:
010C .dbline 0 ; func end
010C 0895 ret
010E .dbend
010E .dbfile D:\MEGA8\西門(mén)子3508\3508呼死你/uartnews.h
010E .dbfunc e InitUART _InitUART fV
010E ; baudrate -> R16
.even
010E _InitUART::
010E .dbline -1
010E .dbline 10
010E .dbline 11
010E 09B9 out 0x9,R16
0110 .dbline 12
0110 88E9 ldi R24,152
0112 8AB9 out 0xa,R24
0114 .dbline 13
0114 86E8 ldi R24,134
0116 80BD out 0x20,R24
0118 .dbline -2
0118 L34:
0118 .dbline 0 ; func end
0118 0895 ret
011A .dbsym r baudrate 16 c
011A .dbend
011A .dbfunc e putchar _putchar fV
011A ; c -> R16
.even
011A _putchar::
011A .dbline -1
011A .dbline 24
011A L36:
011A .dbline 25
011A L37:
011A .dbline 25
011A 5D9B sbis 0xb,5
011C FECF rjmp L36
011E .dbline 27
011E 0CB9 out 0xc,R16
0120 .dbline -2
0120 L35:
0120 .dbline 0 ; func end
0120 0895 ret
0122 .dbsym r c 16 c
0122 .dbend
0122 .dbfunc e puts _puts fV
0122 ; s -> R20,R21
.even
0122 _puts::
0122 00D0 rcall push_gset1
0124 A801 movw R20,R16
0126 .dbline -1
0126 .dbline 32
0126 05C0 rjmp L41
0128 L40:
0128 .dbline 34
0128 .dbline 35
0128 FA01 movw R30,R20
012A 0081 ldd R16,z+0
012C F6DF rcall _putchar
012E .dbline 36
012E 4F5F subi R20,255 ; offset = 1
0130 5F4F sbci R21,255
0132 .dbline 37
0132 L41:
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -