pwm.c
来自「DSP2407控制程序」· C语言 代码 · 共 56 行
C
56 行
#include "LF2407REGS.h"
void initsys(){
asm(" setc SXM ");
asm(" clrc OVM ");
asm(" clrc CNF ");
*SCSR1=0x83fe;
*WDCR =0x0e8;
*IMR =0x000f;
*IFR =0xffff;
*WSGR =0x00;
}
void inline disable(){
asm(" setc INTM ");
}
void inline enable(){
asm(" clrc INTM ");
}
void PWMinit(){
*MCRC=*MCRC|0x007e; //IOPE1~IOPE6配置为基本功能方式
*ACTRB=0x0666; //PWM12,10,8低有效,PWM11,9,7高有效
*DBTCONB=0; //不使能死区控制
*CMPR4 = 0x1000;
*CMPR5 = 0x2000;
*CMPR6 = 0x3000;
*T3PER = 0x6000; //设置定时器3的周期寄存器,并设置CMPR4~CMPR6,以确定不同的输出占空比
*COMCONB=0x8200; //使能比较操作
*T3CON = 0x1000; // 定时器3为连续增计数模式
}
void interrupt nothing()
{
return;
}
void main()
{
disable(); //总中断禁止
initsys(); //系统初始化
PWMinit(); //pwm初始化
*T3CON=*T3CON|0x40; //启动定时器3
while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?