单片机的普通端口如何检测上升沿?

[复制链接]
 楼主| mygaojian 发表于 2008-9-4 10:54 | 显示全部楼层 |阅读模式
不用单片机的中断端口,就用单片机普通IO口,如何检测一个信号的上升沿?
gavin_he 发表于 2008-9-4 10:59 | 显示全部楼层

这样行不?

端口 = 1;
delay();
while(端口 == 0);
dcp 发表于 2008-9-4 11:55 | 显示全部楼层

用定时中断检测

gengxuetao 发表于 2008-9-4 13:18 | 显示全部楼层

同意3楼的

3楼说的有道理
原野之狼 发表于 2008-9-4 14:26 | 显示全部楼层

定时去扫描。。

lyjian 发表于 2008-9-4 14:30 | 显示全部楼层

定时扫描只能检测慢速变化

延时非常大
zjf0000 发表于 2008-9-4 15:22 | 显示全部楼层
5880527 发表于 2008-9-4 17:56 | 显示全部楼层

扫,PLC的扫描输入信号的速度还毫秒级别呢

用定时中断单片机随便都比它扫得快
lyjian 发表于 2008-9-4 18:26 | 显示全部楼层

楼主要求上升沿后要多久之内检测到?

如果是上升沿后1个小时内检测到都没问题,那随便你用什么方法检测。
如果是上升沿后1us内要检测到,那就不是什么方法都可以了。
5880527 发表于 2008-9-4 18:47 | 显示全部楼层

呵呵,那是肯定没中断快的,但十K以下的还是可以考虑扫

好象这里讨论过几次可以用硬件实现沿变化就来一次中断,楼主可以去搜索一下,如果检测速度需要很快
 楼主| mygaojian 发表于 2008-9-23 22:53 | 显示全部楼层

回复

我用中断检测了,这多好啊。
machunshui 发表于 2008-9-23 23:01 | 显示全部楼层

为什么非得普通IO呢?

为什么非得普通IO呢?

现在带捕获功能

,外部中断引脚,

以及比较器

的单片机到处都是,

检测上升沿,不是太容易了吗?


为什么非得普通IO呢?

为什么非得在这些小地方大做**?
icmap 发表于 2008-9-24 00:16 | 显示全部楼层

方法有很多,根据具体目的选择适当的方法。

hotpower 发表于 2008-9-24 01:23 | 显示全部楼层

同意3楼的,一般用异或判断IO翻转

torch888 发表于 2008-9-24 08:35 | 显示全部楼层

定时扫描好像有点浪费时间吧

ayb_ice 发表于 2008-9-24 18:17 | 显示全部楼层

0-->1

teddeng 发表于 2008-9-25 13:40 | 显示全部楼层

一定要快,加个非门很困难么

lbq211 发表于 2008-9-25 14:36 | 显示全部楼层

搞个上升沿的触发器撒

搞个上升沿的触发器撒
您需要登录后才可以回帖 登录 | 注册

本版积分规则

191

主题

515

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部