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

📄 time2.lis

📁 前两年在一家模型公司开发的
💻 LIS
字号:
                        .module time2.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\TWINTI~1\time2.c
 0000                   .dbfunc e timer2_init _timer2_init fV
                        .even
 0000           _timer2_init::
 0000                   .dbline -1
 0000                   .dbline 30
 0000           ; /********************************************************************************/
 0000           ; //            
 0000           ; //            builder : 2007-04-10
 0000           ; //            Target  : ATMEAG 48V
 0000           ; //            Crystal : 内部 8.00 MHz
 0000           ; //
 0000           ; //            PWM 模块
 0000           ;               
 0000           ; /********************************************************************************/
 0000           ; 
 0000           ; 
 0000           ; #include      <iom48v.h>
 0000           ; #include      <macros.h>
 0000           ; 
 0000           ; #define               uchar   unsigned char
 0000           ; #define               uint    unsigned int
 0000           ;       
 0000           ; #define               CLR_REV1        PORTD &= ~(1<<PD6)
 0000           ; #define               SET_REV1        PORTD |=  (1<<PD6)
 0000           ; 
 0000           ; #define               CLR_JUST1       PORTB &= ~(1<<PB4)
 0000           ; #define               SET_JUST1       PORTB |=  (1<<PB4)
 0000           ; 
 0000           ; 
 0000           ; 
 0000           ; //TIMER0 initialize - prescale:8
 0000           ; // desired value: 1Hz
 0000           ; // actual value: Out of range
 0000           ; extern void timer2_init(void)
 0000           ; {
 0000                   .dbline 31
 0000           ;       TCCR2B  = 0x00; //stop
 0000 2224              clr R2
 0002 2092B100          sts 177,R2
 0006                   .dbline 32
 0006           ;       ASSR    = 0x00; //set async mode
 0006 2092B600          sts 182,R2
 000A                   .dbline 33
 000A           ;       TCNT2   = 0x01; //setup
 000A 81E0              ldi R24,1
 000C 8093B200          sts 178,R24
 0010                   .dbline 34
 0010           ;       TCCR2A  = 0xA1; 
 0010 81EA              ldi R24,161
 0012 8093B000          sts 176,R24
 0016                   .dbline 35
 0016           ;       OCR2B   = 0x00;
 0016 2092B400          sts 180,R2
 001A                   .dbline 36
 001A           ;       TCCR2B  = 0x02;
 001A 82E0              ldi R24,2
 001C 8093B100          sts 177,R24
 0020                   .dbline -2
 0020           L1:
 0020                   .dbline 0 ; func end
 0020 0895              ret
 0022                   .dbend
 0022                   .dbfunc e Pwm_set _Pwm_set fV
 0022           ;            rev -> R18
 0022           ;            pwm -> R16
                        .even
 0022           _Pwm_set::
 0022                   .dbline -1
 0022                   .dbline 44
 0022           ; }
 0022           ; 
 0022           ; /*---------------------------------------------------------------
 0022           ;                       PWM 占空比设置 
 0022           ; ----------------------------------------------------------------*/
 0022           ; 
 0022           ; extern void Pwm_set(uchar pwm,uchar rev)
 0022           ; {
 0022                   .dbline 45
 0022           ;       if(rev==2)
 0022 2230              cpi R18,2
 0024 41F4              brne L3
 0026                   .dbline 46
 0026           ;       {
 0026                   .dbline 47
 0026           ;               OCR2A   = 0;
 0026 2224              clr R2
 0028 2092B300          sts 179,R2
 002C                   .dbline 48
 002C           ;               OCR2B   = pwm;
 002C 0093B400          sts 180,R16
 0030                   .dbline 49
 0030           ;               CLR_REV1;
 0030 5E98              cbi 0xb,6
 0032                   .dbline 50
 0032           ;               SET_JUST1;
 0032 2C9A              sbi 0x5,4
 0034                   .dbline 51
 0034           ;       }
 0034 1AC0              rjmp L4
 0036           L3:
 0036                   .dbline 52
 0036           ;       else if(rev==1)
 0036 2130              cpi R18,1
 0038 41F4              brne L5
 003A                   .dbline 53
 003A           ;       {
 003A                   .dbline 54
 003A           ;               OCR2A   = pwm;
 003A 0093B300          sts 179,R16
 003E                   .dbline 55
 003E           ;               OCR2B   = 0;
 003E 2224              clr R2
 0040 2092B400          sts 180,R2
 0044                   .dbline 56
 0044           ;               SET_REV1;
 0044 5E9A              sbi 0xb,6
 0046                   .dbline 57
 0046           ;               CLR_JUST1;
 0046 2C98              cbi 0x5,4
 0048                   .dbline 58
 0048           ;       }
 0048 10C0              rjmp L6
 004A           L5:
 004A                   .dbline 59
 004A           ;       else if(rev==3)
 004A 2330              cpi R18,3
 004C 39F4              brne L7
 004E                   .dbline 60
 004E           ;       {
 004E                   .dbline 61
 004E           ;               OCR2A   = pwm;
 004E 0093B300          sts 179,R16
 0052                   .dbline 62
 0052           ;               OCR2B   = pwm;
 0052 0093B400          sts 180,R16
 0056                   .dbline 63
 0056           ;               CLR_REV1;
 0056 5E98              cbi 0xb,6
 0058                   .dbline 64
 0058           ;               CLR_JUST1;
 0058 2C98              cbi 0x5,4
 005A                   .dbline 65
 005A           ;       }
 005A 07C0              rjmp L8
 005C           L7:
 005C                   .dbline 67
 005C           ;       else 
 005C           ;       {
 005C                   .dbline 68
 005C           ;               OCR2A   = 0;
 005C 2224              clr R2
 005E 2092B300          sts 179,R2
 0062                   .dbline 69
 0062           ;               OCR2B   = 0;
 0062 2092B400          sts 180,R2
 0066                   .dbline 70
 0066           ;               CLR_REV1;
 0066 5E98              cbi 0xb,6
 0068                   .dbline 71
 0068           ;               CLR_JUST1;
 0068 2C98              cbi 0x5,4
 006A                   .dbline 72
 006A           ;       }
 006A           L8:
 006A           L6:
 006A           L4:
 006A                   .dbline -2
 006A           L2:
 006A                   .dbline 0 ; func end
 006A 0895              ret
 006C                   .dbsym r rev 18 c
 006C                   .dbsym r pwm 16 c
 006C                   .dbend

⌨️ 快捷键说明

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