这个 需要利用串口中断
假设说 中断标志位 为 TI 接收缓存为sbuf
。。。。。。
void main()
{
。。。。。
while((TI!=1)||((data=sbuf)!=0x10) ; //直到等到 有串口中断 且接收位10h 才继续执行
。。。。。
while(1)
{
}
}
不清楚可追问
DWORD PID;
PID = GetProcessPID(L"testexe");
//获取进程pid函数
DWORD GetProcessPID(LPCTSTR pName)
{
HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (INVALID_HANDLE_VALUE == hSnapshot) {
return NULL;
}
PROCESSENTRY32 pe = { sizeof(pe) };
BOOL fOk;
for (fOk = Process32First(hSnapshot, &pe); fOk; fOk = Process32Next(hSnapshot, &pe)){
if (!_tcsicmp(peszExeFile, pName)) {
CloseHandle(hSnapshot);
return peth32ProcessID;
}
}
return NULL;
}
//由进程pid获取进程句柄,置顶
HWND hh = GetProcessTopWindows(PID);
HWND GetProcessTopWindows(DWORD dwPID){
count = 0;
EnumWindows((WNDENUMPROC)EnumWndProc, (LPARAM)dwPID);
if(count > 0) {
//cout << "窗口句柄是:" << nhWnd[count -1] << endl;//输出句柄,可用spy++工具核对
return (nhWnd[count -1]);
}
return NULL;
}
别忘了添加对应头文件。
就是说a如果成立那状态就可以由1直接到3了
int state = 0;
if(a)
{
state = 3;
if(b)
{
state = 2;
}
}
以上就是关于C语言如何设置让程序运行时处于等待状态,串口收到命令后作出反应全部的内容,包括:C语言如何设置让程序运行时处于等待状态,串口收到命令后作出反应、C语言中如何获得当前进程句柄,谢谢!、状态转换如何用C语言程序实现等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)