请教个问题,vc高手进入 在线等
串口发送数据帧,每帧数据间隔以
do
{
MSG msg;
GetMessage(&msg,NULL,0,0);
TranslateMessage(&msg);
DispatchMessage(&msg);
dwEnd = GetTickCount()-dwStart;
}while(dwEnd <50);
进行延时
每次发送数据量不等,但每帧数据长度一样,6个字节,发送也时间不等,比如连续发送不到1秒-4天,现在有问题是:
1.在串口发送中不断要有消息才能发送数据,比如不断摇摆鼠标等,猜测可能是在GetMessage(&msg,NULL,0,0);这儿等待,于是改为:
do
{
MSG msg;
if( GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
dwEnd = GetTickCount()-dwStart;
}while(dwEnd <50);但跟上述情况一样。试问此种情况如何解决。别告诉我去掉msg处理部分,那样程序跟死机了一样。
2.如果在串口发送没有结束时关闭此程序后,任务管理器中还有程序进程在运行,试问如何彻底关闭发送进程。如何在OnDestroy中添加代码还是在其他部分添加代码
或许对于以上两个问题,各位有更好的思路,可以重新换种方法,请给点建设性的意见?
do
{
MSG msg;
GetMessage(&msg,NULL,0,0);
TranslateMessage(&msg);
DispatchMessage(&msg);
dwEnd = GetTickCount()-dwStart;
}while(dwEnd <50);
进行延时
每次发送数据量不等,但每帧数据长度一样,6个字节,发送也时间不等,比如连续发送不到1秒-4天,现在有问题是:
1.在串口发送中不断要有消息才能发送数据,比如不断摇摆鼠标等,猜测可能是在GetMessage(&msg,NULL,0,0);这儿等待,于是改为:
do
{
MSG msg;
if( GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
dwEnd = GetTickCount()-dwStart;
}while(dwEnd <50);但跟上述情况一样。试问此种情况如何解决。别告诉我去掉msg处理部分,那样程序跟死机了一样。
2.如果在串口发送没有结束时关闭此程序后,任务管理器中还有程序进程在运行,试问如何彻底关闭发送进程。如何在OnDestroy中添加代码还是在其他部分添加代码
或许对于以上两个问题,各位有更好的思路,可以重新换种方法,请给点建设性的意见?
...全文
相关推荐
TMS320VC5509在线烧写Flash并自举启动方法研究
为了解决TMS320VC55X 系列DSP 系统程序代码的保存问题,设计了一种利用JTAG 接口,在线烧写Flash 并实现自举启动的方法。这种在线编程的方法利用并行外部存储器加载(EMIF)接口将TMS320VC5509 和Flash 芯片相连接, 通过搬移程序将应用程序的已初始化段按照C55X 系列DSP 引导表格式烧写进外部扩展的Flash 存储器中,从而实现自举启动。
double-click-vc:需要您双击语音通道才能加入它们
双击语音通道 一个powercord插件,需要您双击语音通道才能加入。 要求 电源线 安装 git clone https://github.com/slow/double-click-vc
VC.rar_VC入门
VC入门学习指导,看了一下觉得有必要推荐一下,需要的话可以下来看看!
在VC下配置openGL
在VC下配置openGL,一、下载并安装glut库 opengl的glut库 GLUT不是OpenGL所必须的,但它会给学习带来一定的方便,推荐安装。 二、VC工程配置.
EasyConfig_VC6.rar
EasyConfig_VC6.rar


界面
