📄 main.lis
字号:
.module main.c
.area data(ram, con, rel)
0000 _adc_vol::
0000 .blkb 4
.area idata
0000 00000000 .word 0,0
.area data(ram, con, rel)
0004 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0004 .dbsym e adc_vol _adc_vol L
0004 _read_vol::
0004 .blkb 4
.area idata
0004 00000000 .word 0,0
.area data(ram, con, rel)
0008 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0008 .dbsym e read_vol _read_vol L
0008 _ad_is_ok::
0008 .blkb 1
.area idata
0008 00 .byte 0
.area data(ram, con, rel)
0009 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0009 .dbsym e ad_is_ok _ad_is_ok c
0009 _ad_flag::
0009 .blkb 1
.area idata
0009 00 .byte 0
.area data(ram, con, rel)
000A .dbfile E:\张秋伟\我的实验\数控电压源\main.c
000A .dbsym e ad_flag _ad_flag c
000A _AD_COUNT::
000A .blkb 2
.area idata
000A 0000 .word 0
.area data(ram, con, rel)
000C .dbfile E:\张秋伟\我的实验\数控电压源\main.c
000C .dbsym e AD_COUNT _AD_COUNT i
000C _counter::
000C .blkb 2
.area idata
000C 0000 .word 0
.area data(ram, con, rel)
000E .dbfile E:\张秋伟\我的实验\数控电压源\main.c
000E .dbsym e counter _counter i
000E _time_delay::
000E .blkb 2
.area idata
000E 0000 .word 0
.area data(ram, con, rel)
0010 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0010 .dbsym e time_delay _time_delay i
0010 _key_is_ok::
0010 .blkb 2
.area idata
0010 0000 .word 0
.area data(ram, con, rel)
0012 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0012 .dbsym e key_is_ok _key_is_ok i
0012 _key_value1::
0012 .blkb 2
.area idata
0012 1000 .word 16
.area data(ram, con, rel)
0014 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0014 .dbsym e key_value1 _key_value1 i
0014 _key_value2::
0014 .blkb 2
.area idata
0014 1000 .word 16
.area data(ram, con, rel)
0016 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0016 .dbsym e key_value2 _key_value2 i
0016 _Set_Value::
0016 .blkb 2
.area idata
0016 0A00 .word 10
.area data(ram, con, rel)
0018 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0018 .dbsym e Set_Value _Set_Value i
0018 _VOL_L::
0018 .blkb 2
.area idata
0018 0000 .word 0
.area data(ram, con, rel)
001A .dbfile E:\张秋伟\我的实验\数控电压源\main.c
001A .dbsym e VOL_L _VOL_L i
001A _VOL_H::
001A .blkb 2
.area idata
001A 0000 .word 0
.area data(ram, con, rel)
001C .dbfile E:\张秋伟\我的实验\数控电压源\main.c
001C .dbsym e VOL_H _VOL_H i
001C _VOL_H0::
001C .blkb 2
.area idata
001C 0000 .word 0
.area data(ram, con, rel)
001E .dbfile E:\张秋伟\我的实验\数控电压源\main.c
001E .dbsym e VOL_H0 _VOL_H0 i
001E _VOL_L0::
001E .blkb 2
.area idata
001E 0000 .word 0
.area data(ram, con, rel)
0020 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0020 .dbsym e VOL_L0 _VOL_L0 i
0020 _VOL_P::
0020 .blkb 1
.area idata
0020 00 .byte 0
.area data(ram, con, rel)
0021 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0021 .dbsym e VOL_P _VOL_P c
0021 _real_vol::
0021 .blkb 1
.area idata
0021 00 .byte 0
.area data(ram, con, rel)
0022 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0022 .dbsym e real_vol _real_vol c
0022 _clear_flag::
0022 .blkb 1
.area idata
0022 00 .byte 0
.area data(ram, con, rel)
0023 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0023 .dbsym e clear_flag _clear_flag c
0023 _ahead_flag::
0023 .blkb 1
.area idata
0023 00 .byte 0
.area data(ram, con, rel)
0024 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0024 .dbsym e ahead_flag _ahead_flag c
0024 _back_flag::
0024 .blkb 1
.area idata
0024 00 .byte 0
.area data(ram, con, rel)
0025 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0025 .dbsym e back_flag _back_flag c
0025 _ENTER::
0025 .blkb 1
.area idata
0025 00 .byte 0
.area data(ram, con, rel)
0026 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0026 .dbsym e ENTER _ENTER c
0026 _state:
0026 .blkb 1
.area idata
0026 00 .byte 0
.area data(ram, con, rel)
0027 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0027 .dbsym s state _state c
0027 _cn:
0027 .blkb 1
.area idata
0027 00 .byte 0
.area data(ram, con, rel)
0028 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0028 .dbsym s cn _cn c
0028 _welcome::
0028 .blkb 12
.area idata
0028 766F6C742D736F7572636500 .byte 'v,'o,'l,'t,45,'s,'o,'u,'r,'c,'e,0
.area data(ram, con, rel)
0034 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0034 .dbsym e welcome _welcome A[12:12]c
0034 _st::
0034 .blkb 16
.area idata
0034 53797374656D2D7374617274696E6700 .byte 'S,'y,'s,'t,'e,'m,45,'s,'t,'a,'r,'t,'i,'n,'g,0
.area data(ram, con, rel)
0044 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0044 .dbsym e st _st A[16:16]c
0044 _setting::
0044 .blkb 5
.area idata
0044 7365743A00 .byte 's,'e,'t,58,0
.area data(ram, con, rel)
0049 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0049 .dbsym e setting _setting A[5:5]c
0049 _measure::
0049 .blkb 9
.area idata
0049 4D6561737572653A00 .byte 'M,'e,'a,'s,'u,'r,'e,58,0
.area data(ram, con, rel)
0052 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0052 .dbsym e measure _measure A[9:9]c
0052 _error::
0052 .blkb 6
.area idata
0052 6572726F7200 .byte 'e,'r,'r,'o,'r,0
.area data(ram, con, rel)
0058 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0058 .dbsym e error _error A[6:6]c
.area text(rom, con, rel)
0000 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0000 .dbfunc e system_init _system_init fV
.even
0000 _system_init::
0000 .dbline -1
0000 .dbline 57
0000 ; //包含所需头文件
0000 ; #include <ioM16v.h>
0000 ; #include <macros.h>
0000 ; #include "delay.h"
0000 ; #include "LCD1602.H"
0000 ; #include "boxing.h"
0000 ; /*------宏定义------*/
0000 ; #define uchar unsigned char
0000 ; #define uint unsigned int
0000 ;
0000 ; #define DAC_DATA PORTB
0000 ; #define DAC_DDR DDRB
0000 ;
0000 ; uint Adverage_vol;
0000 ; long adc_vol=0;
0000 ; long read_vol=0;
0000 ; unsigned int adc_calc(void);
0000 ; void control(void);
0000 ; uchar ad_is_ok=0;
0000 ; void adc_init(void);
0000 ;
0000 ; unsigned char ad_flag=0;
0000 ; uint AD_COUNT=0;
0000 ; uint counter=0;
0000 ; uint time_delay=0;
0000 ; uint key_is_ok=0;
0000 ; uint key_value1=16;
0000 ; uint key_value2=16;
0000 ; uint Set_Value=10;
0000 ; uchar Set_Value_H;
0000 ; uchar Set_Value_L;
0000 ;
0000 ; uint VOL_L=0;
0000 ; uint VOL_H=0;
0000 ; uint VOL_H0=0;
0000 ; uint VOL_L0=0;
0000 ;
0000 ; uchar VOL_P=0;
0000 ; uchar real_vol=0;
0000 ;
0000 ; uchar clear_flag=0;
0000 ; uchar ahead_flag=0;
0000 ; uchar back_flag=0;
0000 ; uint setting_val;
0000 ; uchar ENTER=0;
0000 ; static uchar state=0,cn=0;
0000 ; uint SET_VALUE[4];
0000 ;
0000 ; uchar welcome[] = {"volt-source"}; //开机欢迎文字
0000 ; uchar st[] = {"System-starting"};
0000 ; uchar setting[] = {"set:"}; //设定值
0000 ; uchar measure[] = {"Measure:"}; // 测量值
0000 ; uchar error[]={"error"};
0000 ;
0000 ;
0000 ; void system_init()
0000 ; {
0000 .dbline 58
0000 ; Write_Position(1,1);
0000 21E0 ldi R18,1
0002 30E0 ldi R19,0
0004 01E0 ldi R16,1
0006 10E0 ldi R17,0
0008 0E940000 xcall _Write_Position
000C .dbline 59
000C ; Write_String(welcome);
000C 00E0 ldi R16,<_welcome
000E 10E0 ldi R17,>_welcome
0010 0E940000 xcall _Write_String
0014 .dbline 60
0014 ; Write_Position(2,1);
0014 21E0 ldi R18,1
0016 30E0 ldi R19,0
0018 02E0 ldi R16,2
001A 10E0 ldi R17,0
001C 0E940000 xcall _Write_Position
0020 .dbline 61
0020 ; Write_String(st);
0020 00E0 ldi R16,<_st
0022 10E0 ldi R17,>_st
0024 0E940000 xcall _Write_String
0028 .dbline 62
0028 ; delay_nms(1500);
0028 0CED ldi R16,1500
002A 15E0 ldi R17,5
002C 0E940000 xcall _delay_nms
0030 .dbline 63
0030 ; Clear_Screen;
0030 01E0 ldi R16,1
0032 0E940000 xcall _Write_Command
0036 .dbline -2
0036 L1:
0036 .dbline 0 ; func end
0036 0895 ret
0038 .dbend
0038 .dbfunc e dec_to_bin _dec_to_bin fc
0038 ; temp1 -> R20
0038 ; i -> R22,R23
0038 ; temp -> R10,R11
0038 ; data -> R12,R13
.even
0038 _dec_to_bin::
0038 0E940000 xcall push_gset4
003C 6801 movw R12,R16
003E .dbline -1
003E .dbline 67
003E ; }
003E ; //用于将十进制数转换成IO口上的二进制数
003E ; uchar dec_to_bin(uint data)
003E ; {
003E .dbline 69
003E ;
003E ; uint i=0;
003E 6627 clr R22
0040 7727 clr R23
0042 .dbline 70
0042 ; uint temp=0;
0042 AA24 clr R10
0044 BB24 clr R11
0046 .dbline 71
0046 ; uchar temp1=0x00;
0046 4427 clr R20
0048 .dbline 72
0048 ; temp=data;
0048 5601 movw R10,R12
004A .dbline 73
004A ; for(;i<8;i++)
004A 24C0 xjmp L6
004C L3:
004C .dbline 74
004C ; {
004C .dbline 75
004C ; if((temp%2)==1)
004C C501 movw R24,R10
004E 8170 andi R24,1
0050 9070 andi R25,0
0052 8130 cpi R24,1
0054 E0E0 ldi R30,0
0056 9E07 cpc R25,R30
0058 51F4 brne L7
005A .dbline 76
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -