单片机板有若干个输入输出口,输入接24V高低信号。本来是想用光耦将24V高低信号转成单片机io口电压接到单片机上。
可客户提出需求,想要板子能够检测到是否接了开关设备。即,板子的IO口需要有三个状态:未外接开关、开关弹起、开关按下。
这如何实现好呢?我也不理解为何会有这个需求。
离线
1、开关换单刀双掷 NCNO分别接两个IO
2、开关换单刀双掷 NCNO接不同电阻 AD检测
3、开关用NC 上电状态未触发视为未外接开关
感谢,1和2能看懂,确实是个办法。
3没看懂,能否再细讲一下?
我发这个帖子,一方面是想求个解决方案。
另一方面,我认为这个需求不合理、不现实,想听听大家的看法。
最近编辑记录 Gentlepig (2024-04-27 09:32:19)
离线
单个开关要识别两类状态:连接器插拔状态和开关的电平状态。可以使用带插拔识别的连接器,如3脚的DC连接器,其插头插入时会将其内部的弹片顶开从而可以在电路上产生电平信号。
多了个插拔识别而已,正常需求。
那就和楼上的4016朋友的方法1差不多了,单片机需要用2个io口来检测一个开关。
目前用的方法2,接不同电阻来进行ad检测。但是,这样的话,外接的开关设备相当于一个定制件了。
离线
@Gentlepig
就是说用常闭按键 开机时做个自检 按键状态不对(已触发)就当没接
明白了,感谢。就是只在上电时进行一次设备在线判断。
离线