打印
[STM32F4]

求指教,软件怎么实现这个功能

[复制链接]
706|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
LSLDAY|  楼主 | 2019-2-20 19:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
当输入220V交流信号时,光耦输出波形如图,此时认为一直有信号。在软件逻辑上怎么实现此功能,不要有误判现象。
我的想法:(每5ms作为一个节点检测一次管脚,如果检测到低电平就认为是有220V信号,如果连续两个5ms节点都检测到高电平,则认为没有了220V信号。)不知此方法严谨吗?

电路.png (171.57 KB )

220V检测电路

220V检测电路

光耦输出波形图.jpg (490.87 KB )

光耦输出波形图

光耦输出波形图
来自 2楼
LSLDAY|  楼主 | 2019-3-13 14:47 | 只看该作者
哇,一段时间没上来,居然这么多热心朋友回复,我现在就是按照我的贴子主题上那样做的“每5ms作为一个节点检测一次管脚,如果检测到低电平就认为是有220V信号,如果连续两个5ms节点都检测到高电平,则认为没有了220V信号”  
我的理解是这样的;这个波形周期是10ms,单低电平的时间要占到6ms以上,所以无论何时检测,只要保证5ms检测一次,永远不会出现连续两次检测到高电平。

使用特权

评论回复
板凳
你瞅啥| | 2019-2-20 19:42 | 只看该作者
你这电路太费电了,给你个省电的:
https://bbs.21ic.com/icview-2618640-1-1.html

使用特权

评论回复
评论
LSLDAY 2019-2-21 10:16 回复TA
谢谢,我好好理解下这个电路 
地板
晓伍| | 2019-3-7 09:15 | 只看该作者
进行边沿判断?

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:58 回复TA
我是用固定时间去检测的 
5
八层楼| | 2019-3-7 09:52 | 只看该作者
io口触发  定时器计时

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:59 回复TA
这个方法也可以,我说的那个应该也可以吧 
6
观海| | 2019-3-7 09:57 | 只看该作者
定时器可以同时上下边沿都触发吗

使用特权

评论回复
7
guanjiaer| | 2019-3-7 10:03 | 只看该作者
是不是可以用while循环进行不间断检测呢

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:50 回复TA
用的定时器 
8
kingkits| | 2019-3-7 10:13 | 只看该作者
本帖最后由 kingkits 于 2019-3-7 10:16 编辑

50HZ信号全桥 大概是100Hz可以推断那个波形的周期为1000ms/100 = 10ms,看示波器的波形,脉宽应该达不到5ms,所以5ms采样很可能都落在波形的外面,即:你很有可能采不到波形数据
另: 如果仅仅需要检测网电源状态,应该有更好的办法,你这个办法有些笨了

如果必须采样每个周期,建议用GPIO边缘触发+ timer的方法,用TIMER计时来判断两个波形的间隔也许可行

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:53 回复TA
GPIO边缘触发+ timer的方法。这个方法是不是只要计算的两个波形时间间隔为10ms,即认为有信号输入,对吗? 另外,你说的更好的办法,能给个大概思路吗?真心求教,谢谢 
9
blust5| | 2019-3-7 11:19 | 只看该作者
kingkits 发表于 2019-3-7 10:13
50HZ信号全桥 大概是100Hz可以推断那个波形的周期为1000ms/100 = 10ms,看示波器的波形,脉宽应该达不到5ms ...

看清楚楼主的需求,低电平才是有效信号,如果外部没有220V交流信号,这个信号是一直高电平的,所以楼主想连续两次都是高电平的话就判断为没有接入

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:54 回复TA
我这个思路应该是对的,只是有可能是有点笨方法 
10
态度| | 2019-3-7 14:08 | 只看该作者
占个楼

使用特权

评论回复
11
kingkits| | 2019-3-8 11:18 | 只看该作者
blust5 发表于 2019-3-7 11:19
看清楚楼主的需求,低电平才是有效信号,如果外部没有220V交流信号,这个信号是一直高电平的,所以楼主想 ...

不懂就不要乱说

使用特权

评论回复
12
blust5| | 2019-3-8 13:39 | 只看该作者
kingkits 发表于 2019-3-8 11:18
不懂就不要乱说

是的,我不懂

使用特权

评论回复
13
ZHMSGE| | 2019-3-8 13:46 | 只看该作者
把R9改小,实现输出方波,用外部中断和定时器检测方波。

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:48 回复TA
这个思路,和我帖子主题上,应该是大同小异吧 
14
ayb_ice| | 2019-3-8 14:08 | 只看该作者
一段时间内电平没有变化就是没有信号

使用特权

评论回复
评论
LSLDAY 2019-3-13 14:39 回复TA
谢谢 我现在做的就是类似这个 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

288

帖子

5

粉丝