我需要监控门是否打开。我有一个传感器,只要门关闭就会继续产生+ 5V DC,但一旦门打开就会下降到0V。
我现在需要将传感器的输出线连接到PC的串行端口,并编写一个连续轮询端口的程序。
我的想法是各种串口io参数,如波特率等,在我的情况下并不重要。对于我读取的每个字节,我希望在门关闭时该值为255(逻辑1)。否则,我会假设门已经打开。这个逻辑有什么缺陷吗?
我经历了Sending a voltage to RS232。看来我只需要将线连接到引脚2(RX)。但是,对于串行端口接收逻辑1,似乎电压需要介于-3V和-12V之间。由于我的传感器产生的电压是正的,我想我会将传感器线连接到引脚5(GND),并将引脚2连接到地。实际上,我倒转了电压。这有用吗?
如果这个逻辑存在缺陷,我可能不得不购买电压逆变器。
最后,我被告知不应该将任何东西连接到主板串口上的引脚5。显然,它是硬接线到底盘的。这是真的?问候。
答案 0 :(得分:2)
如注释中所述,常量高不会产生255个字节。 我会通过将GND连接到GND并将+5 Vdc连接到CTS引脚来实现这一点,可以查询其高/低状态。 但这只是一个黑客,你真的应该使用一些微控制器。