发新帖我要提问
12
返回列表

脉冲计数

[复制链接]
楼主: langgq
手机看帖
扫描二维码
随时随地手机跟帖
wyjie| | 2021-5-8 23:03 | 显示全部楼层
你把定时器设定为1MS或则5MS中断,并对电平信号进行多次采样,连续采集到3次(假定)确认即可

使用特权

评论回复
yszong| | 2021-5-8 23:05 | 显示全部楼层
真不太好弄,扫描慢了容易丢脉冲,快了容易重判。

使用特权

评论回复
zwll| | 2021-5-8 23:07 | 显示全部楼层
考虑一下加硬件吧,触发器什么的。

使用特权

评论回复
chuxh| | 2021-5-8 23:10 | 显示全部楼层
这么慢一个信号,甚至比普通按键输入还简单

使用特权

评论回复
llljh| | 2021-5-8 23:12 | 显示全部楼层
定时器扫描,或者主循环扫描,随便都能把它扫到

使用特权

评论回复
pengf| | 2021-5-8 23:14 | 显示全部楼层

IO持续轮询吧

使用特权

评论回复
wangpe| | 2021-5-8 23:20 | 显示全部楼层

根据你脉冲的最小高电平或低电平时间的一半来查询,绝不丢失。
假设你脉冲的最小高电平是1ms,最小低电平是200us,则使用100us查询,只要保证你的查询速度是均匀的100us,就不会丢失。

使用特权

评论回复
heweibig| | 2021-5-8 23:22 | 显示全部楼层
IO口查询+IO电平变化或边沿变化判断脉冲,.

使用特权

评论回复
pangb| | 2021-5-8 23:23 | 显示全部楼层
过采样就可以了

使用特权

评论回复
langgq|  楼主 | 2021-5-8 23:25 | 显示全部楼层
嗯,我再好好缕一缕吧,有了好消息及时通知大家

使用特权

评论回复
谭翬| | 2021-5-21 09:29 | 显示全部楼层
sbit p36=P3^6;
bit l_p36;
uint js=0;
//定时器初始化省略
void intt0() interrupt 1 using 1//100us
{
if(p36==1){l_p36=1;}
else{
     //下降沿检测
     if(l_p36==1){js++;}
     l_p36=0;
     }
}

使用特权

评论回复
单片小菜| | 2021-5-26 23:32 | 显示全部楼层
将代码贴出来,看看咋回事。

使用特权

评论回复
caigang13| | 2021-6-1 18:24 | 显示全部楼层
软件计数,频率低问题不大

使用特权

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

本版积分规则