📄 timerinitial.c
字号:
#include"2407regs.h"
void timerinitial(){
EVAIMRA=0x80; //使能T1PINT
EVBIMRA=0x80; //使能T3PINT
EVAIFRA=0xFFFF; //清空中断标志
EVBIFRA=0xFFFF; //清空中断标志
MCRA=MCRA|0x0a80; //PWM2,4,6
MCRC=MCRC|0x007E; //PWM7,8,9,10,11,12
PADATDIR=0x0000;
PBDATDIR=0x0000;
ACTRA=0x0555; //PWM1,3,5高有效;PWM2,4,6低有效
ACTRB=0x0555; //PWM7,9,11高有效;PWM8,10,12低有效
DBTCONA=0x0;
DBTCONB=0x0;
CMPR1=0x753; //舵机中间位置1875,即为1.5ms
CMPR2=0x753; //舵机中间位置1875,即为1.5ms
CMPR3=0x753; //舵机中间位置1875,即为1.5ms
CMPR4=0x753; //舵机中间位置1875,即为1.5ms
CMPR5=0x753; //舵机中间位置1875,即为1.5ms
CMPR6=0x753; //舵机中间位置1875,即为1.5ms
T1PR=0x61A8; //周期为25000,即为20ms
T3PR=0x61A8; //周期为25000,即为20ms
T1CNT=0x0;
T3CNT=0x0;
COMCONA=0x8200;
COMCONB=0x8200;
T1CON=0x1500; //定时器为连续增计数模式,晶振为10M,CLKOUT=40M,f=clk/32,实际为10MHZ
T3CON=0x1500; //定时器为连续增计数模式,晶振为10M,CLKOUT=40M,f=clk/32,实际为10MHZ
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -