强大的VC6实现串口数据发送过程延时为什么就那么困难
新手接触VC 初步会实现了对话框功能的实现,MFC 串口控件通讯的实现。现在想利用VC MFC串口控件在循环发送模式下能发送一个数据然后
再延时一段时间发送第二个数据,直到数据发送结束。
在C语言或汇编语言中是一件十分简单的事,加入延时函数就可以了。
在MFC 对话框中加入延时函数就不可以呢?
{:shy:}{:shy:}{:shy:} 本帖最后由 welcome_cool 于 2014-5-10 09:21 编辑
另外开一个线程,相当定时中断,在延时期间要人为调用串口接收函数。 放定时器事件里面 welcome_cool 发表于 2014-5-10 09:18
另外开一个线程,相当定时中断,在延时期间要人为调用串口接收函数。
有没有实例?
你能做出来吗?
线程还不懂。
68336016 发表于 2014-5-10 09:29
放定时器事件里面
做了一个简单的定时器控制测试的,
只有第二个定时器起作用。
按下Start显示定时器1
按下Stop显示定时器2
实际只显示 定时器2
void CTimetestDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
switch (nIDEvent)
{
case 1:
{
//m_display.SetSel(0,-1); //选上所有内容
m_display.ReplaceSel(" 定时器1"); //显示编辑框2内容
KillTimer(1);
}
case 2:
{
m_display.SetSel(0,-1); //选上所有内容
m_display.ReplaceSel("定时器2"); //显示编辑框2内容
KillTimer(2);
}
break;
}
CDialog::OnTimer(nIDEvent);
}
void CTimetestDlg::OnClear()
{
// TODO: Add your control notification handler code here
m_display.SetSel(0,-1); //选上所有内容
m_display.ReplaceSel(""); //显示编辑框2内容
}
void CTimetestDlg::OnStart()
{
// TODO: Add your control notification handler code here
SetTimer(1,3000,NULL); //等待3秒
}
void CTimetestDlg::OnStop()
{
// TODO: Add your control notification handler code here
SetTimer(2,5000,NULL); //等待5秒
}
void CTimetestDlg::OnOK()
{
// TODO: Add extra validation here
CDialog::OnOK();
}
感谢 两位。
页:
[1]