我正在使用ParallelPort
与一个电子设备进行通信。
ParallelPort
上的我的任务就是启动和停止设备。
为此我写了下面的代码:
一个static
类ParellelPort
,其中包含方法static extern void Output(int address, int value)
。
public static class ParellelPort
{
[DllImport("inpout32.dll",EntryPoint = "Out32")]
public static extern void Output(int address, int value);
}
使用该方法
我在ParallelPort
写了一些内容只写了1和0。
用于启动和停止设备。 我使用以下代码。
private const int PORT_ADDRESS = 0x0378;
int startMachine = 1;
int stopMachine = 0;
ParellelPort.Output(PORT_ADDRESS, startMachine); //For starting Device.
ParellelPort.Output(PORT_ADDRESS, stopMachine);//For Stoping Device.
现在我的问题是,
每当我启动CPU时,它会导致在并行上写入CPU时自动启动设备
每次启动时端口。
所以启动CPU启动我的设备我需要摆脱它。
有没有办法禁用ParallelPort或类似这样的东西来摆脱它。
注意:
我正在使用 PIN-2 与我的设备通信。
每次我在ParallelPort
5伏上写值= 1 时, PIN-2 和**(这个因为启动我的设备)**
在ParallelPort
上写值= 0 时 0伏在 PIN-2处可用(此原因会停止我的设备)
每当 DataPort Pin 上的CPU启动 5伏时,从 PIN-2到PIN-9(此原因在CPU启动时启动我的设备 - 向上)。
感谢.....
答案 0 :(得分:2)
计算机硬件的设计导致复位信号在POST时发送到大多数外围设备,在软件中无法做任何事情来防止这种情况发生。您所能做的就是设计设备以避免它。