labview串口錯(cuò)誤:-1073807253,-1073807252,1073676294
最近的項(xiàng)目中使用串口通信,F(xiàn)PGA和上位機(jī)實(shí)現(xiàn)上傳和下傳通信,下傳數(shù)據(jù)到FPGA沒(méi)有問(wèn)題,但是FPGA上傳數(shù)據(jù)到labview總是出錯(cuò)。問(wèn)題:FPGA上傳數(shù)據(jù)到FPGA有時(shí)可以,有時(shí)發(fā)生錯(cuò)誤,labview錯(cuò)誤代碼-1073807253,-1073807252,1073676294錯(cuò)誤原因:代碼前面有負(fù)號(hào)的表示錯(cuò)誤,沒(méi)有負(fù)號(hào)的代碼表示警告,和其他編程語(yǔ)言一樣,錯(cuò)誤必須處理,警告可能有潛在的危險(xiǎn),一般不處理也沒(méi)有關(guān)系。labview錯(cuò)誤代碼解釋鏈接,−1073807253傳輸時(shí)發(fā)生成幀錯(cuò)誤。−1073807252傳輸時(shí)發(fā)生超出限度錯(cuò)誤。 在下一個(gè)字符到達(dá)之前,未從硬件讀取該字符。1073676294傳輸?shù)淖址麛?shù)量與所要求的輸入計(jì)數(shù)相同。 可能可使用更多數(shù)據(jù)。
造成這些錯(cuò)誤或者警告的原因都是因?yàn)镕PGA不管在labview執(zhí)行或著關(guān)閉的狀態(tài)都一直在上傳數(shù)據(jù), 另外Serial
解決辦法:在串口配置后放一個(gè)延時(shí) (大約 10-100ms), 就可以讓 Serial port 有足夠的時(shí)間完成設(shè)定。再來(lái)使用 VISA Flush I/O Buffer VI, 就可以將 buffer 中不正確的資料清除。修改后的程序框圖如下圖所示,問(wèn)題解決!