找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1920|回復(fù): 2
收起左側(cè)

基于LabVIEW上位機(jī)與Arduino單片機(jī)串口通信的DS18B20環(huán)境溫度采集

[復(fù)制鏈接]
ID:1110079 發(fā)表于 2024-4-8 12:55 | 顯示全部樓層 |閱讀模式
Arduino 代碼
  1. #include <OneWire.h>
  2. #include <DallasTemperature.h>
  3. #define ONE_WIRE_BUS 2     //DS18B20接至Arduino數(shù)字口2

  4. OneWire oneWire(ONE_WIRE_BUS);
  5. DallasTemperature sensors(&oneWire);

  6. byte comdata[3]={0};      //定義數(shù)組數(shù)據(jù),存放串口命令數(shù)據(jù)
  7. //int LED = 13;                 //定義LED連接的管腳
  8. void receive_data(void);      //接受串口數(shù)據(jù)
  9. void test_do_data(void);         //測試串口數(shù)據(jù)是否正確,并更新數(shù)據(jù)
  10. void setup()
  11. {
  12.   Serial.begin(9600);      
  13.   //pinMode(LED, OUTPUT);
  14.   // Start up the library
  15.   sensors.begin();
  16. }

  17. void loop()
  18. {
  19.   while (Serial.available() > 0)   //不斷檢測串口是否有數(shù)據(jù)
  20.    {
  21.       receive_data();            //接受串口數(shù)據(jù)
  22.       test_do_data();            //測試數(shù)據(jù)是否正確并更新數(shù)據(jù)
  23.    }
  24. }
  25. ?
  26. void receive_data(void)      
  27. {
  28.   int i ;
  29.   for(i=0;i<3;i++)
  30.   {
  31.     comdata[ i] = Serial.read();
  32.     //延時(shí)一會,讓串口緩存準(zhǔn)備好下一個字節(jié),不延時(shí)可能會導(dǎo)致數(shù)據(jù)丟失,
  33.     delay(2);
  34.   }
  35. }

  36. void test_do_data(void) // 測試并執(zhí)行命令
  37. {
  38.   if(comdata[0] == 0x55) //0x55和0xAA均為判斷是否為有效命令
  39.   {
  40.     if(comdata[1] == 0xAA)
  41.     {
  42.       if(comdata[2] == 0xFF)
  43.       {
  44.         sensors.requestTemperatures(); // 請求傳感器測量溫度
  45.         float tempC = sensors.getTempCByIndex(0); // 讀取溫度值
  46.         Serial.print(tempC);
  47.       }
  48.     }
  49.   }
  50. }
復(fù)制代碼


LabVIEW設(shè)計(jì)
LabVIEW 前面板設(shè)計(jì)如下
LabVIEW_FrontPanel.jpg
相應(yīng)的程序圖如下
LabVIEW_BackPanel1.jpg
? LabVIEW_BackPanel2.jpg



轉(zhuǎn)載請注明來源和作者,如有問題請回帖或Email聯(lián)系(lijinlei0907 @163.com)
回復(fù)

使用道具 舉報(bào)

ID:858367 發(fā)表于 2024-5-27 20:46 | 顯示全部樓層
樓主能分享下上位機(jī)和下位機(jī)源碼工程包嗎?
回復(fù)

使用道具 舉報(bào)

ID:1110079 發(fā)表于 2024-6-27 15:17 | 顯示全部樓層
nongxin117 發(fā)表于 2024-5-27 20:46
樓主能分享下上位機(jī)和下位機(jī)源碼工程包嗎?

上位機(jī)LabVIEW程序可以參考帖子的附件
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表