C#串口控制脚踏开关采集视频图像
为什么在serialPort1_PinChanged事件中设置timer2.Enable=true,timer2_Tick事件内容不执行呢?哪位老大能给解释解释呢?
在serialPort1_PinChanged事件中设置断点发现time2.Enable已经为true,就是timer_Tick事件内容不执行,因为在timer2_Tick事件设置messagebox对话框,就是不见弹出。
private void serialPort1_PinChanged(object sender, SerialPinChangedEventArgs e)
{
if (!bInitFinish)
{
return;
}
if (e.EventType == SerialPinChange.CtsChanged)
{
if (bCOMPress)
{
if (!timer2.Enabled)
{
timer2.Interval = 500;
timer2.Enabled = true;
bCOMPress = false;
}
//采集图像函数
//SnapPicture();
}
}
}
private void timer2_Tick(object sender, EventArgs e)
{
bCOMPress = true;
timer2.Enabled = false;
MessageBox.Show("11");
}
在串口serialPort_PinChanged事件中,按下一次脚踏开关,会多次触发serialPort_PinChanged事件,所以在serialPort_PinChanged事件中家了一个开关变量bComPress,而bCompress改变就在timer2_tick事件,timer2事件半秒执行一次。
第一次按下脚踏开关采集图片可以,再往后按下脚踏开关就不在采集图像,调试发现bCompress始终为false,所以猜测timer2_tick事件代码没执行。