完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
用的是STM32F103ZE芯片,最近有一个项目需要捕获到每100ms的高电平时间或者低电平时间,理应上检测上升到0.7Vdd=2.31V时, 才认为是高电平的的信号来了,开始计时。 再者,理应上检测下降到0.3Vdd=0.99V时,才认为是低电平的信号来了,才开始计时。 是这样吗?
但是我用信号发生器,输出0~1.5V的脉冲波,检测的高电平时间是跟0~2.31V的脉冲波一样的,低电平检测亦然。是否芯片认为的高电平和低电平的范围都在1.5V左右,而不是0.7Vdd和0.3Vdd? |
|
相关推荐
7个回答
|
|
|
|
|
|
|
|
|
首先0.7Vdd和0.3Vdd是官方给的电器特性,换句话说就是,0.7Vdd和0.3Vdd绝对OK,有保证,那么第一点首先肯定是有保留,有可能是0。5Vd各一半,高于就识别为高,低于就识别为低。。。。当然,也可能存在未知识别,就是有时候识别为高,有时候为低,但是0.7Vdd和0.3Vdd是绝对正确。。。。不知道你懂否。。。
|
|
|
|
|
|
|
|
|
|
|
|
本帖最后由 toofree 于 2018-8-1 15:30 编辑
高电平0.7Vdd和0.3Vdd自然是没有问题的。 但是间于0.7Vdd和0.3Vdd之间,肯定也是个状态吧,不是1就是0,单位的二进制不可能出现0.5吧。 间于0.7Vdd和0.3Vdd之间的,不保证是1还是0。但是小于0.3Vdd一定是0,高于0.3Vdd一定是1。 如果要把中间状态排除的话,那么加一级施密特触发器。也就是内部带滞回比较器。 STM32的输入是已经加了施密特触发器的。 建议用示波器观察一下你的信号发生器的输出是什么,多大的幅值。 |
|
|
|
|
jfuwre 发表于 2019-1-2 09:38 理解你的说法,谢谢 |
|
|
|
|
|
这个问题太low
|
|
|
|
|
|
没办法回答啊
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2776 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2379 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2255 浏览 0 评论
2367 浏览 1 评论
1625 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 15:51 , Processed in 1.099410 second(s), Total 56, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1189