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

📄 pwm1.lis

📁 详细介绍M8两版间通讯
💻 LIS
字号:
                        .module PWM1.c
                        .area text(rom, con, rel)
 0000                   .dbfile G:\Mega8程序\TCXO评估板\Main\PWM1.c
 0000                   .dbfunc e pwm1_init _pwm1_init fV
                        .even
 0000           _pwm1_init::
 0000                   .dbline -1
 0000                   .dbline 11
 0000           ; /*
 0000           ; T/C1使用PWM控制方式,进行DA转换。
 0000           ; 直接对OCR1A、OCR1B写入电压数据,两路输出,精度12位
 0000           ; */
 0000           ; #include <iom8v.h>
 0000           ; #include <macros.h>
 0000           ; #define Vref  4995
 0000           ; //参考电压值
 0000           ; //T1初始化程序
 0000           ; void pwm1_init(void)
 0000           ;  {
 0000                   .dbline 12
 0000           ;       TCCR1B = 0;
 0000 2224              clr R2
 0002 2EBC              out 0x2e,R2
 0004                   .dbline 14
 0004           ;       //PWM停止工作
 0004           ;       DDRB=0b00000110;
 0004 86E0              ldi R24,6
 0006 87BB              out 0x17,R24
 0008                   .dbline 16
 0008           ;       //OC1A作为PWMA输出引脚,OC1B作为PWMB输出引脚
 0008           ;       ICR1=0x0FFF;
 0008 8FEF              ldi R24,4095
 000A 9FE0              ldi R25,15
 000C 97BD              out 0x27,R25
 000E 86BD              out 0x26,R24
 0010                   .dbline 18
 0010           ;       //PWM模式14,ICR1作为top值,12位精度
 0010           ;       TCNT1=0;
 0010 3324              clr R3
 0012 3DBC              out 0x2d,R3
 0014 2CBC              out 0x2c,R2
 0016                   .dbline 19
 0016           ;       OCR1A=0x0000;
 0016 3BBC              out 0x2b,R3
 0018 2ABC              out 0x2a,R2
 001A                   .dbline 20
 001A           ;       OCR1B=0x0000;
 001A 39BC              out 0x29,R3
 001C 28BC              out 0x28,R2
 001E                   .dbline 26
 001E           ;       /*
 001E           ;       启动两路PWM输出,工作模式14(WGM XX),以系统时钟工作(CS XX)
 001E           ;       两路均为计数至TOP时,输出引脚清零(COM1 X1:COM1 X0),换言之,正占空比与
 001E           ;       OCR1X成正比
 001E           ;       */
 001E           ;       TCCR1A =(1<<WGM11)|(1<<COM1A1)|(1<<COM1B1);
 001E 82EA              ldi R24,162
 0020 8FBD              out 0x2f,R24
 0022                   .dbline 27
 0022           ;       TCCR1B =(1<<WGM13)|(1<<WGM12)|(1<<CS10);
 0022 89E1              ldi R24,25
 0024 8EBD              out 0x2e,R24
 0026                   .dbline -2
 0026           L1:
 0026                   .dbline 0 ; func end
 0026 0895              ret
 0028                   .dbend

⌨️ 快捷键说明

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