你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32引脚捕获高/低电平时间,什么范围算高电平和低电平?

[复制链接]
bobo4869 提问时间:2018-8-1 14:17 /
用的是STM32F103ZE芯片,最近有一个项目需要捕获到每100ms的高电平时间或者低电平时间,理应上检测上升到0.7Vdd=2.31V时, 才认为是高电平的的信号来了,开始计时。  再者,理应上检测下降到0.3Vdd=0.99V时,才认为是低电平的信号来了,才开始计时。 是这样吗?

但是我用信号发生器,输出0~1.5V的脉冲波,检测的高电平时间是跟0~2.31V的脉冲波一样的,低电平检测亦然。是否芯片认为的高电平和低电平的范围都在1.5V左右,而不是0.7Vdd和0.3Vdd?

评分

参与人数 1 ST金币 -1 收起 理由
royzhao -1 很给力!

查看全部评分

收藏 评论5 发布时间:2018-8-1 14:17

举报

5个回答
feixiang20 回答时间:2018-8-2 01:56:47
STM32的I/O管脚有两种:TTL和CMOS,所有管脚都兼容TTL和CMOS电平。也就是说,从输入识别电压上看,所有管脚(不管是TTL管脚还是CMOS管脚)都可以识别TTL或CMOS电平。下面是摘自STM32数据手册的有关数据 2.png
给你参考下

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

MrJiu 回答时间:2018-8-1 14:24:13
首先0.7Vdd和0.3Vdd是官方给的电器特性,换句话说就是,0.7Vdd和0.3Vdd绝对OK,有保证,那么第一点首先肯定是有保留,有可能是0。5Vd各一半,高于就识别为高,低于就识别为低。。。。当然,也可能存在未知识别,就是有时候识别为高,有时候为低,但是0.7Vdd和0.3Vdd是绝对正确。。。。不知道你懂否。。。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

butterflyspring 回答时间:2018-8-1 14:31:53
103并不是完全37分..对照这个图吧
dd.JPG

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

七哥 回答时间:2018-8-1 15:21:23
本帖最后由 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的输入是已经加了施密特触发器的。
傲游截图20180801152416.png

建议用示波器观察一下你的信号发生器的输出是什么,多大的幅值。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

bobo4869 回答时间:2018-8-2 11:22:04
MrJiu 发表于 2018-8-1 14:24
首先0.7Vdd和0.3Vdd是官方给的电器特性,换句话说就是,0.7Vdd和0.3Vdd绝对OK,有保证,那么第一点首先肯定 ...

理解你的说法,谢谢

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版