打印

求助,不使用外部中断,监测P3.7上升沿,AT89C2051

[复制链接]
2590|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tao60|  楼主 | 2010-3-9 08:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 tao60 于 2010-3-9 08:41 编辑

求助,不使用外部中断,监测P3.7上升沿
有什么好办法,
我用判断是否低电平然后马上判断是否高电平的方法,不行,它会漏掉很多个上升沿。
获取到P3.7上升沿时还需要执行其它的一系列程序,在执行这一系列程序时,P3.7也有可能有一个小升沿过来,P3.7是一个高低电平交替的矩形波,频率不是不定的,时大时小。
AT89C2051单片机,
P1口都用作输出了,
P3.0~3.5用来输入了,

相关帖子

沙发
原野之狼| | 2010-3-9 08:44 | 只看该作者
时大时小 总有个范围吧
设定时器去扫描IO口 几百或几十US级的扫描速度可以达到呀

使用特权

评论回复
板凳
tao60|  楼主 | 2010-3-9 09:03 | 只看该作者
本帖最后由 tao60 于 2010-3-9 09:57 编辑
时大时小 总有个范围吧
设定时器去扫描IO口 几百或几十US级的扫描速度可以达到呀
原野之狼 发表于 2010-3-9 08:44

没有范围,是机器的电眼感应的信号脉冲,是根据机器运转速度而变化的,机器在寸动时频率小,甚至也有停止的情况。
定时器扫描这个我之前也想过,在实验中,不过总觉得会漏掉一些上升沿,上升沿只在瞬间。

请问你所说扫描也是用“先判断它是否低电平再判断是否高电平”的方法吗?

使用特权

评论回复
地板
原野之狼| | 2010-3-9 12:26 | 只看该作者
是这么回事
是不是频率太快了了呢

使用特权

评论回复
5
37150839| | 2010-3-9 15:50 | 只看该作者
可以试W79E2051,这个相当于AT89C2051的增强版
工业规格;无法解密;ICP在线编程;4T时钟周期,内置EPROM;1路10位PWM
参考价格2.50元

使用特权

评论回复
6
鬼舞十七| | 2010-3-9 23:36 | 只看该作者
怎么会没个范围呢?测量仪器也有测量精度啊,只要是时序逻辑就要用时钟打,除非是组合逻辑。所以用IO检测只能用两次检测不同电平的方法,最高采样频率就决定于指令周期的长度了。

使用特权

评论回复
7
tao60|  楼主 | 2010-4-9 12:05 | 只看该作者
其实它是一个机器运转过程中的感应信号,电机转动一个齿轮使电眼感应产生的一个脉冲。电机的速度可变,可停,可续。

使用特权

评论回复
8
hgjinwei| | 2010-4-9 12:40 | 只看该作者
如果不用中断,就得周期扫描,扫描频率不能小于电机运转过程中的感应信号变化的最高频率,否则就会有遗漏。如果你连最高频率都不知道,那就只能保守点,提高扫描频率。
换句话说,就算你用中断检测,也会有个最高极限的,难不成你还想检测从0到正无穷的范围?

使用特权

评论回复
9
hgjinwei| | 2010-4-9 12:45 | 只看该作者
扫描结果由最近两次扫描状态决定,当且仅当出现0到1的变化时,才视为出现一次上升沿,同理,当且仅当出现1到0的变化时,才视为一次下降沿。
如果扫描频率远远高于感应信号变化频率,则要考虑消抖,不然就有可能将干扰也带进来了。

使用特权

评论回复
10
ninibaba| | 2010-4-9 12:49 | 只看该作者
只有两种办法
中断和扫描
不用中断
就只能扫描

使用特权

评论回复
11
hyg1984| | 2010-4-9 14:01 | 只看该作者
如果不用中断,就得周期扫描,扫描频率不能小于电机运转过程中的感应信号变化的最高频率,否则就会有遗漏。如果你连最高频率都不知道,那就只能保守点,提高扫描频率。
换句话说,就算你用中断检测,也会有个最高极 ...
hgjinwei 发表于 2010-4-9 12:40



很有道理!

打个比方:你的机器周期是1us,如果你的输入频率时0.5us,那怎么能行?

使用特权

评论回复
12
szshawn2010| | 2010-4-9 14:33 | 只看该作者
本帖最后由 szshawn2010 于 2010-4-9 14:38 编辑

第三次才看明白。

该说的,大家都说了,我也没啥说的。建议使用中断。

中断就是用来解放CPU的

使用特权

评论回复
13
华邦掌门人| | 2010-4-9 15:20 | 只看该作者
可以试W79E2051,这个相当于AT89C2051的增强版
工业规格;无法解密;ICP在线编程;4T时钟周期,内置EPROM;1路10位PWM
参考价格2.50元
37150839 发表于 2010-3-9 15:50

完全兼容-----

使用特权

评论回复
14
救火车| | 2010-4-9 15:32 | 只看该作者
你为什么非要用P3.7呢?
改成P3.4或P3.5,然后使用计数器中断,计数器计脉冲个数是强项。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

12

帖子

1

粉丝