labview array會(huì)溢出嗎?如何在Labview中放一個(gè)二維數(shù)組清空?波形控制的工作原理如下:每次從連接上輸入數(shù)據(jù)時(shí),LabVIEW會(huì)將連接上的數(shù)據(jù)發(fā)送到a 緩沖區(qū)并使用所有的緩沖區(qū)。第二次輸入數(shù)據(jù)時(shí),輸入數(shù)據(jù)會(huì)清除上次緩沖區(qū)中的數(shù)據(jù)左,這次再發(fā)送數(shù)。
這很可能是因?yàn)槟阕x取的字符串有終止符(比如有些通信協(xié)議用0x0D,回車,作為終止符)。假設(shè)有一個(gè)結(jié)束字符,那么在你讀取對(duì)應(yīng)長(zhǎng)度為緩沖區(qū)的字符串后,因?yàn)椴豢紤]結(jié)束字符,所以會(huì)保留在緩沖區(qū)中,你的下一組字符串的第一個(gè)字符會(huì)移到下一行(回車符可以同時(shí)換行),這樣每次讀取上次和這次的第一個(gè)字符除了第一個(gè)以外,就會(huì)產(chǎn)生你說(shuō)的現(xiàn)象。
LabVIEW的數(shù)組不會(huì)溢出。波形控制的工作原理如下:每次從連接上輸入數(shù)據(jù)時(shí),LabVIEW會(huì)將連接上的數(shù)據(jù)發(fā)送到a 緩沖區(qū)并使用所有的緩沖區(qū)。第二次輸入數(shù)據(jù)時(shí),輸入數(shù)據(jù)會(huì)清除上次緩沖區(qū)中的數(shù)據(jù)左,這次再發(fā)送數(shù)據(jù)每次輸入數(shù)據(jù)實(shí)際上是緩沖區(qū)用于繪圖。當(dāng)新元素加入數(shù)組時(shí),數(shù)組變大,只有緩沖區(qū)變大。理論上只要內(nèi)存足夠大,。
創(chuàng)建一個(gè)數(shù)組局部變量,并給它一個(gè)空常數(shù)。具體來(lái)說(shuō),在程序框圖中,右鍵單擊控件,選擇“創(chuàng)建”,然后選擇“局部變量”來(lái)創(chuàng)建一個(gè)好的局部變量。右鍵單擊局部變量的終端,選擇Create,然后選擇Constant,就這樣。只要把這個(gè)局部變量用一個(gè)好的值放在你需要的地方清空。只需創(chuàng)建一個(gè)空數(shù)組常量并連接它。笨辦法就是寫一個(gè)循環(huán),循環(huán)的個(gè)數(shù)是一維數(shù)組長(zhǎng)度的1/3。在每個(gè)周期中,使用截取子數(shù)組的函數(shù)取一組長(zhǎng)度為3的數(shù)組,位置取自i*3,然后用這些子數(shù)組構(gòu)造一個(gè)二維數(shù)組。
4、交替出現(xiàn)的 數(shù)據(jù),怎么用 labview分開(kāi)取決于你如何決定通信協(xié)議,你說(shuō)交替數(shù)據(jù)。對(duì)于上位機(jī)來(lái)說(shuō),串口控制的兩次接收是分開(kāi)的,可以獨(dú)立獲得。因?yàn)槊看问盏酱诳刂疲彌_區(qū)都會(huì)被清零。你的單片機(jī)應(yīng)該是被動(dòng)發(fā)的吧?上位機(jī)發(fā)出請(qǐng)求,然后單片機(jī)響應(yīng)?應(yīng)制定相應(yīng)的通信協(xié)議,以提高傳輸和接收的可靠性。
5、 labview串口學(xué)習(xí)一般在儀器I/O菜單下的串行菜單中使用,知道六個(gè)功能比較簡(jiǎn)單。一般流程圖是配置串口,中斷串口讀寫-2緩沖區(qū)關(guān)閉串口,具體可以查看labview配套實(shí)例。以硬件輸入和輸出目錄中的這些例子為例,這個(gè)網(wǎng)站是倪的LABVIEW論壇,里面有很多專家。該網(wǎng)站的許多活躍用戶將分享他們的經(jīng)驗(yàn)并提供解決方案。