智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 8581|回复: 35
打印 上一主题 下一主题

脉冲累加器测速问题

  [复制链接]

32

主题

782

帖子

1

精华

常驻嘉宾

帮主

Rank: 8Rank: 8

积分
3869
威望
2079
贡献
698
兑换币
86
注册时间
2010-10-22
在线时间
547 小时
跳转到指定楼层
1#
发表于 2012-2-14 16:04:59 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
  各位大神好,我在调试测速的时候遇到这样一个问题,pt7口的输入频率只有在20hz一下才能被捕捉到,稍微高一点就捕捉不到了,具体的程序如下:


//PT7口用来接收编码器脉冲
void PA_Init() {
PACTL=0X50;//PT7 PIN,PACN32 16BIT,FALLing edge,NOT INTERRUPT
PACNT = 0x00;    //累加器置初值
}


void PIT0_Init(void){
   PITCFLMT_PITE=0; //禁止PIT
   PITCE_PCE0=1;    //允许时钟通道0
   PITMUX_PMUX0=0;  //通道0
   PITMTLD0=0XFF;   //通道0预设计数值为255
   PITLD0=0X0752;   //time-out period=(PITMTLD+1)*(PITLD+1)/fBUS=256X1875/48000000=10ms
   PITINTE_PINTE0=1;//通道0中断允许
   PITCFLMT_PITE=1; //开PIT中断
}


//-------------------------PIT0 中断函数-----------------------//
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 66 PIT0_ISR(void){       //0.01秒中断1次\
  PACTL_PAEN=0;//16b计数禁止
  
  speed_value=PACNT;
  PACNT=0x0;  
  
  PACTL_PAEN=1;//16b计数允许
  //PITTF_PTF0=1;//清除PIT0的标记
  PITTF=0X01;
  
  //时间参量
  time_value++;
  if(time_value==10000) time_value=0;
}
#pragma CODE_SEG DEFUALT   


我在pit中断里将PACNT读出来显示,发现只有输入频率比较低时speed_value才有值,稍微高一点就是0了,困扰了好长时间了,求坛里的大神帮忙看下啊。。。感激不尽啊

0

主题

7

帖子

0

精华

注册会员

Rank: 2

积分
182
威望
134
贡献
34
兑换币
0
注册时间
2012-7-3
在线时间
7 小时
毕业学校
内大
36#
发表于 2012-7-19 21:50:07 | 只看该作者
测速的接到PT0口,能解决测速问题?
回复 支持 反对

使用道具 举报

3

主题

272

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2670
QQ
威望
1442
贡献
762
兑换币
316
注册时间
2011-9-20
在线时间
233 小时
35#
发表于 2012-6-14 21:01:27 | 只看该作者
外部计数好坑爹,有车友解决这问题,请赐教……………………
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

高级会员

Rank: 4

积分
641
威望
392
贡献
93
兑换币
2
注册时间
2012-2-9
在线时间
78 小时
毕业学校
豆腐干是
34#
发表于 2012-6-14 20:20:48 | 只看该作者
是 啊   为什么????????????
回复 支持 反对

使用道具 举报

38

主题

1651

帖子

0

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
8770
威望
4444
贡献
2638
兑换币
1818
注册时间
2010-12-29
在线时间
844 小时
33#
发表于 2012-6-3 09:52:06 | 只看该作者
你反复读PACNT,不要清零,用BDM显示在调试界面上。用一个按钮给T7口信号,不断按按钮,看看PACNT是不是紧随按钮增长,看看是不是涨到20就变成0了。
回复 支持 反对

使用道具 举报

2

主题

13

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
308
威望
190
贡献
80
兑换币
0
注册时间
2011-11-18
在线时间
19 小时
32#
发表于 2012-6-3 08:34:53 | 只看该作者
你用的是 捕捉?
回复 支持 反对

使用道具 举报

2

主题

85

帖子

0

精华

高级会员

Rank: 4

积分
710
威望
365
贡献
259
兑换币
57
注册时间
2012-2-21
在线时间
43 小时
毕业学校
襄樊学院
31#
发表于 2012-5-30 15:27:24 | 只看该作者
我也想知道呀
回复 支持 反对

使用道具 举报

8

主题

158

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3204
威望
679
贡献
2385
兑换币
0
注册时间
2011-9-21
在线时间
70 小时
30#
发表于 2012-4-25 10:26:39 | 只看该作者
我是北丐 发表于 2012-4-25 01:02
你用pwm给pt7,看程序计不计数

解决了,原来是pit有问题,原来设置错了,现在一切正常。谢谢
回复 支持 反对

使用道具 举报

32

主题

782

帖子

1

精华

常驻嘉宾

帮主

Rank: 8Rank: 8

积分
3869
威望
2079
贡献
698
兑换币
86
注册时间
2010-10-22
在线时间
547 小时
29#
 楼主| 发表于 2012-4-25 01:02:31 | 只看该作者
海彬 发表于 2012-4-24 21:13
我的比你还惨,程序都一样,读出来全是0,不解?????

你用pwm给pt7,看程序计不计数
回复 支持 反对

使用道具 举报

8

主题

158

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3204
威望
679
贡献
2385
兑换币
0
注册时间
2011-9-21
在线时间
70 小时
28#
发表于 2012-4-24 21:13:15 | 只看该作者
我的比你还惨,程序都一样,读出来全是0,不解?????
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-22 21:29 , Processed in 0.050726 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表