導航:首頁 > 操作系統 > vb顯示單片機溫度

vb顯示單片機溫度

發布時間:2022-07-09 11:45:01

⑴ 求VB高手,需要VB通過串口接收51單片機採集到的溫度,並在VB上顯示出來溫度值,不需要曲線

僅供參考

Private Sub Form_Load()
Dim i As Integer
With MSComm1
If .CommPort <> 2 Then .CommPort = 2 '設置Com2為通信埠
.Settings = "9600,N,8,1" '設置通信埠參數 9600赫茲、無校驗、8個數據位、1個停止位.(這里需要進一步說明的是:.Setting=」BBBB,P,D,S」。
'含義是:B:Baud Rate(波特率);P:Parity(奇偶);D:Data Bit;S:Stop Bit)
.InBufferSize = 1024 '設置緩沖區接收數據為1024位元組
.OutBufferSize = 512
.InputMode = comInputModeText '設置數據接收模式為16進制形式
.InputLen = 1 '設置Input一次從接收緩沖讀取位元組數為1
.RThreshold = 1 '設置接收一個位元組就產生OnComm事件
.OutBufferCount = 0 '清空發送緩沖區
.InBufferCount = 0 '滑空接收緩沖區
If Not .PortOpen Then
.PortOpen = True '打開通信埠
End If

End With

⑵ 使用51單片機與PC進行串口通信時,怎麼將一個溫度值(帶兩位小數)發送到VB編寫的上位機界面上顯示

使用51單片機與PC進行串口通信時,需將一個溫度值(帶兩位小數)按通信協議規范組成的數據幀發送到PC機,VB則按通信協議規范組成的數據幀編寫的上位機程序,接收和處理數據幀,並顯示於運行程序界面或控制項上。

⑶ 這個單片機程序可以往VB裡面傳送數據 可以正常顯示溫度,但是發送到VB里邊顯示00

數據頭校驗加上AA,隨便你加,解包的時候,判斷這個標志位就行了,校驗位,加不加都可以,常見的加奇偶校驗,就是多發一個位過去,實際上串口一旦出錯,都是很明顯的錯誤,奇偶校驗的作用非常小,串口常常都會收到多數據幀的情況,一般把這些篩選掉就可以了,想要安全,就考慮USB來,說一下你的程序。初步估計你這個程序本身就有問題, 程序發送出去的數據是否正確,這個很容易辦,藉助串口調試助手這個是很多工程師都在用的,就不用考慮PC接收數據部准確的情況,網上下一個,看電腦上顯示的數據,是否正常。找出錯誤的原因,是在單片機發送程序還是你自己寫的VB程序,個人感覺是你單片機端不正確,這個我沒有運行你的程序,因為你前面提到一秒發送好多次數據。你的目的應該是想1S更新一次數據到電腦上去吧。也不排除VB端接收數據也出現了錯誤,

⑷ 我需要將單片機採集到的溫濕度 通過485 傳送到電腦上用VB做的上位機進行顯示 請問vb與485這塊要注意什麼呢

單片機UART轉RS485,即串口接一個MAX485就可以了
PC端需要用USB轉RS485的模塊
軟體上只要具有統一的通信握手協議就可以了

⑸ vb進行編程,接收單片機發送來的數據溫度和濕度,顯示在指定文本里。

1.將單片機與PC 連接,並在計算機管理的硬體中找到埠為COM*的設備,USB的也一樣
2.用MSCOMM控制項進行連接,要點是要偵測到指定的埠和數據返回,意思是你要編寫代碼查詢COM1-16號埠有沒連接設備,並返回單片機傳送的起始數據,
3.根據數據調用中斷或者事件觸發編程即可,非常簡單。如手頭沒有單片機用手機即可。

⑹ 基於VB的單片機溫度數據採集,將單片機數據送入VB時,數據要怎麼處理,為什麼VB會顯示亂碼

你的數據格式完全是數字的話,估計你發送的是ASCII碼,每個位元組減去48(十進制)就可以得到實際數字,比如收到0x34 0x33,各減去48得到21,21就是最終的值,不知道說清楚沒有

⑺ 把單片機採集的溫度經過串口傳輸到PC機上,在PC機上如何用VB做出曲線圖顯示溫度的變化

根據從串口收到的溫度值,一個一個的描點到曲線圖,點多了就組成了曲線。

⑻ 做一個溫度採集系統,程序是單片機溫度顯示部分可以正常顯示溫度,要把採集的溫度發送到VB里,

回答1:
用串口前請初始化串口。

回答2:
看數據定義
float tp; //設定為單精度
display((uint) tp); //將單精度浮點型小數轉換成無符號整型,這里會丟棄小數部分數據,但對tp本身無影響
send_char((uchar) tp);//將單精度浮點型小數轉換成無符號字元型,尼瑪還不是丟掉了小數部分。然後發送了個8位的tp過去。

回答3:
t1=(a&0x0f)*0.0625;//取小數部分
t=((b<<4)|(a>>4));//取整數部分
//尼瑪你非得要這樣表示小數?難道你就不可以用2個uchar接收小數和整數,然後去發送?
if(t>128)
{
t=t+1;
}
t=t+t1;
//上面是不是這個意思 如果整數部分大於128就讓整數部分加1.如果不是那麼就讓整數部分加上小數部分。你的意思是不是大於128就不要小數了,小於128就要個小數。

解決方案先給我分我再給你附上代碼

⑼ 用VB編寫上位機界面, 將單片機傳來的溫度信號進行顯示,界麵包括溫度曲線,當前溫度,最高溫度,急需。

這個不難,只不過現在沒時間,需要的話,周末可以幫你編一個。

閱讀全文

與vb顯示單片機溫度相關的資料

熱點內容
溫州直播系統源碼 瀏覽:110
程序員在上海買房 瀏覽:382
生活解壓游戲機 瀏覽:907
季羨林pdf 瀏覽:716
php支付寶介面下載 瀏覽:814
ipad怎麼把app資源庫關了 瀏覽:301
量柱比前一天多源碼 瀏覽:416
電子書app怎麼上傳 瀏覽:66
國家反詐中心app注冊怎麼開啟 瀏覽:804
全波差分傅里葉演算法窗長 瀏覽:41
程序員如何講自己做過的項目 瀏覽:7
程序員要看的書頸椎 瀏覽:946
php文章cms 瀏覽:553
CSS權威指南第三版PDF 瀏覽:496
android怎麼搭建框架 瀏覽:184
正宗溯源碼大燕條一克一般多少錢 瀏覽:917
電腦感染exe文件夾 瀏覽:916
wpsppt怎麼轉pdf格式 瀏覽:88
騰訊文檔在線編輯怎麼添加密碼 瀏覽:880
本地不能訪問伺服器地址 瀏覽:865