⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lis

📁 这个是个航模产品的锂电测试器
💻 LIS
📖 第 1 页 / 共 5 页
字号:
                        .module main.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\CHIYUA~1\LI_POT~1/adc.h
 0000                   .dbfunc e adc_int _adc_int fV
                        .even
 0000           _adc_int::
 0000                   .dbline -1
 0000                   .dbline 22
 0000           ; /********************************************************************************/
 0000           ; //            
 0000           ; //            builder : 2007-04-10
 0000           ; //            Target  : ATMEAG 48V
 0000           ; //            Crystal : 内部 8.00 MHz
 0000           ; //
 0000           ; //            快速充电器
 0000           ;               
 0000           ; /********************************************************************************/
 0000           ; 
 0000           ; #include <iom48v.h>
 0000           ; #include <macros.h>
 0000           ; 
 0000           ; #include "adc.h"
 0000           ; 
 0000           ; 
 0000           ; #define               uchar           unsigned char
 0000           ; #define               uint            unsigned int
 0000           ; 
 0000           ; 
 0000           ; #define               SET_LED1                PORTD |=  (1<<PD4)
 0000           ; #define               CLR_LED1                PORTD &= ~(1<<PD4)
 0000                   .dbline 23
 0000           ; 
 0000 80E4              ldi R24,64
 0002 80937C00          sts 124,R24
 0006                   .dbline 24
 0006           ; #define               SET_LED2                PORTD |=  (1<<PD3)
 0006 87EC              ldi R24,199
 0008 80937A00          sts 122,R24
 000C                   .dbline -2
 000C           L1:
 000C                   .dbline 0 ; func end
 000C 0895              ret
 000E                   .dbend
 000E                   .dbfunc e AD_CH _AD_CH fi
 000E           ;            adh -> R20,R21
 000E           ;         ad_add -> R22,R23
 000E           ;          temp1 -> R12,R13
 000E           ;              i -> R10
 000E           ;           temp -> R14,R15
 000E           ;            CHn -> R16
                        .even
 000E           _AD_CH::
 000E 00D0              rcall push_gset5
 0010                   .dbline -1
 0010                   .dbline 33
 0010           ; #define               CLR_LED2                PORTD &= ~(1<<PD3)
 0010           ; 
 0010           ; #define               SET_LED3                PORTD |=  (1<<PD1)
 0010           ; #define               CLR_LED3                PORTD &= ~(1<<PD1)
 0010           ; 
 0010           ; #define               SET_LED4                PORTD |=  (1<<PD0)
 0010           ; #define               CLR_LED4                PORTD &= ~(1<<PD0)
 0010           ; 
 0010           ; 
 0010                   .dbline 39
 0010           ; #define               SET_COM1                PORTD |=  (1<<PD7)
 0010           ; #define               CLR_COM1                PORTD &= ~(1<<PD7)
 0010           ; 
 0010           ; #define               SET_COM2                PORTD |=  (1<<PD6)
 0010           ; #define               CLR_COM2                PORTD &= ~(1<<PD6)
 0010           ; 
 0010 80917C00          lds R24,124
 0014 807F              andi R24,240
 0016 802B              or R24,R16
 0018 80937C00          sts 124,R24
 001C                   .dbline 41
 001C           ; #define               SET_COM3                PORTD |=  (1<<PD5)
 001C           ; #define               CLR_COM3                PORTD &= ~(1<<PD5)
 001C 6627              clr R22
 001E 7727              clr R23
 0020                   .dbline 43
 0020           ; 
 0020           ; #define               SET_OUT                 PORTD |=  (1<<PD2)
 0020 AA24              clr R10
 0022 22C0              rjmp L6
 0024           L3:
 0024                   .dbline 44
 0024           ; #define               CLR_OUT                 PORTD &= ~(1<<PD2)
 0024                   .dbline 45
 0024           ; 
 0024 80917A00          lds R24,122
 0028 8064              ori R24,64
 002A 80937A00          sts 122,R24
 002E           L7:
 002E                   .dbline 46
 002E           L8:
 002E                   .dbline 46
 002E           ; 
 002E 20907A00          lds R2,122
 0032 26FC              sbrc R2,6
 0034 FCCF              rjmp L7
 0036                   .dbline 48
 0036           ; 
 0036           ; static const uchar Char_tab[10] ={0x7D,0x41,0xEC,0xE5,0xD1,0xB5,0xBD,0x61,0xFD,0xF5};
 0036 80917A00          lds R24,122
 003A 8064              ori R24,64
 003C 80937A00          sts 122,R24
 0040           L10:
 0040                   .dbline 49
 0040           L11:
 0040                   .dbline 49
 0040 20907A00          lds R2,122
 0044 26FC              sbrc R2,6
 0046 FCCF              rjmp L10
 0048                   .dbline 51
 0048 C0907800          lds R12,120
 004C DD24              clr R13
 004E                   .dbline 52
 004E 80917900          lds R24,121
 0052 9927              clr R25
 0054 8370              andi R24,3
 0056 9070              andi R25,0
 0058 7C01              movw R14,R24
 005A FE2C              mov R15,R14
 005C EE24              clr R14
 005E                   .dbline 53
 005E EC0C              add R14,R12
 0060 FD1C              adc R15,R13
 0062                   .dbline 54
 0062 6E0D              add R22,R14
 0064 7F1D              adc R23,R15
 0066                   .dbline 55
 0066           L4:
 0066                   .dbline 43
 0066 A394              inc R10
 0068           L6:
 0068                   .dbline 43
 0068 8A2D              mov R24,R10
 006A 8430              cpi R24,4
 006C D8F2              brlo L3
 006E                   .dbline 56
 006E           ; 
 006E           ; union 
 006E           ; {     uint    temp;
 006E           ;       uchar   data[2];                
 006E           ; }CH;
 006E           ; 
 006E           ; uint  V[4];
 006E           ; 
 006E AB01              movw R20,R22
 0070 5695              lsr R21
 0072 4795              ror R20
 0074 5695              lsr R21
 0076 4795              ror R20
 0078                   .dbline 57
 0078           ; uchar flag_2ms;
 0078 8A01              movw R16,R20
 007A                   .dbline -2
 007A           L2:
 007A 00D0              rcall pop_gset5
 007C                   .dbline 0 ; func end
 007C 0895              ret
 007E                   .dbsym r adh 20 i
 007E                   .dbsym r ad_add 22 i
 007E                   .dbsym r temp1 12 i
 007E                   .dbsym r i 10 c
 007E                   .dbsym r temp 14 i
 007E                   .dbsym r CHn 16 c
 007E                   .dbend
                        .area lit(rom, con, rel)
 0000           _Char_tab:
 0000 7D41              .byte 125,'A
 0002 ECE5              .byte 236,229
 0004 D1B5              .byte 209,181
 0006 BD61              .byte 189,'a
 0008 FDF5              .byte 253,245
 000A                   .dbfile E:\CHIYUA~1\LI_POT~1\main.c
 000A                   .dbsym s Char_tab _Char_tab A[10:10]kc
                        .area data(ram, con, rel)
 0000                   .dbfile E:\CHIYUA~1\LI_POT~1\main.c
 0000           _adc_ch::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile E:\CHIYUA~1\LI_POT~1\main.c
 0001                   .dbsym e adc_ch _adc_ch c
 0001           _dp::
 0001                   .blkb 1
                        .area idata
 0001 02                .byte 2
                        .area data(ram, con, rel)
 0002                   .dbfile E:\CHIYUA~1\LI_POT~1\main.c
 0002                   .dbsym e dp _dp c
                        .area text(rom, con, rel)
 007E                   .dbfile E:\CHIYUA~1\LI_POT~1\main.c
 007E                   .dbfunc e timer0_init _timer0_init fV
                        .even
 007E           _timer0_init::
 007E                   .dbline -1
 007E                   .dbline 85
 007E           ; uchar flag_20ms;
 007E           ; 
 007E           ; uint  ad_temp;
 007E           ; uchar adc_num,adc_ch=0;
 007E           ; uchar batt;
 007E           ; 
 007E           ; uchar dip_bit;
 007E           ; uint  batt_num;
 007E           ; 
 007E           ; uchar mode,out_time;
 007E           ; uint  key,key1,key2;
 007E           ; uchar pulse;
 007E           ; 
 007E           ; uchar dp=0x02;
 007E           ; uchar down,delay;
 007E           ; 
 007E           ; uchar led_time,led_flag;
 007E           ; uchar flas1,flas2,flas3,flas4;
 007E           ; 
 007E           ; 
 007E           ; 
 007E           ; 
 007E           ; /*---------------------------------------------------------------
 007E           ;                       初始化
 007E           ; ----------------------------------------------------------------*/
 007E           ; 
 007E           ; void timer0_init(void)
 007E           ; {
 007E                   .dbline 86
 007E           ;       TCCR0B = 0x00; //stop
 007E 2224              clr R2
 0080 25BC              out 0x25,R2
 0082                   .dbline 87
 0082           ;       TCNT0  = 0x06; //set count
 0082 86E0              ldi R24,6
 0084 86BD              out 0x26,R24
 0086                   .dbline 88
 0086           ;       TCCR0A = 0x00; 
 0086 24BC              out 0x24,R2
 0088                   .dbline 89
 0088           ;       TCCR0B = 0x03; //start timer
 0088 83E0              ldi R24,3
 008A 85BD              out 0x25,R24
 008C                   .dbline -2
 008C           L14:
 008C                   .dbline 0 ; func end
 008C 0895              ret
 008E                   .dbend
 008E                   .dbfunc e timer1_init _timer1_init fV
                        .even
 008E           _timer1_init::
 008E                   .dbline -1
 008E                   .dbline 94
 008E           ; }
 008E           ; 
 008E           ; 
 008E           ; void timer1_init(void)
 008E           ; {
 008E                   .dbline 95
 008E           ;       TCCR1A = 0x00;
 008E 2224              clr R2
 0090 20928000          sts 128,R2
 0094                   .dbline 96
 0094           ;       TCCR1B = 0x00;                                  
 0094 20928100          sts 129,R2
 0098                   .dbline -2
 0098           L15:
 0098                   .dbline 0 ; func end
 0098 0895              ret
 009A                   .dbend
 009A                   .dbfunc e init_devices _init_devices fV
                        .even
 009A           _init_devices::
 009A                   .dbline -1
 009A                   .dbline 102
 009A           ; }
 009A           ; 
 009A           ; 
 009A           ; 
 009A           ; void init_devices(void)
 009A           ; {
 009A                   .dbline 103
 009A           ;       CLI();
 009A F894              cli
 009C                   .dbline 105
 009C           ;       
 009C           ;       DDRB  = 0xFF;
 009C 8FEF              ldi R24,255
 009E 84B9              out 0x4,R24
 00A0                   .dbline 106
 00A0           ;       PORTB = 0x00;
 00A0 2224              clr R2
 00A2 25B8              out 0x5,R2
 00A4                   .dbline 108
 00A4           ;       
 00A4           ;       DDRC  = 0x00;
 00A4 27B8              out 0x7,R2
 00A6                   .dbline 109
 00A6           ;       PORTC = 0x0C; 
 00A6 8CE0              ldi R24,12
 00A8 88B9              out 0x8,R24
 00AA                   .dbline 111
 00AA           ;       
 00AA           ;       DDRD  = 0xFF;
 00AA 8FEF              ldi R24,255
 00AC 8AB9              out 0xa,R24
 00AE                   .dbline 112
 00AE           ;       PORTD = 0x00; 
 00AE 2BB8              out 0xb,R2
 00B0                   .dbline 114
 00B0           ;       
 00B0           ;       adc_int();
 00B0 A7DF              rcall _adc_int
 00B2                   .dbline 115
 00B2           ;       timer0_init();
 00B2 E5DF              rcall _timer0_init
 00B4                   .dbline 116
 00B4           ;       timer1_init();
 00B4 ECDF              rcall _timer1_init
 00B6                   .dbline 118
 00B6           ; 
 00B6           ;       TIMSK0 = 0x01;  //timer 0 interrupt sources
 00B6 81E0              ldi R24,1
 00B8 80936E00          sts 110,R24
 00BC                   .dbline 119
 00BC           ;       TIMSK1 = 0x00;  //timer 1 interrupt sources
 00BC 2224              clr R2
 00BE 20926F00          sts 111,R2
 00C2                   .dbline 120
 00C2           ;       TIMSK2 = 0x00;  //timer 2 interrupt sources
 00C2 20927000          sts 112,R2
 00C6                   .dbline 122
 00C6           ;       
 00C6           ;       SEI();
 00C6 7894              sei
 00C8                   .dbline -2
 00C8           L16:
 00C8                   .dbline 0 ; func end
 00C8 0895              ret
 00CA                   .dbend
 00CA                   .dbfunc e bubble_sort _bubble_sort fV
 00CA           ;              j -> R20,R21
 00CA           ;         change -> R22,R23
 00CA           ;           temp -> R10,R11
 00CA           ;              k -> R14,R15
 00CA           ;            len -> R12
 00CA           ;              a -> y+10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -