📄 adc.lis
字号:
.module adc.c
.area data(ram, con, rel)
0000 _Type_flag::
0000 .blkb 1
.area idata
0000 00 .byte 0
.area data(ram, con, rel)
0001 .dbfile G:\猛\avr实践\AD\adc.c
0001 .dbsym e Type_flag _Type_flag c
0001 _channel_0_flag::
0001 .blkb 1
.area idata
0001 01 .byte 1
.area data(ram, con, rel)
0002 .dbfile G:\猛\avr实践\AD\adc.c
0002 .dbsym e channel_0_flag _channel_0_flag c
0002 _channel_1_flag::
0002 .blkb 1
.area idata
0002 01 .byte 1
.area data(ram, con, rel)
0003 .dbfile G:\猛\avr实践\AD\adc.c
0003 .dbsym e channel_1_flag _channel_1_flag c
0003 _channel_2_flag::
0003 .blkb 1
.area idata
0003 01 .byte 1
.area data(ram, con, rel)
0004 .dbfile G:\猛\avr实践\AD\adc.c
0004 .dbsym e channel_2_flag _channel_2_flag c
0004 _channel_3_flag::
0004 .blkb 1
.area idata
0004 01 .byte 1
.area data(ram, con, rel)
0005 .dbfile G:\猛\avr实践\AD\adc.c
0005 .dbsym e channel_3_flag _channel_3_flag c
0005 _Display_flag::
0005 .blkb 1
.area idata
0005 00 .byte 0
.area data(ram, con, rel)
0006 .dbfile G:\猛\avr实践\AD\adc.c
0006 .dbsym e Display_flag _Display_flag c
0006 _LED_table::
0006 .blkb 2
.area idata
0006 3F06 .byte 63,6
.area data(ram, con, rel)
0008 .dbfile G:\猛\avr实践\AD\adc.c
0008 .blkb 2
.area idata
0008 5B4F .byte 91,'O
.area data(ram, con, rel)
000A .dbfile G:\猛\avr实践\AD\adc.c
000A .blkb 2
.area idata
000A 666D .byte 'f,'m
.area data(ram, con, rel)
000C .dbfile G:\猛\avr实践\AD\adc.c
000C .blkb 2
.area idata
000C 7D07 .byte 125,7
.area data(ram, con, rel)
000E .dbfile G:\猛\avr实践\AD\adc.c
000E .blkb 2
.area idata
000E 7F6F .byte 127,'o
.area data(ram, con, rel)
0010 .dbfile G:\猛\avr实践\AD\adc.c
0010 .blkb 2
.area idata
0010 777C .byte 'w,124
.area data(ram, con, rel)
0012 .dbfile G:\猛\avr实践\AD\adc.c
0012 .blkb 2
.area idata
0012 395E .byte 57,94
.area data(ram, con, rel)
0014 .dbfile G:\猛\avr实践\AD\adc.c
0014 .blkb 2
.area idata
0014 7971 .byte 'y,'q
.area data(ram, con, rel)
0016 .dbfile G:\猛\avr实践\AD\adc.c
0016 .blkb 2
.area idata
0016 7638 .byte 'v,56
.area data(ram, con, rel)
0018 .dbfile G:\猛\avr实践\AD\adc.c
0018 .blkb 2
.area idata
0018 373E .byte 55,62
.area data(ram, con, rel)
001A .dbfile G:\猛\avr实践\AD\adc.c
001A .blkb 2
.area idata
001A 735C .byte 's,92
.area data(ram, con, rel)
001C .dbfile G:\猛\avr实践\AD\adc.c
001C .blkb 2
.area idata
001C 4000 .byte 64,0
.area data(ram, con, rel)
001E .dbfile G:\猛\avr实践\AD\adc.c
001E .dbsym e LED_table _LED_table A[24:24]c
.area vector(rom, abs)
.org 4
0004 0C94A800 jmp _External_INT_0
.area data(ram, con, rel)
001E .dbfile G:\猛\avr实践\AD\adc.c
.area vector(rom, abs)
.org 8
0008 0C94EA00 jmp _External_INT_1
.area data(ram, con, rel)
001E .dbfile G:\猛\avr实践\AD\adc.c
.area vector(rom, abs)
.org 12
000C 0C940C01 jmp _External_INT_2
.area data(ram, con, rel)
001E .dbfile G:\猛\avr实践\AD\adc.c
.area vector(rom, abs)
.org 84
0054 0C94B600 jmp _ADC_INT
.area data(ram, con, rel)
001E .dbfile G:\猛\avr实践\AD\adc.c
.area text(rom, con, rel)
0000 .dbfile G:\猛\avr实践\AD\adc.c
0000 .dbfunc e main _main fV
0000 ; i -> R22
.even
0000 _main::
0000 .dbline -1
0000 .dbline 90
0000 ; #include <iom128.h>
0000 ; #include <macros.h>
0000 ; #include <math.h>
0000 ; //LED 开关定义
0000 ;
0000 ; #define ADC_start 0x40
0000 ;
0000 ; #define Red_LED_on PORTB&~BIT(0)
0000 ; #define Red_LED_off PORTB|(1<<0)
0000 ; #define Green_LED_on PORTB&(~(1<<1))
0000 ; #define Green_LED_off PORTB|(1<<1)
0000 ; #define Yellow_LED_on PORTB&(~(1<<2))
0000 ; #define Yellow_LED_off PORTB|(1<<2)
0000 ; #define Blue_LED_on PORTB&(~(1<<3))
0000 ; #define Blue_LED_off PORTB|(1<<3)
0000 ;
0000 ; unsigned int AD_sample_value;
0000 ;
0000 ; unsigned char Type_flag = 0;
0000 ; unsigned char channel_0_flag = 1;
0000 ; unsigned char channel_1_flag = 1;
0000 ; unsigned char channel_2_flag = 1;
0000 ; unsigned char channel_3_flag = 1;
0000 ;
0000 ; //Display
0000 ; unsigned char number_baifen;
0000 ; unsigned char number_shifen;
0000 ; unsigned char number_ge_dot;
0000 ; unsigned char Display_type;
0000 ; unsigned char Display_value;
0000 ; unsigned char Display_flag = 0;
0000 ;
0000 ; unsigned char LED_table[]=
0000 ; {
0000 ; 0x3F, //"0"
0000 ; 0x06, //"1"
0000 ; 0x5B, //"2"
0000 ; 0x4F, //"3"
0000 ; 0x66, //"4"
0000 ; 0x6D, //"5"
0000 ; 0x7D, //"6"
0000 ; 0x07, //"7"
0000 ; 0x7F, //"8"
0000 ; 0x6F, //"9"
0000 ; 0x77, //"A"
0000 ; 0x7C, //"B"
0000 ; 0x39, //"C"
0000 ; 0x5E, //"D"
0000 ; 0x79, //"E"
0000 ; 0x71, //"F"
0000 ; 0x76, //"H"
0000 ; 0x38, //"L"
0000 ; 0x37, //"n"
0000 ; 0x3E, //"u"
0000 ; 0x73, //"P"
0000 ; 0x5C, //"o"
0000 ; 0x40, //"-"
0000 ; 0x00, //熄灭
0000 ; };
0000 ;
0000 ; //use for test;
0000 ;
0000 ; unsigned char m;
0000 ;
0000 ; //define Interrupt Vactor
0000 ;
0000 ; #pragma interrupt_handler External_INT_0:2 //外部中断0
0000 ; #pragma interrupt_handler External_INT_1:3 //外部中断1
0000 ; #pragma interrupt_handler External_INT_2:4 //外部中断2
0000 ; #pragma interrupt_handler ADC_INT:22 //ADC中断
0000 ;
0000 ; //pre_define
0000 ;
0000 ; void main(void);
0000 ; void Port_initialize(void);
0000 ; void ADC_initialize(void);
0000 ; void INT_initialize(void);
0000 ; void UART_initialize(void);
0000 ; void Delay(void);
0000 ; void External_INT_0(void);
0000 ; void ADC_INT(void);
0000 ; void External_INT_1(void);
0000 ; void External_INT_2(void);
0000 ; void LED_Display(unsigned char Channel_num,unsigned int Data);
0000 ; void DATA_to_NUM(unsigned int data);
0000 ;
0000 ;
0000 ;
0000 ; void main(void)
0000 ; {
0000 .dbline 93
0000 ; unsigned char i;
0000 ;
0000 ; Port_initialize();
0000 76D0 xcall _Port_initialize
0002 .dbline 95
0002 ; //UART_initialize();
0002 ; INT_initialize();
0002 84D0 xcall _INT_initialize
0004 .dbline 96
0004 ; ADC_initialize();
0004 7ED0 xcall _ADC_initialize
0006 .dbline 98
0006 ;
0006 ; for (; ; )
0006 L2:
0006 .dbline 99
0006 ; {
0006 .dbline 101
0006 ;
0006 ; switch (Type_flag)
0006 40910000 lds R20,_Type_flag
000A 5527 clr R21
000C 4130 cpi R20,1
000E E0E0 ldi R30,0
0010 5E07 cpc R21,R30
0012 49F0 breq L9
0014 4230 cpi R20,2
0016 E0E0 ldi R30,0
0018 5E07 cpc R21,R30
001A 49F0 breq L10
001C 4330 cpi R20,3
001E E0E0 ldi R30,0
0020 5E07 cpc R21,R30
0022 49F0 breq L11
0024 0CC0 xjmp L6
0026 X0:
0026 .dbline 102
0026 ; {
0026 L9:
0026 .dbline 111
0026 ; /*case 0: //发送的数值
0026 ; {
0026 ; Display_type = 0;
0026 ; Display_value = Tx_data;
0026 ;
0026 ; }break;
0026 ; */
0026 ; case 1: //发送计数
0026 ; {
0026 .dbline 112
0026 ; Display_type = 1;
0026 81E0 ldi R24,1
0028 80930200 sts _Display_type,R24
002C .dbline 115
002C ; //Display_value = Tx_counter;
002C ;
002C ; }break;
002C .dbline 115
002C 0BC0 xjmp L7
002E L10:
002E .dbline 118
002E ;
002E ; case 2: //接收的数值
002E ; {
002E .dbline 119
002E ; Display_type = 2;
002E 82E0 ldi R24,2
0030 80930200 sts _Display_type,R24
0034 .dbline 122
0034 ; //Display_value = Rx_data;
0034 ;
0034 ; }break;
0034 .dbline 122
0034 07C0 xjmp L7
0036 L11:
0036 .dbline 125
0036 ;
0036 ; case 3: //接收计数
0036 ; {
0036 .dbline 126
0036 ; Display_type = 3;
0036 83E0 ldi R24,3
0038 80930200 sts _Display_type,R24
003C .dbline 129
003C ; //Display_value = Rx_counter;
003C ;
003C ; }break;
003C .dbline 129
003C 03C0 xjmp L7
003E L6:
003E .dbline 132
003E ;
003E ; default:
003E ; {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -