智能车制作
标题:
请大家帮我看看这个程序。。。。
[打印本页]
作者:
伦敦的枪声
时间:
2011-4-8 21:53
标题:
请大家帮我看看这个程序。。。。
#include <hidef.h> /* common defines and macros */
#include "derivative.h" /* derivative-specific definitions */
unsigned int pulsecnt;
float sudu;
uint flag;
/***********锁相环初始化*****************************/
void CLL_init() {
SYNR=1; //锁相环频率为32M 总线为16M
REFDV=1;
while(!CRGFLG_LOCK);
CLKSEL=0X80;
}
/***********PIT初始化 每隔10ms************************/
void PIT_init() {
PITCFLMT_PITE=0; //关PIT寄存器
PITCE_PCE0=0; //关PIT定时器
PITMTLD0=160-1; //加载寄存器赋值 0.1M 10US
PITLD0=1000-1; // 10MS
PITCE_PCE0=1; //开PIT定时器
PITCFLMT_PITE=1; //开PIT寄存器
PITINTE_PINTE0=1; //开PIT中断
}
/************脉冲累加计数器初始化*********************/
void PAC_init()
{
PACTL=0X00; //关脉冲累加寄存器
PACNT=0X0000; //PAC清零
PACTL=0X40; //开
/*PACTL_PAEN=0; // 关脉冲累加寄存器使能
PACN32=0X0000; // 脉冲计数寄存器清零
PACTL_PAMOD=0; // 选择事件计数模式
PACTL_PEDGE=0; // 下降沿
PACTL_PAEN=1;*/ // 使能
}
void init_pwm()
{
PWME_PWME1=0;
PWMPRCLK=0X04;
PWMCLK_PCLK1=1;
PWMSCLA=50;
PWMPOL_PPOL1=1;
PWMCAE_CAE1=0;
PWMPER1=200;
PWMDTY1=100;
PWMCNT1=0X00;
PWME_PWME1=1;
}
void Speed()
{
sudu=(float)(1/19*pulsecnt);
}
void main()
{
/* put your own code here */
sudu=0.0;
CLL_init();
init_pwm();
PIT_init();
PAC_init();
EnableInterrupts;
Speed();
for(;;)
{
_FEED_COP();
}
}
#pragma CODE_SEG NON_BANKED
void interrupt 66 pit(void)
{
pulsecnt=PACNT;
PACNT=0X0000;
PITTF_PTF0=1; //置1清除标志位
PITINTE_PINTE0=0;
PACTL=0X00;
}
为什么sudu这个变量的值一直都是0?
欢迎光临 智能车制作 (http://www.znczz.com/)
Powered by Discuz! X3.2