123|16

53

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

大佬们上午好:请问有什么好的方法检测IO口是否一直处于高电平? [复制链接]

 

是这样的:外部电路有四路1KHz的方波输入到stm32的IO口,但是需要监测这些方波什么时候会没有?没有的时候就一直处于高电平状态,有没什么好的方法来进行监测?

此帖出自单片机论坛

最新回复

对,就是这个意思。而且反相器的驱动能力大一点,可以直接驱动LED显示状态。   详情 回复 发表于 18 分钟前
点赞 关注
 

回复
举报

1268

帖子

4

TA的资源

版主

沙发
 
已经采用单片机检测了,是需要再额外监测显示?那就在端口并联上拉电阻和LED
此帖出自单片机论坛
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
beyond_笑谈 发表于 2024-12-23 11:30 已经采用单片机检测了,是需要再额外监测显示?那就在端口并联上拉电阻和LED

是这样的:我现在用一个输入捕获通道通过多路复用器分别获取四个直流风扇的FG信号的方波,读取出风扇的转速,但是我发现在风扇不转时,转速值还是有的不是0。

但是实际风扇不转时,FG信号一直处于低电平,我就想通过监测不转时的低电平信号,来修改显示的转速值为0。

这样还可以监测风扇的好坏,风扇坏了不转时可以实时发现。

感谢您的回复!

此帖出自单片机论坛
 
 
 

回复

93

帖子

0

TA的资源

一粒金砂(高级)

4
 
Tacking 发表于 2024-12-23 11:36 是这样的:我现在用一个输入捕获通道通过多路复用器分别获取四个直流风扇的FG信号的方波,读取出风扇的转 ...

那就增加一个RC,将PWM滤波成直流量,用ADC进行采集,通过ADC的值来判断

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

5
 
dige 发表于 2024-12-23 13:15 那就增加一个RC,将PWM滤波成直流量,用ADC进行采集,通过ADC的值来判断

感谢指导,我用这种方式来试试!

此帖出自单片机论坛
 
 
 

回复

1268

帖子

4

TA的资源

版主

6
 
Tacking 发表于 2024-12-23 11:36 是这样的:我现在用一个输入捕获通道通过多路复用器分别获取四个直流风扇的FG信号的方波,读取出风扇的转 ...

在MCU的信号输入捕捉通道接反相器,采用MCU另一个引脚读取这个信号状态,同时反相器也能驱动LED

 

 

此帖出自单片机论坛
 
 
 

回复

93

帖子

0

TA的资源

一粒金砂(高级)

7
 
Tacking 发表于 2024-12-23 13:23 感谢指导,我用这种方式来试试!

如果不够精确,加一个频率电压转换电路,比如用LM331等器件制作。如果价格因素,可以采用你之前的捕获比较+ADC检测等结合。

此帖出自单片机论坛
 
 
 

回复

7

帖子

9

TA的资源

一粒金砂(初级)

8
 
中断?
此帖出自单片机论坛
 
 
 

回复

7191

帖子

195

TA的资源

五彩晶圆(高级)

9
 

低电平捕获 获取这个脚不是低电平的状态吧 应该可以吧

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

10
 
beyond_笑谈 发表于 2024-12-23 13:24 在MCU的信号输入捕捉通道接反相器,采用MCU另一个引脚读取这个信号状态,同时反相器也能驱动LED   ...

您的意思是不是用另一个引脚去轮询这个输入捕获引脚的状态?如果轮循到状态长时间不变,就是风扇不转了。

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

11
 
dige 发表于 2024-12-23 13:34 如果不够精确,加一个频率电压转换电路,比如用LM331等器件制作。如果价格因素,可以采用你之前的捕获比 ...

好的,非常感谢

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

12
 

我尝试了下中断,没搞定!设定了有中断标志位置1,没有置0,然后测试发现这个标志位一直为1。刚接触编程,还很多不懂

void EXTI9_5_IRQHandler(void)
{
    if (EXTI_GetITStatus(EXTI_Line7) == SET)        //判断是否是外部中断7号线触发的中断
    {
        TIM3CH_CAPTURE_Flag = 1;                //置接收标志位变量为1
        EXTI_ClearITPendingBit(EXTI_Line7);            //清除外部中断7号线的中断标志位
    }
    else if (EXTI_GetITStatus(EXTI_Line7) != SET)    //判断是否是外部中断7号线触发的中断
    {
        TIM3CH_CAPTURE_Flag = 0;                //置接收标志位变量为1
    }
}

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

13
 
常见泽1 发表于 2024-12-23 13:59 低电平捕获 获取这个脚不是低电平的状态吧 应该可以吧

我也想着实在不行就采用轮询的方式来读取引脚电平是不是一直低电平状态。谢谢

此帖出自单片机论坛
 
 
 

回复

6962

帖子

2

TA的资源

版主

14
 
Tacking 发表于 2024-12-23 11:36 是这样的:我现在用一个输入捕获通道通过多路复用器分别获取四个直流风扇的FG信号的方波,读取出风扇的转 ...

引脚设置成输入捕获,可能还是可以直接读引脚的状态,因为直接读的是寄存器,对捕获模式没有什么影响。

此帖出自单片机论坛

点评

感谢指导!  详情 回复 发表于 9 分钟前
 
 
 

回复

1268

帖子

4

TA的资源

版主

15
 
Tacking 发表于 2024-12-23 14:24 您的意思是不是用另一个引脚去轮询这个输入捕获引脚的状态?如果轮循到状态长时间不变,就是风扇不转了。 ...

对,就是这个意思。而且反相器的驱动能力大一点,可以直接驱动LED显示状态。

此帖出自单片机论坛

点评

谢谢!  详情 回复 发表于 8 分钟前
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

16
 
wangerxian 发表于 2024-12-23 15:13 引脚设置成输入捕获,可能还是可以直接读引脚的状态,因为直接读的是寄存器,对捕获模式没有什么影响。

感谢指导!

此帖出自单片机论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(中级)

17
 
beyond_笑谈 发表于 2024-12-23 15:25 对,就是这个意思。而且反相器的驱动能力大一点,可以直接驱动LED显示状态。

谢谢!

此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表