主題:ESM6800在QT程序里使用串口接收數(shù)據(jù)時(shí)GUI線程會(huì)卡住 共有19595人關(guān)注過(guò)本帖 |
---|
![]() 宮梓萱 |
1樓 信息 | 搜索 | 郵箱 |
![]() ![]() ![]() ![]() |
ESM6800在QT程序里使用串口接收數(shù)據(jù)時(shí)GUI線程會(huì)卡住 ![]() 使用linux的方式單獨(dú)開(kāi)了一個(gè)串口發(fā)送接收線程。QT的動(dòng)畫來(lái)提示數(shù)據(jù)接收狀態(tài)。接收少量數(shù)據(jù)時(shí)還好。在115200bps下接收20多KB數(shù)據(jù)時(shí)發(fā)生QT動(dòng)畫卡住,接收完成才正常。我想我單獨(dú)開(kāi)了一個(gè)線程啊,串口線程和QT的GUI線程是互不干擾的。實(shí)際測(cè)試發(fā)現(xiàn),GUI線程下的定時(shí)器也不能用,只有等數(shù)據(jù)接收完成才可以。這是開(kāi)了一個(gè)假線程嗎。這個(gè)串口線程是參照例程的。 |
單帖管理 | 引用 | 回復(fù) ![]() |
![]() 宮梓萱 |
2樓 信息 | 搜索 | 郵箱 |
![]() ![]() ![]() ![]() |
![]() 你好,我貼下我測(cè)試的代碼。我使用了usleep后更卡了。我認(rèn)為運(yùn)行了usleep后串口接收線程就休眠了,此時(shí)QT的GUI線程能順利運(yùn)行啊。但的確是更卡了。如下是串口線程代碼。 |
單帖管理 | 引用 | 回復(fù) ![]() |