📄 main.lis
字号:
.module main.c
.area lit(rom, con, rel)
0000 _str0::
0000 205368616E6768616920486F6E2D4C69 .byte 32,'S,'h,'a,'n,'g,'h,'a,'i,32,'H,'o,'n,45,'L,'i
0010 00 .byte 0
0011 .dbfile D:\ac18-1\main.c
0011 .dbsym e str0 _str0 A[17:17]kc
0011 _str1::
0011 20456C656374726F6E696320436F2E20 .byte 32,'E,'l,'e,'c,'t,'r,'o,'n,'i,'c,32,'C,'o,46,32
0021 00 .byte 0
0022 .dbsym e str1 _str1 A[17:17]kc
0022 _str2::
0022 57656C636F6D6520746F20456E746572 .byte 'W,'e,'l,'c,'o,'m,'e,32,'t,'o,32,'E,'n,'t,'e,'r
0032 00 .byte 0
0033 .dbsym e str2 _str2 A[17:17]kc
0033 _str3::
0033 54657374696E672050726F6365737320 .byte 'T,'e,'s,'t,'i,'n,'g,32,'P,'r,'o,'c,'e,'s,'s,32
0043 00 .byte 0
0044 .dbsym e str3 _str3 A[17:17]kc
0044 _cs0::
0044 2054657374696E672E2E2E2E2E2E2020 .byte 32,'T,'e,'s,'t,'i,'n,'g,46,46,46,46,46,46,32,32
0054 00 .byte 0
0055 .dbsym e cs0 _cs0 A[17:17]kc
0055 _cs1::
0055 4C56533A202020205450563A20202020 .byte 'L,'V,'S,58,32,32,32,32,'T,'P,'V,58,32,32,32,32
0065 00 .byte 0
0066 .dbsym e cs1 _cs1 A[17:17]kc
0066 _cs2::
0066 52504D3A2020202052433A2020202041 .byte 'R,'P,'M,58,32,32,32,32,'R,'C,58,32,32,32,32,'A
0076 00 .byte 0
0077 .dbsym e cs2 _cs2 A[17:17]kc
0077 _cs3::
0077 4C433A20202020412020202020202020 .byte 'L,'C,58,32,32,32,32,'A,32,32,32,32,32,32,32,32
0087 00 .byte 0
0088 .dbsym e cs3 _cs3 A[17:17]kc
0088 _result::
0088 20526573756C742E2E2E2E2E2E202020 .byte 32,'R,'e,'s,'u,'l,'t,46,46,46,46,46,46,32,32,32
0098 00 .byte 0
0099 .dbsym e result _result A[17:17]kc
.area data(ram, con, rel)
0000 .dbfile D:\ac18-1\main.c
0000 _status::
0000 .blkb 1
.area idata
0000 00 .byte 0
.area data(ram, con, rel)
0001 .dbfile D:\ac18-1\main.c
0001 .dbsym e status _status c
0001 _OutFlag::
0001 .blkb 1
.area idata
0001 00 .byte 0
.area data(ram, con, rel)
0002 .dbfile D:\ac18-1\main.c
0002 .dbsym e OutFlag _OutFlag c
0002 _cnt::
0002 .blkb 2
.area idata
0002 0000 .word 0
.area data(ram, con, rel)
0004 .dbfile D:\ac18-1\main.c
0004 .dbsym e cnt _cnt i
0004 _display_val::
0004 .blkb 2
.area idata
0004 0000 .word 0
.area data(ram, con, rel)
0006 .dbfile D:\ac18-1\main.c
0006 .dbsym e display_val _display_val i
0006 _current::
0006 .blkb 2
.area idata
0006 0000 .word 0
.area data(ram, con, rel)
0008 .dbfile D:\ac18-1\main.c
0008 .dbsym e current _current i
0008 _Wait10S_Start_Flag::
0008 .blkb 1
.area idata
0008 00 .byte 0
.area data(ram, con, rel)
0009 .dbfile D:\ac18-1\main.c
0009 .dbsym e Wait10S_Start_Flag _Wait10S_Start_Flag c
0009 _Wait10S_End_Flag::
0009 .blkb 1
.area idata
0009 00 .byte 0
.area data(ram, con, rel)
000A .dbfile D:\ac18-1\main.c
000A .dbsym e Wait10S_End_Flag _Wait10S_End_Flag c
000A _Wait6S_Start_Flag::
000A .blkb 1
.area idata
000A 00 .byte 0
.area data(ram, con, rel)
000B .dbfile D:\ac18-1\main.c
000B .dbsym e Wait6S_Start_Flag _Wait6S_Start_Flag c
000B _Wait6S_End_Flag::
000B .blkb 1
.area idata
000B 00 .byte 0
.area data(ram, con, rel)
000C .dbfile D:\ac18-1\main.c
000C .dbsym e Wait6S_End_Flag _Wait6S_End_Flag c
000C _Wait2S_Start_Flag::
000C .blkb 1
.area idata
000C 00 .byte 0
.area data(ram, con, rel)
000D .dbfile D:\ac18-1\main.c
000D .dbsym e Wait2S_Start_Flag _Wait2S_Start_Flag c
000D _Wait2S_End_Flag::
000D .blkb 1
.area idata
000D 00 .byte 0
.area data(ram, con, rel)
000E .dbfile D:\ac18-1\main.c
000E .dbsym e Wait2S_End_Flag _Wait2S_End_Flag c
.area text(rom, con, rel)
0000 .dbfile D:\ac18-1\main.c
0000 .dbfunc e read_T1 _read_T1 fi
0000 ; temp1 -> R18,R19
0000 ; temp2 -> R16,R17
.even
0000 _read_T1::
0000 .dbline -1
0000 .dbline 65
0000 ; //ICC-AVR application builder : 2007-7-24 12:41:43
0000 ; // Target : M16
0000 ; // Crystal: 8.0000Mhz
0000 ; #include <iom16v.h>
0000 ; #include <macros.h>
0000 ; #include "head.h"
0000 ; #define uchar unsigned char
0000 ; #define uint unsigned int
0000 ; #define xtal 8
0000 ;
0000 ; extern void WaitForEnable(void);
0000 ; extern void LcdWriteData(uchar W);
0000 ; extern void LcdWriteCommand(uchar CMD,uchar Attribc);
0000 ; extern void InitLcd(void);
0000 ; extern void Display(uchar dd);
0000 ; extern void DisplayOneChar(uchar x,uchar y,uchar Wdata);
0000 ; extern void ePutstr(uchar x,uchar y,uchar const *ptr);
0000 ;
0000 ; #define SPEED_0V PORTD|=BIT(PD0)
0000 ; #define SPEED_5V PORTD&=~BIT(PD0)
0000 ; #define POW_OFF PORTD|=BIT(PD1)
0000 ; #define POW_ON PORTD&=~BIT(PD1)
0000 ; #define POW_14V PORTD|=BIT(PD2)
0000 ; #define POW_27V PORTD&=~BIT(PD2)
0000 ; #define AIR_OFF PORTD|=BIT(PD3)
0000 ; #define AIR_ON PORTD&=~BIT(PD3)
0000 ; #define LCM_BLCON_OFF PORTD|=BIT(PD4)
0000 ; #define LCM_BLCON_ON PORTD&=~BIT(PD4)
0000 ;
0000 ; #define BZ_OFF PORTD|=BIT(PD7)
0000 ; #define BZ_ON PORTD&=~BIT(PD7)
0000 ;
0000 ; const uchar str0[]={" Shanghai Hon-Li"};//欢迎界面
0000 ; const uchar str1[]={" Electronic Co. "};//欢迎界面
0000 ; const uchar str2[]={"Welcome to Enter"};//欢迎界面
0000 ; const uchar str3[]={"Testing Process "};//欢迎界面
0000 ;
0000 ; const uchar cs0[]={" Testing...... "};//测试界面
0000 ; const uchar cs1[]={"LVS: TPV: "};//测试界面
0000 ; const uchar cs2[]={"RPM: RC: A"};//测试界面
0000 ; const uchar cs3[]={"LC: A "};//测试界面
0000 ; const uchar result[]={" Result...... "};//测试界面
0000 ;
0000 ; uchar status=0;
0000 ; uchar OutFlag=0;
0000 ; uint cnt=0;
0000 ; uint display_val=0;
0000 ; uint current=0;
0000 ;
0000 ; uchar LVS[4];
0000 ; uchar TPV[4];
0000 ; uchar RPM[4];
0000 ; uchar RC[4];
0000 ; uchar LC[4];
0000 ;
0000 ; uint LLVS,TTPV,RRPM;
0000 ; float RRC,LLC;
0000 ;
0000 ; uchar Wait10S_Start_Flag=0,Wait10S_End_Flag=0;//10S启动结束标志
0000 ; uchar Wait6S_Start_Flag=0,Wait6S_End_Flag=0;//6S启动结束标志
0000 ; uchar Wait2S_Start_Flag=0,Wait2S_End_Flag=0;//2S启动结束标志
0000 ;
0000 ; /***************读取计数器T1的数据*************/
0000 ; uint read_T1(void)
0000 ; {uint temp1,temp2;
0000 .dbline 66
0000 ; temp1=(uint)TCNT1L;
0000 2CB5 in R18,0x2c
0002 3327 clr R19
0004 .dbline 67
0004 ; temp2=(uint)TCNT1H;
0004 0DB5 in R16,0x2d
0006 1127 clr R17
0008 .dbline 68
0008 ; temp2=(temp2<<8)+temp1;
0008 1801 movw R2,R16
000A 322C mov R3,R2
000C 2224 clr R2
000E 220E add R2,R18
0010 331E adc R3,R19
0012 8101 movw R16,R2
0014 .dbline 69
0014 ; return(temp2);
0014 .dbline -2
0014 L1:
0014 .dbline 0 ; func end
0014 0895 ret
0016 .dbsym r temp1 18 i
0016 .dbsym r temp2 16 i
0016 .dbend
0016 .dbfunc e clr_T1 _clr_T1 fV
.even
0016 _clr_T1::
0016 .dbline -1
0016 .dbline 73
0016 ; }
0016 ; /***************清除计数器T1的数据************/
0016 ; void clr_T1(void)
0016 ; {
0016 .dbline 74
0016 ; TCNT1L=0x00;TCNT1H=0x00;
0016 2224 clr R2
0018 2CBC out 0x2c,R2
001A .dbline 74
001A 2DBC out 0x2d,R2
001C .dbline -2
001C L2:
001C .dbline 0 ; func end
001C 0895 ret
001E .dbend
001E .dbfunc e watchdog_init _watchdog_init fV
.even
001E _watchdog_init::
001E .dbline -1
001E .dbline 80
001E ; }
001E ; /*****************watchdog初始化**************/
001E ; //Watchdog initialize
001E ; // prescale: 512K
001E ; void watchdog_init(void)
001E ; {
001E .dbline 81
001E ; WDR(); //this prevents a timout on enabling
001E A895 wdr
0020 .dbline 82
0020 ; WDTCR = 0x0D; //WATCHDOG ENABLED - dont forget to issue WDRs
0020 8DE0 ldi R24,13
0022 81BD out 0x21,R24
0024 .dbline -2
0024 L3:
0024 .dbline 0 ; func end
0024 0895 ret
0026 .dbend
0026 .dbfunc e adc_init _adc_init fV
.even
0026 _adc_init::
0026 .dbline -1
0026 .dbline 89
0026 ; }
0026 ;
0026 ; /******************ADC初始化*********************/
0026 ; //ADC initialize
0026 ; // Conversion time: 3uS
0026 ; void adc_init(void)
0026 ; {
0026 .dbline 90
0026 ; ADCSR = 0x00; //disable adc
0026 2224 clr R2
0028 26B8 out 0x6,R2
002A .dbline 91
002A ; ADMUX = 0xC0; //select adc input 0
002A 80EC ldi R24,192
002C 87B9 out 0x7,R24
002E .dbline 92
002E ; ACSR = 0x80;
002E 80E8 ldi R24,128
0030 88B9 out 0x8,R24
0032 .dbline 93
0032 ; ADCSR = 0xE1;
0032 81EE ldi R24,225
0034 86B9 out 0x6,R24
0036 .dbline -2
0036 L4:
0036 .dbline 0 ; func end
0036 0895 ret
0038 .dbend
0038 .dbfunc e port_init _port_init fV
.even
0038 _port_init::
0038 .dbline -1
0038 .dbline 97
0038 ; }
0038 ; /*********************端口初始化*********************/
0038 ; void port_init(void)
0038 ; {
0038 .dbline 98
0038 ; PORTA = 0xfe;
0038 8EEF ldi R24,254
003A 8BBB out 0x1b,R24
003C .dbline 99
003C ; DDRA = 0x00;
003C 2224 clr R2
003E 2ABA out 0x1a,R2
0040 .dbline 100
0040 ; PORTB = 0x00;
0040 28BA out 0x18,R2
0042 .dbline 101
0042 ; DDRB = 0x0D;
0042 8DE0 ldi R24,13
0044 87BB out 0x17,R24
0046 .dbline 102
0046 ; PORTC = 0x00; //m103 output only
0046 25BA out 0x15,R2
0048 .dbline 103
0048 ; DDRC = 0xFF;
0048 8FEF ldi R24,255
004A 84BB out 0x14,R24
004C .dbline 104
004C ; PORTD = 0xff;
004C 82BB out 0x12,R24
004E .dbline 105
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -