📄 main_adc0832.lis
字号:
.module main_adc0832.c
.area text(rom, con, rel)
0000 .dbfile F:\学习\AVR单片机\AVR实验\adc0832_avr\main_adc0832.c
0000 .dbfunc e main _main fI
.even
0000 _main::
0000 .dbline -1
0000 .dbline 10
0000 ; #include <iom8515v.h>
0000 ; #include <macros.h>
0000 ;
0000 ; #define uchar unsigned char
0000 ; #define uint unsigned int
0000 ;
0000 ; uint num0,num1,num2,num;
0000 ;
0000 ; main()
0000 ; {
0000 .dbline 11
0000 ; DDRB=0xFF;
0000 8FEF ldi R24,255
0002 87BB out 0x17,R24
0004 .dbline 12
0004 ; PORTB=0xFF;
0004 88BB out 0x18,R24
0006 .dbline 13
0006 ; DDRC=0xFF;
0006 84BB out 0x14,R24
0008 .dbline 14
0008 ; PORTC=0xFF;
0008 85BB out 0x15,R24
000A 3BC0 rjmp L3
000C L2:
000C .dbline 16
000C ; while(1)
000C ; {
000C .dbline 17
000C ; read_adc();
000C 00D0 rcall _read_adc
000E .dbline 18
000E ; num0=returnvol()/100;
000E 00D0 rcall _returnvol
0010 24E6 ldi R18,100
0012 30E0 ldi R19,0
0014 00D0 rcall div16s
0016 10930700 sts _num0+1,R17
001A 00930600 sts _num0,R16
001E .dbline 20
001E ;
001E ; num1=(returnvol()%100)/10;
001E 00D0 rcall _returnvol
0020 24E6 ldi R18,100
0022 30E0 ldi R19,0
0024 00D0 rcall mod16s
0026 2AE0 ldi R18,10
0028 30E0 ldi R19,0
002A 00D0 rcall div16s
002C 10930500 sts _num1+1,R17
0030 00930400 sts _num1,R16
0034 .dbline 22
0034 ;
0034 ; num2=returnvol()%10;
0034 00D0 rcall _returnvol
0036 5801 movw R10,R16
0038 2AE0 ldi R18,10
003A 30E0 ldi R19,0
003C 00D0 rcall mod16s
003E 10930300 sts _num2+1,R17
0042 00930200 sts _num2,R16
0046 .dbline 24
0046 ;
0046 ; num=num0*100+num1*10+num2;
0046 20910400 lds R18,_num1
004A 30910500 lds R19,_num1+1
004E 0AE0 ldi R16,10
0050 10E0 ldi R17,0
0052 00D0 rcall empy16s
0054 1801 movw R2,R16
0056 20910600 lds R18,_num0
005A 30910700 lds R19,_num0+1
005E 04E6 ldi R16,100
0060 10E0 ldi R17,0
0062 00D0 rcall empy16s
0064 2801 movw R4,R16
0066 420C add R4,R2
0068 531C adc R5,R3
006A 20900200 lds R2,_num2
006E 30900300 lds R3,_num2+1
0072 420C add R4,R2
0074 531C adc R5,R3
0076 50920100 sts _num+1,R5
007A 40920000 sts _num,R4
007E .dbline 25
007E ; update_display_dp(num);
007E 8201 movw R16,R4
0080 00D0 rcall _update_display_dp
0082 .dbline 26
0082 ; }
0082 L3:
0082 .dbline 15
0082 C4CF rjmp L2
0084 X0:
0084 .dbline -2
0084 L1:
0084 .dbline 0 ; func end
0084 0895 ret
0086 .dbend
.area bss(ram, con, rel)
0000 .dbfile F:\学习\AVR单片机\AVR实验\adc0832_avr\main_adc0832.c
0000 _num::
0000 .blkb 2
0002 .dbsym e num _num i
0002 _num2::
0002 .blkb 2
0004 .dbsym e num2 _num2 i
0004 _num1::
0004 .blkb 2
0006 .dbsym e num1 _num1 i
0006 _num0::
0006 .blkb 2
0008 .dbsym e num0 _num0 i
0008 ; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -