当前位置:
工控论坛
> >
产品
>
嵌入式系统
>
单片机
我要发帖
求助。关于单片机
点击:
1135
| 回复:
15
swei
关注
私信
精华:0帖
求助:0帖
帖子:4帖 | 18回
年度积分:0
历史总积分:80
注册:2007年4月27日
发表于:2007-05-12 19:10:00
楼主
我想用AT89C52的定时/计数器1对外部脉冲电平计数。脉冲电平是由一个可移动的机械触点在一块印刷成像梳子一样的覆铜片上移动而产生的(有点类似单触点开关不断地进行 闭合——断开——闭合……)。本来是在单片机内设置了10个脉冲计数值的,但触点只移动了两三格,单片机的计数值就满了。请问如何保证单片机在触点移动过程中对脉冲电平计数的准确性?恳请各位高手指点下。
分享到:
收藏
邀请回答
回复楼主
举报
周公
关注
私信
精华:10帖
求助:0帖
帖子:119帖 | 5549回
年度积分:0
历史总积分:6446
注册:2002年11月26日
发表于:2007-05-13 21:43:00
1楼
1.核实定时器/计数器的工作方式;
2.在触点上并联电容,防抖动。如果有示波器可以检测输入波形。
回复
引用
举报
swei
关注
私信
精华:0帖
求助:0帖
帖子:4帖 | 18回
年度积分:0
历史总积分:80
注册:2007年4月27日
发表于:2007-05-14 01:44:00
2楼
并联的电容该选多大值?顺便问一下,就是一上电的时候,单片机的P1~P3口引脚应该都是输出高电平的,所以接到P2口的8个LED灯应该是不亮的(采用灌电流接法)。但我在试验时发现一上电,接到P2口的8个LED灯快速地闪了一下才灭。不知道是什么原因?是不是上电那一瞬间的电流冲击引起的?如果是,该如何避免这种情况?谢谢!(PS:单片机是由输出标值为DC 5V/3A的电源供电)
回复
引用
举报
FF帆
关注
私信
精华:17帖
求助:0帖
帖子:77帖 | 3116回
年度积分:0
历史总积分:7271
注册:2005年11月04日
发表于:2007-05-14 08:34:00
3楼
学习
回复
引用
举报
猎隼
关注
私信
精华:1帖
求助:1帖
帖子:151帖 | 1661回
年度积分:0
历史总积分:8983
注册:2005年9月28日
发表于:2007-05-14 10:04:00
4楼
先看看,是不是你的程序有遗漏.
回复
引用
举报
周公
关注
私信
精华:10帖
求助:0帖
帖子:119帖 | 5549回
年度积分:0
历史总积分:6446
注册:2002年11月26日
发表于:2007-05-14 10:44:00
5楼
输入并联电容10~47VF(上拉电阻10K)。
‘一上电,接到P2口的8个LED灯快速地闪’——查/EA,不可以悬空。
回复
引用
举报
亦云人云
关注
私信
精华:5帖
求助:0帖
帖子:102帖 | 2351回
年度积分:0
历史总积分:3114
注册:2004年11月10日
发表于:2007-05-14 11:41:00
6楼
请注清电容单位:法拉 F,毫法 mF,微法 uF,纳法 nF,皮法 pF.
回复
引用
举报
swei
关注
私信
精华:0帖
求助:0帖
帖子:4帖 | 18回
年度积分:0
历史总积分:80
注册:2007年4月27日
发表于:2007-05-14 12:50:00
7楼
好的。谢谢楼上各位的热心帮助!
回复
引用
举报
猎隼
关注
私信
精华:1帖
求助:1帖
帖子:151帖 | 1661回
年度积分:0
历史总积分:8983
注册:2005年9月28日
发表于:2007-05-14 14:58:00
8楼
我感觉这种信号过滤最好在程序里作,比如在信号输入的语句里加上一定的延时,这样就可以过滤掉不必要的杂波.
回复
引用
举报
swei
关注
私信
精华:0帖
求助:0帖
帖子:4帖 | 18回
年度积分:0
历史总积分:80
注册:2007年4月27日
发表于:2007-05-14 19:45:00
9楼
有没有可以去抖动的芯片啊?比如用在键盘去抖动的芯片?
回复
引用
举报
XLUYAO007
关注
私信
精华:0帖
求助:0帖
帖子:11帖 | 246回
年度积分:0
历史总积分:411
注册:2005年9月29日
发表于:2007-05-23 09:17:00
10楼
在程序中,你采用的检测是检测电平,还是上升沿,还是下降沿?,在写的时候有没有明确这个?如果是检测沿的话,就存在两次计数了。
回复
引用
举报
xiaojia_
关注
私信
精华:0帖
求助:0帖
帖子:14帖 | 104回
年度积分:0
历史总积分:145
注册:2004年10月17日
发表于:2007-07-28 13:54:00
11楼
程序的问题
回复
引用
举报
周公
关注
私信
精华:10帖
求助:0帖
帖子:119帖 | 5549回
年度积分:0
历史总积分:6446
注册:2002年11月26日
发表于:2007-07-28 22:33:00
12楼
xluyao007: 引用 加为好友 发送留言 2007-5-23 9:17:00
在程序中,你采用的检测是检测电平,还是上升沿,还是下降沿?,在写的时候有没有明确这个?如果是检测沿的话,就存在两次计数了。
--------------------------------
看书上上升沿对51系列的计数器是否起作用。
回复
引用
举报
猎隼
关注
私信
精华:1帖
求助:1帖
帖子:151帖 | 1661回
年度积分:0
历史总积分:8983
注册:2005年9月28日
发表于:2007-07-29 09:46:00
13楼
周公,是不是可以在程序里加一个延时来过滤触点的抖动,或用外接电容来过滤?
回复
引用
举报
周公
关注
私信
精华:10帖
求助:0帖
帖子:119帖 | 5549回
年度积分:0
历史总积分:6446
注册:2002年11月26日
发表于:2007-07-29 10:24:00
14楼
都可以,或者同时使用。注意延时时间和电阻电容的时间常数要小于脉冲最短周期。
回复
引用
举报
顾霸天
关注
私信
精华:0帖
求助:0帖
帖子:0帖 | 7回
年度积分:0
历史总积分:107
注册:2008年2月28日
发表于:2008-02-28 13:36:00
15楼
可以直接在输出信号上增加反向器就可以了。程序的防抖也很重要。
回复
引用
举报
热门招聘
相关主题
MCGS嵌入式组态软件及其应用...
[1404]
求助:DS18B20的64位ROM序列号...
[1050]
谈谈单片机C语言编程中不经意...
[2152]
求助-PC104(运行win98,2 USB...
[1058]
山东莒县自来水水厂及供水管...
[2289]
介绍国际PC/104协会与PC/104
[1183]
求教:接地问题
[1212]
艾讯嵌入式产品网络安全南京...
[1036]
微軟2004年Windows硬體工程會...
[1212]
学习嵌入式操作系统应如何开...
[1229]
官方公众号
智造工程师
客服
小程序
公众号