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

📄 m16pwm-led.lis

📁 电动车控制器
💻 LIS
📖 第 1 页 / 共 4 页
字号:
                        .module m16pwm-led.c
                        .area data(ram, con, rel)
 0000           _AdResult::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0001                   .dbsym e AdResult _AdResult c
 0001           _SpeedMode::
 0001                   .blkb 1
                        .area idata
 0001 00                .byte 0
                        .area data(ram, con, rel)
 0002                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0002                   .dbsym e SpeedMode _SpeedMode c
 0002           _SpeedVal::
 0002                   .blkb 1
                        .area idata
 0002 00                .byte 0
                        .area data(ram, con, rel)
 0003                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0003                   .dbsym e SpeedVal _SpeedVal c
 0003           _M8Mode::
 0003                   .blkb 1
                        .area idata
 0003 00                .byte 0
                        .area data(ram, con, rel)
 0004                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0004                   .dbsym e M8Mode _M8Mode c
 0004           _LedTab::
 0004                   .blkb 2
                        .area idata
 0004 EB41              .byte 235,'A
                        .area data(ram, con, rel)
 0006                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0006                   .blkb 2
                        .area idata
 0006 B3BA              .byte 179,186
                        .area data(ram, con, rel)
 0008                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0008                   .blkb 2
                        .area idata
 0008 78DA              .byte 'x,218
                        .area data(ram, con, rel)
 000A                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 000A                   .blkb 2
                        .area idata
 000A DBA8              .byte 219,168
                        .area data(ram, con, rel)
 000C                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 000C                   .blkb 2
                        .area idata
 000C FBFA              .byte 251,250
                        .area data(ram, con, rel)
 000E                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 000E                   .blkb 2
                        .area idata
 000E F9FB              .byte 249,251
                        .area data(ram, con, rel)
 0010                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0010                   .blkb 2
                        .area idata
 0010 C3EB              .byte 195,235
                        .area data(ram, con, rel)
 0012                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0012                   .blkb 2
                        .area idata
 0012 D3D1              .byte 211,209
                        .area data(ram, con, rel)
 0014                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0014                   .dbsym e LedTab _LedTab A[16:16]c
 0014           _LedBuf::
 0014                   .blkb 2
                        .area idata
 0014 0000              .byte 0,0
                        .area data(ram, con, rel)
 0016                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0016                   .dbsym e LedBuf _LedBuf A[2:2]c
 0016           _LedDp::
 0016                   .blkb 1
                        .area idata
 0016 00                .byte 0
                        .area data(ram, con, rel)
 0017                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0017                   .dbsym e LedDp _LedDp c
 0017           _UartBufCount::
 0017                   .blkb 1
                        .area idata
 0017 00                .byte 0
                        .area data(ram, con, rel)
 0018                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0018                   .dbsym e UartBufCount _UartBufCount c
 0018           _LRledReg::
 0018                   .blkb 1
                        .area idata
 0018 00                .byte 0
                        .area data(ram, con, rel)
 0019                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0019                   .dbsym e LRledReg _LRledReg c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0000                   .dbfunc e port_init _port_init fV
                        .even
 0000           _port_init::
 0000                   .dbline -1
 0000                   .dbline 44
 0000           ; ////////////////////////////////////////////////////////////////////////////////
 0000           ; //ICC-AVR application builder : 2006-8-1 上午 08:05:37
 0000           ; // Target : M16
 0000           ; // Crystal: 16.0000Mhz
 0000           ; // ADc2采集转把信号
 0000           ; ////////////////////////////////////////////////////////////////////////////////
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; 
 0000           ; #define fre 125
 0000           ; #define uchar     unsigned char
 0000           ; #define uint      unsigned int
 0000           ; unsigned char  kk;
 0000           ; int k;
 0000           ; uchar temp_data,hour_data,minut_data,second_data,second_flag;
 0000           ; uchar AdResult=0;
 0000           ; uchar SpeedMode=0;//SpeedMode=0 手动模式;SpeedMode=0x55 巡航模式
 0000           ; uchar SpeedVal=0;//保存当前速度参数,用于巡航模式
 0000           ; uchar M8Mode=0x0;//M8控制字=Rev,Rev,Rev,RevMode,Rev,Rev,LEFT_LED,RIGHT_LED
 0000           ; uchar LedTab[16]={0xEB,0x41,0xB3,0xBA,0x78,0xDA,0xDB,0xA8,0xFB,0xFA,
 0000           ;                              0xF9,0xFB,0xC3,0xEB,0xD3,0xD1};
 0000           ; uchar LedBuf[2]={0,0};        
 0000           ; uchar LedDp=0;
 0000           ; uchar UartBuf[10],UartBufCount=0;
 0000           ; uchar LRledReg=0;                                              
 0000           ; 
 0000           ; 
 0000           ; ////////////////////////////////////////////////////////////////////////////////
 0000           ; //function declare
 0000           ; void port_init(void);
 0000           ; void uart0_init(void);
 0000           ; void uart0_rx_isr(void);
 0000           ; void uart0_tx(uchar tdata);
 0000           ; void tx_pack(void);
 0000           ; void timer1_init(void);
 0000           ; void timer1_comp_isr(void);
 0000           ; void led_display(uchar delay);
 0000           ; void HexToDec(uchar hex,uchar dec);
 0000           ; void ms_delay(uint delay);
 0000           ; void init_devices(void);
 0000           ; void adc_init(void);   
 0000           ; ////////////////////////////////////////////////////////////////////////////////
 0000           ; void port_init(void)
 0000           ; {
 0000                   .dbline 45
 0000           ;  PORTA = 0xFF;
 0000 8FEF              ldi R24,255
 0002 8BBB              out 0x1b,R24
 0004                   .dbline 46
 0004           ;  DDRA  = 0xFB; //PA2=ADC2,输入
 0004 8BEF              ldi R24,251
 0006 8ABB              out 0x1a,R24
 0008                   .dbline 47
 0008           ;  PORTB = 0xFF;
 0008 8FEF              ldi R24,255
 000A 88BB              out 0x18,R24
 000C                   .dbline 48
 000C           ;  DDRB  = 0x1F; //数码管片选信号,低有效,常态为高,PB4=LED-dp
 000C 8FE1              ldi R24,31
 000E 87BB              out 0x17,R24
 0010                   .dbline 49
 0010           ;  PORTC = 0xFF; //m103 output only
 0010 8FEF              ldi R24,255
 0012 85BB              out 0x15,R24
 0014                   .dbline 50
 0014           ;  DDRC  = 0x00; //PC0,1=RL_in
 0014 2224              clr R2
 0016 24BA              out 0x14,R2
 0018                   .dbline 51
 0018           ;  PORTD = 0x9F;
 0018 8FE9              ldi R24,159
 001A 82BB              out 0x12,R24
 001C                   .dbline 52
 001C           ;  DDRD  = 0x78;
 001C 88E7              ldi R24,120
 001E 81BB              out 0x11,R24
 0020                   .dbline -2
 0020           L1:
 0020                   .dbline 0 ; func end
 0020 0895              ret
 0022                   .dbend
 0022                   .dbfunc e timer1_init _timer1_init fV
                        .even
 0022           _timer1_init::
 0022                   .dbline -1
 0022                   .dbline 61
 0022           ; }
 0022           ; 
 0022           ; 
 0022           ; //TIMER1 initialisation - prescale:1
 0022           ; // WGM: 0) Normal, TOP=0xFFFF
 0022           ; // desired value: 1Sec
 0022           ; // actual value:  1.000Sec (0.0%)
 0022           ; void timer1_init(void)
 0022           ; {
 0022                   .dbline 62
 0022           ;  TCCR1B = 0x00; //stop
 0022 2224              clr R2
 0024 2EBC              out 0x2e,R2
 0026                   .dbline 63
 0026           ;  TCNT1H = 0xC2; //setup
 0026 82EC              ldi R24,194
 0028 8DBD              out 0x2d,R24
 002A                   .dbline 64
 002A           ;  TCNT1L = 0xF7;
 002A 87EF              ldi R24,247
 002C 8CBD              out 0x2c,R24
 002E                   .dbline 65
 002E           ;  OCR1AH = 0x3D;
 002E 8DE3              ldi R24,61
 0030 8BBD              out 0x2b,R24
 0032                   .dbline 66
 0032           ;  OCR1AL = 0x09;
 0032 89E0              ldi R24,9
 0034 8ABD              out 0x2a,R24
 0036                   .dbline 67
 0036           ;  OCR1BH = 0x3D;
 0036 8DE3              ldi R24,61
 0038 89BD              out 0x29,R24
 003A                   .dbline 68
 003A           ;  OCR1BL = 0x09;
 003A 89E0              ldi R24,9
 003C 88BD              out 0x28,R24
 003E                   .dbline 71
 003E           ;  //OCR1CH = $OCR1CH$;
 003E           ;  //OCR1CL = $OCR1CL$;
 003E           ;  ICR1H  = 0x3D;
 003E 8DE3              ldi R24,61
 0040 87BD              out 0x27,R24
 0042                   .dbline 72
 0042           ;  ICR1L  = 0x09;
 0042 89E0              ldi R24,9
 0044 86BD              out 0x26,R24
 0046                   .dbline 73
 0046           ;  TCCR1A = 0x00;
 0046 2FBC              out 0x2f,R2
 0048                   .dbline 74
 0048           ;  TCCR1B = 0x05; //start Timer
 0048 85E0              ldi R24,5
 004A 8EBD              out 0x2e,R24
 004C                   .dbline -2
 004C           L2:
 004C                   .dbline 0 ; func end
 004C 0895              ret
 004E                   .dbend
 004E                   .dbfunc e uart0_init _uart0_init fV
                        .even
 004E           _uart0_init::
 004E                   .dbline -1
 004E                   .dbline 85
 004E           ; }
 004E           ; /*************************************************************************** 
 004E           ;                                                   
 004E           ; ****************************************************************************/ 
 004E           ; //UART0 initialize
 004E           ; // desired baud rate: 9600
 004E           ; // actual: baud rate:9615 (0.2%)
 004E           ; // char size: 8 bit
 004E           ; // parity: Disabled
 004E           ; void uart0_init(void)
 004E           ; {
 004E                   .dbline 86
 004E           ;  UCSRB = 0x00; //disable while setting baud rate
 004E 2224              clr R2
 0050 2AB8              out 0xa,R2
 0052                   .dbline 87
 0052           ;  UCSRA = 0x00;
 0052 2BB8              out 0xb,R2
 0054                   .dbline 88
 0054           ;  UCSRC = BIT(URSEL) | 0x06;
 0054 86E8              ldi R24,134
 0056 80BD              out 0x20,R24
 0058                   .dbline 89
 0058           ;  UBRRL = 0x67; //set baud rate lo
 0058 87E6              ldi R24,103
 005A 89B9              out 0x9,R24
 005C                   .dbline 90
 005C           ;  UBRRH = 0x00; //set baud rate hi
 005C 20BC              out 0x20,R2
 005E                   .dbline 91
 005E           ;  UCSRB = 0x98;
 005E 88E9              ldi R24,152
 0060 8AB9              out 0xa,R24
 0062                   .dbline -2
 0062           L3:
 0062                   .dbline 0 ; func end
 0062 0895              ret
 0064                   .dbend
                        .area vector(rom, abs)
                        .org 44
 002C 0C943200          jmp _uart0_rx_isr
                        .area text(rom, con, rel)
 0064                   .dbfile D:\EBIKE\eb_pro\M16PWM_led\m16pwm-led.c
 0064                   .dbfunc e uart0_rx_isr _uart0_rx_isr fV
 0064           ;        voldata -> R20
                        .even
 0064           _uart0_rx_isr::
 0064 0A92              st -y,R0
 0066 1A92              st -y,R1
 0068 2A92              st -y,R2
 006A 3A92              st -y,R3
 006C 0A93              st -y,R16
 006E 1A93              st -y,R17
 0070 2A93              st -y,R18
 0072 3A93              st -y,R19
 0074 8A93              st -y,R24
 0076 9A93              st -y,R25
 0078 EA93              st -y,R30
 007A FA93              st -y,R31
 007C 0FB6              in R0,0x3f
 007E 0A92              st -y,R0
 0080 0E940000          xcall push_gset1
 0084                   .dbline -1
 0084                   .dbline 98
 0084           ; }
 0084           ; /*************************************************************************** 
 0084           ;                                                  
 0084           ; ****************************************************************************/ 
 0084           ; #pragma interrupt_handler uart0_rx_isr:12
 0084           ; void uart0_rx_isr(void)
 0084           ; {
 0084                   .dbline 101
 0084           ;   uchar voldata;
 0084           ;  //uart has received a character in UDR
 0084           ;     UartBuf[UartBufCount++]= UDR;
 0084 20901700          lds R2,_UartBufCount
 0088 3324              clr R3
 008A 822D              mov R24,R2
 008C 8F5F              subi R24,255    ; addi 1
 008E 80931700          sts _UartBufCount,R24
 0092 80E0              ldi R24,<_UartBuf

⌨️ 快捷键说明

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