脉冲计数

[复制链接]
2170|32
手机看帖
扫描二维码
随时随地手机跟帖
langgq|  楼主 | 2021-5-8 22:08 | 显示全部楼层 |阅读模式
不用外中断口和T0/T1计数口,如何对来自P3.6的脉冲计数

使用特权

评论回复
langgq|  楼主 | 2021-5-8 22:11 | 显示全部楼层
频率为15HZ

使用特权

评论回复
zhuww| | 2021-5-8 22:13 | 显示全部楼层
用定时器定时50MS,在中断程序里累计计数

使用特权

评论回复
huangchui| | 2021-5-8 22:15 | 显示全部楼层
这样丢脉冲很严重

使用特权

评论回复
langgq|  楼主 | 2021-5-8 22:17 | 显示全部楼层
是啊,我试过了

使用特权

评论回复
guoyt| | 2021-5-8 22:21 | 显示全部楼层
脉冲宽度多窄呀?

使用特权

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

CPU很有空的话,一直判断IO口吧。

使用特权

评论回复
juventus9554| | 2021-5-8 22:29 | 显示全部楼层
如果你的外部波形占空比不是50%的话,那么还是提高你的采样率吧

使用特权

评论回复
dingy| | 2021-5-8 22:32 | 显示全部楼层
15HZ 按照50%的占空比计算,其高低电平只有33MS,有50MS的中断抽样查询,一定会有丢失

使用特权

评论回复
langgq|  楼主 | 2021-5-8 22:35 | 显示全部楼层
那怎么办?

使用特权

评论回复
xxrs| | 2021-5-8 22:38 | 显示全部楼层
改用10MS中断查询,应该会没有问题

使用特权

评论回复
zhanghqi| | 2021-5-8 22:41 | 显示全部楼层
就是定时器定时50MS得太长了,提高采样频率

使用特权

评论回复
guoyt| | 2021-5-8 22:43 | 显示全部楼层

设置定时器高优先级中断,其余低优先级中断;实测确定最小脉冲宽度,选择恰当的定时时间

使用特权

评论回复
juventus9554| | 2021-5-8 22:46 | 显示全部楼层
定时还可以设置的更低

使用特权

评论回复
renyaq| | 2021-5-8 22:48 | 显示全部楼层
捕捉判脉宽,符合则计数++;

使用特权

评论回复
xxrs| | 2021-5-8 22:51 | 显示全部楼层
没有捕捉就判断电平,然后定时器判脉宽;

使用特权

评论回复
lyjian| | 2021-5-8 22:54 | 显示全部楼层
本帖最后由 lyjian 于 2021-5-9 00:14 编辑

除了中断口和T0/T1计数口,单片机还有很多硬件功能可以识别高低电平变化,例如捕捉功能,IO电平匹配功能,比较器等等。
纯软件的话,设个定时中断,中断时间小于脉冲高\低电平最小宽度,每次中断读一下IO电平,相临两次电平不同就是边沿变化。

使用特权

评论回复
jiajs| | 2021-5-8 22:56 | 显示全部楼层
可以用查询方式

使用特权

评论回复
huanghuac| | 2021-5-8 22:58 | 显示全部楼层
加个计数器 芯片

使用特权

评论回复
happy_10| | 2021-5-8 23:00 | 显示全部楼层
15HZ的定时器采样怎么会丢失?

使用特权

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

本版积分规则

932

主题

8762

帖子

1

粉丝