智能车制作
标题:
脉冲累加器
[打印本页]
作者:
没文化
时间:
2012-5-1 15:33
标题:
脉冲累加器
void SET_PLL(void) {
SYNR =0xc0 | 0x04;
REFDV=0x80 | 0x01;
while(CRGFLG_LOCK!=1);
POSTDIV=0;
CLKSEL_PLLSEL=1; //busclock=40M
}
void Init_PIT(void) { //1ms
PITCFLMT=0x00; //禁止PIT模块
PITCE_PCE0=1; //使能定时通道0
PITMUX=0x00; //定时器0使用微定时基准0
PITMTLD0=0xc7; //设置8位定时装载器0初始值
PITLD0=0x00c7; //设置16位装载寄存器0初值
PITINTE=0x01; //使能PIT定时器通道0中断
PITCFLMT=0x80; //使能PIT模块
}
void Init_PWM(void) {
PWMPRCLK=0x43; //0100 0011 clockA 8分频 clockB 16分频
PWMSCLA=0x20; //SA=40M/(2*8*32)
PWMSCLB=0x0A; //SB=40M/(2*16*10)
PWMCLK=0x00; //所有通道都选择A或B时钟源
PWMCAE=0x00; //全部左对齐
PWMPOL=0xFF; //全部高电平开始
PWMPER0=254;
PWMDTY0=40;
//通道1的占空比和周期
PWMPER1=200;
PWMDTY1=0;
//通道0的占空比和周期
PWME=0x03; //通道0、1使能 0、1使用A /SA
}
void Init_PA(void) {
PACTL=0x44;
PACNT=0; //清空寄存器
}
用这样的初始化把pwm输入到脉冲累加器里面,1ms读一次寄存器,为什么算出来的频率总是pwm频率的一半?
作者:
没文化
时间:
2012-5-1 15:52
自己顶一下!!!!
作者:
尘封的熊猫1990
时间:
2012-5-30 17:29
PACTL=0x50;
作者:
电气4王海兵
时间:
2012-10-21 21:46
欢迎光临 智能车制作 (http://www.znczz.com/)
Powered by Discuz! X3.2