智能车制作

 找回密码
 注册

扫一扫,访问微社区

楼主: linping9656
打印 上一主题 下一主题

CD4520测速

  [复制链接]

106

主题

968

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4494

在线王奖章论坛元老奖章活跃会员奖章优秀会员奖章

威望
2681
贡献
921
兑换币
241
注册时间
2012-2-4
在线时间
446 小时
31#
 楼主| 发表于 2012-4-23 18:50:06 | 只看该作者
啸风 发表于 2012-4-23 15:59
我采集回来的数据不稳定,怎么弄?

检查一下硬件,也有可能程序没写好啊
回复 支持 反对

使用道具 举报

4

主题

44

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1966
威望
737
贡献
625
兑换币
45
注册时间
2011-8-16
在线时间
302 小时
32#
发表于 2012-4-24 20:48:16 | 只看该作者
linping9656 发表于 2012-4-23 18:50
检查一下硬件,也有可能程序没写好啊

用cd4520读取的数和用pt7口读取的数据差很多,是怎么回事啊,还望你指教呢
回复 支持 反对

使用道具 举报

4

主题

132

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1591
QQ
威望
949
贡献
470
兑换币
98
注册时间
2010-6-14
在线时间
86 小时
33#
发表于 2012-4-25 18:44:03 | 只看该作者
linping9656 发表于 2012-4-23 18:50
检查一下硬件,也有可能程序没写好啊

我是这样写的:
void interrupt 66 PIT0(void)
{
  
  InPut1 = PORTA;
  PORTB_PB6=1;            //CD4520复位
  tx_sci_string("Reset:");
tx_sci_number(PORTA);                    //串口发回数据
tx_sci_string("A:");
tx_sci_number(InPut1);                    //串口发回数据
PITTF_PTF0=1;                        //清中断标志位
  PORTB_PB6=0;
  return;
}

我是用PORTA口采集数据,PORTB_PB6对CD4520进行写“1”复位.可是我用串口采集回来的数据不是理想的。Reset不等于“0”,在同一占空比下采集回来的数据也不相等。硬件电路我检查过了,用仿真也做过,实际电路也搭建出来,没有错误。
请你帮我看看,谢谢了。
回复 支持 反对

使用道具 举报

4

主题

132

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1591
QQ
威望
949
贡献
470
兑换币
98
注册时间
2010-6-14
在线时间
86 小时
34#
发表于 2012-4-25 18:50:02 | 只看该作者
ACOSSATD 发表于 2012-3-31 19:26
采样周期在10毫秒左右,给1清零
实验发现好像要保持一段时间才能确实清零,可以空跑几个指令周期

我是这样写的:
void interrupt 66 PIT0(void)
{
  
  InPut1 = PORTA;
  PORTB_PB6=1;            //CD4520复位
  tx_sci_string("Reset:");
tx_sci_number(PORTA);                    //串口发回数据
tx_sci_string("A:");
tx_sci_number(InPut1);                    //串口发回数据
PITTF_PTF0=1;                        //清中断标志位
  PORTB_PB6=0;
  return;
}

我是用PORTA口采集数据,PORTB_PB6对CD4520进行写“1”复位.可是我用串口采集回来的数据不是理想的。Reset不等于“0”,在同一占空比下采集回来的数据也不相等。硬件电路我检查过了,用仿真也做过,实际电路也搭建出来,没有错误。
请你帮我看看,谢谢了。


我的QQ是840622052,请多多指教。
回复 支持 反对

使用道具 举报

106

主题

968

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4494

在线王奖章论坛元老奖章活跃会员奖章优秀会员奖章

威望
2681
贡献
921
兑换币
241
注册时间
2012-2-4
在线时间
446 小时
35#
 楼主| 发表于 2012-4-25 20:25:50 | 只看该作者
啸风 发表于 2012-4-25 18:44
我是这样写的:
void interrupt 66 PIT0(void)
{

这个我就不知道了啊
回复 支持 反对

使用道具 举报

4

主题

132

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1591
QQ
威望
949
贡献
470
兑换币
98
注册时间
2010-6-14
在线时间
86 小时
36#
发表于 2012-4-25 20:28:58 | 只看该作者
linping9656 发表于 2012-4-25 20:25
这个我就不知道了啊

请问下,你的也大概是这样写的吗?
回复 支持 反对

使用道具 举报

2

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
851
威望
570
贡献
145
兑换币
4
注册时间
2011-6-24
在线时间
68 小时
37#
发表于 2012-4-25 23:34:29 | 只看该作者
linping9656 发表于 2012-4-18 13:04
车子速度终于在今天提上来了。加油

哇,多快啊!
回复 支持 反对

使用道具 举报

106

主题

968

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4494

在线王奖章论坛元老奖章活跃会员奖章优秀会员奖章

威望
2681
贡献
921
兑换币
241
注册时间
2012-2-4
在线时间
446 小时
38#
 楼主| 发表于 2012-4-26 18:08:54 | 只看该作者
啸风 发表于 2012-4-25 20:28
请问下,你的也大概是这样写的吗?

复位是这么复位的
回复 支持 反对

使用道具 举报

20

主题

115

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1091
威望
639
贡献
196
兑换币
10
注册时间
2011-12-27
在线时间
128 小时
39#
发表于 2012-5-2 16:14:43 | 只看该作者
ACOSSATD 发表于 2012-4-1 10:22
5个空指令左右吧

怎么给空指令啊
回复 支持 反对

使用道具 举报

20

主题

115

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1091
威望
639
贡献
196
兑换币
10
注册时间
2011-12-27
在线时间
128 小时
40#
发表于 2012-5-2 16:18:22 | 只看该作者
ACOSSATD 发表于 2012-3-31 19:26
采样周期在10毫秒左右,给1清零
实验发现好像要保持一段时间才能确实清零,可以空跑几个指令周期

能教教我怎么给空指令吗?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-5 19:45 , Processed in 0.071022 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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