LABVIEW與8051交握問題

各位前輩好

小弟目前要8051透過RS232傳輸溫度值到PC中,目前卡到8051與LABVIEW間的溝通不知如何下手,麻煩大大給小弟一點提示或範例!

小弟大致描述一下8051與LABVIEW間的溝通

首先LABVIEW啟動時希望能傳送一個數值給8051,跟他說可以傳送讀值了,

然後8051會回傳依數值給我,跟LABVIEW說他準備好了,

然後LABVIEW再傳送T1給8051...8051回傳T1溫度值給LABVIEW

依序傳T2.T3...,8051回傳T2.T3..的溫度值

小弟不知要從何下手,可以麻煩前輩給點意見嗎??

 

你需要使用VISA元件,在這之前你需要LABVIEW與8051使用RS232溝通的橋樑:MAX232。

請參考:http://www.alldatasheet.com/datasheet-pdf/pdf/27251/TI/MAX232.html
caeru40253.8158449074

PC-MAX232-8051

TI RI ES=0 OR ES=1 中斷測試

SCON 50

各位前輩好

8051透過RS232傳送及接收數值,這部分我沒問題,我目前主要是卡到LABVIEW如何去傳送指令給8051,讓8051傳送我所需的數值給我

[QUOTE=jaappee32]<p =“forummessagetext_large”>首先LABVIEW啟動時希望能傳送一個數值給8051,跟他說可以傳送讀值了,

然後8051會回傳依數值給我,跟LABVIEW說他準備好了,

然後LABVIEW再傳送T1給8051...8051回傳T1溫度值給LABVIEW

依序傳T2.T3...,8051回傳T2.T3..的溫度值

[/QUOTE]

其實可以用RS232的硬體腳位來做傳輸準備的確認,
但是你的要求是用指令取得,所以用簡單的軟體概念配合TxRx來做。

8051要先處於空回圈,當接收到外界訊號時觸發中斷,8051收到這些字串進行拆開然後跳到對應的程式區塊。
然後兩者只要規劃好溝通指令,例如:

LABVIEW傳送@WT?,,然後8051傳回@RT,OK
LABVIEW傳送@WT,T1,,然後8051傳回@RT,(T1溫度值)/r/n
當LABVIEW收到字串帶有/r/n(結束碼)就知道接收訊號完畢,可以回傳@WT,OK,讓8051跳出接收的中斷回到原本程式去。
以上簡單例子參考一下,

至於LABVIEW如何去讀寫資料到RS232,
可參閱LABVIEW本身Example,關鍵字打 VISA ,可查到Advanced Serial Write and Read.vi
這個VI便足夠一般VISA操作使用了。