串口顯示問題

各位好,我在做串口數據接收并進行顯示的時候,採用隊列結構,但是我發現把下位機的電源關掉以後,數據還要顯示一段時間才會停止,這個是不是下位機斷電以後,緩衝區仍存有數據,所以還會不斷顯示。還是其他的原因?謝謝!

請問一下,上位機是不是你的pc, 下位機是不是RS232儀器


<font =“apple-style-span” size=“4”><span =“apple-style-span” style=“font-size: 16px; line-height: 24px;”>rs232關掉之後,pc是立即讀不到RS232訊號的。
<font =“apple-style-span” size=“4”><span =“apple-style-span” style=“font-size: 16px; line-height: 24px;”>
<font =“apple-style-span” size=“4”><span =“apple-style-span” style=“font-size: 16px; line-height: 24px;”>之所以會在你的pc上面還會繼續顯示,表示LabVIEW顯示的是之前所讀到的資料。所以你的labview程式有可能讀的太快速了,而顯示的稍慢,造成資料在pc排隊等候顯示的現象。
<font =“apple-style-span” size=“4”><span =“apple-style-span” style=“font-size: 16px; line-height: 24px;”>
<font =“apple-style-span” size=“4”><span =“apple-style-span” style=“font-size: 16px; line-height: 24px;”>你可以上傳程式,讓以增加大家對這個問題的了解度。

上位机是PC,通过RS232连接到单片机上。可正常工作的串口通信 修改后.vi程序大概是这样子,另外有个问题是用事件结构的时候,事件在运行的时候,怎么设置一个停止键来退出正在执行的程序呢?

我發現時程序在進行數據處理的時候速度太慢了,我對每個數據包都進行幾次判斷,不知道有沒有辦法來改進,從而提高效率?