智能车制作

标题: 关于测速方面的问题 [打印本页]

作者: zippoobbiz    时间: 2010-3-23 16:07
标题: 关于测速方面的问题
这个最让我就结了 本来以为很简单 或许真的很简单只是我比较笨
我先大概说说我是怎么做的 大家帮忙看看错在哪里

  1. void TIM_Init(void) {

  2. TIOS_IOS7 = 0;
  3. OC7M_OC7M7 = 0;  
  4. TCTL1 = 0;  
  5. PACTL_PAEN = 1;
  6. PACTL_PAMOD = 0;
  7. PACTL_PEDGE = 0;
  8. PACTL_PAOVI = 0;
  9. PACTL_PAI = 0;
  10. TSCR1_TFFCA = 1;
  11. PACNT = 0;
  12. }
  13. void PIT_Init(void)

  14. {

  15. INT_CFADDR = 0x70;
  16. INT_CFDATA5 = 0x07;
  17. PITCFLMT_PITE = 0;
  18. PITCE_PCE0 = 1;
  19. PITMUX_PMUX0 = 0;  
  20. PITMTLD0 = 100;
  21. PITLD0 = 200;
  22. PITCFLMT_PFLMT = 1;
  23. PITFLT_PFLT0 = 1;  
  24. PITINTE_PINTE0 = 1;
  25. PITTF_PTF0 = 1;  
  26. PITCFLMT_PITE = 1;

  27. }
复制代码

经过这两段初始化 准备采集和定时

  1. #pragma CODE_SEG __NEAR_SEG NON_BANKED
  2. void interrupt 66 PIT_ISR0(void)            
  3. {  
  4.                         
  5. num = PACNT;      
  6. PACNT = 0;
  7. PITTF_PTF0 = 1;   
  8. }
  9. #pragma CODE_SEG DEFAULT
复制代码

然后在中断里把测到的脉冲存到num
可是在一段IF(num==0)的程序中 总是能正常运行 估计num就一直是0
我觉得是根本没测到码盘的脉冲
然后插/拔码盘的电路 发现反应完全不一样 说明码盘的电路应该是检测到了
然后我就开始费解.
有没有高手能解答一下




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2