新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于MSP430的智能溫度檢測系統設計

        基于MSP430的智能溫度檢測系統設計

        作者: 時間:2013-04-13 來源:網絡 收藏

        3. 1. 1 復位子程序

          該程序的主要功能是負責的復位, 以方便進行以后的操作。復位要求主CPU 將數據線下拉500微秒, 然后釋放, 收到信號后等待16~ 60微秒左右, 后發出60 ~ 240微秒的存在低脈沖, 主CPU 收到此信號表示復位成功。

          bit Reset( )

          { unsigned char ;i

          bit flag;

          DS18B20= 0:

          for( i= 0; i 200; i+ + ) ; / /保持低電平500微秒

          DS18B20= 1:

          for( i= O; i 30; i+ + ) ; / /等60微秒

          flag= DS18B20; / /取DS18B20狀態

          for( i= 0; i 100; i+ + ) ; / /等300微秒

          return flag; / / flag= 0復位成功, flag= 1, 復位不成功

          }

          3. 1. 2 寫一個字節子程序:

          CPU 將數據線從高電平拉至低電平, 產生寫起始信號; 15 微秒之內, 將所寫的位送到數據線上;DS18B20在之后15~ 60微秒接收位信息; 寫下一個位之前要有1秒以上的高電平恢復; 將以上過程重復8次, 即完成一個字節的寫操作。

          vo idWRDS18B20( unsigned char data0)

          { unsigned char ,i ;j

          for( j= 0; j 8; j+ + )

          {

          DS18B20= 0; / /高電平拉到低電平, 產生寫起始信號

          for( i= 0; i 1; i+ + ) ;

          DS18B20 = da ta0 0x01; / /15微秒內寫一位

          for( i= 0; i 20; i+ + ) ; / /等60微秒, DS18B20完成采樣

          DS18B20= 1; / /高電平恢復

          data0= data0> > 1; / /右移, 為下一位準備}

          }

          3. 1. 3 讀一個字節子程序

          CPU 將數據線從高電平拉到低電平1微秒以上, 再拉到高電平, 產生讀起始信號; 15微秒之內,CPU 讀一位; 讀周期為60微秒, 讀下一個位之前要有1微秒以上的高電平恢復; 將以上過程重復8次,即完成一個字節的讀操作。

          unsigned charRDDS18B20( )

          { unsigned char ,i ,j data0= 0;

          bit temp;

          for( j= 0; j 8; j+ + )

          { DS18B20= 0; / /高電平拉到低電平1微秒以上

          for( i= 0; i ;l i+ + ) ;

          DS18B20= 1; / /再拉到高電平, 產生讀起始信號

          for( i= 0; i 1; i+ + );

          temp= DS18B20; / /15微秒之內讀一位

          for( i= 0; i 20; i+ + ); / /等60微秒

          data0= dataO > > 1; / /為下一位準備

          if( temp= = 1) data0= dataO |0x80;

          else data0= data0 0x7;f

          DS18B20= 1; / /高電平恢復

          for( i= O; i 1; i+ + ); }

          return data0; }

          3. 2 上位機軟件編程

          系統采用MSCOMM 控件實現VC ++ 與單片機之間的數據交換, 具有程序實現簡便、程序模塊化、工作可靠等優點, 并能滿足多數情況下的工控要求。

          使用MSCOMM控件主要是通過事件來處理串行口的交互??丶腗SCOMM 事件負責捕獲或處理這些通訊事件和通訊錯誤。

          4 結束語

          測溫系統采用了集成度高、功耗低的F149 為核心微處理器, 通過傳感器DS18B20實現對溫度測量, 并進行存儲和顯示。實驗表明: 當外界溫度試驗的范圍設定在0℃ ~ 50℃ ,可確保測量誤差不超過±0. 5℃ , 在試驗板上顯示溫度精確到0. 0625℃, AD轉換的時間是750ms, 傳輸的距離是40m。另外, 在該系統的基礎上也可以擴展其他信號, 如濕度, 壓力等。

        參考文獻:

        [1].F149 datasheethttp://www.dzsc.com/datasheet/F149+_874114.html.
        [2].DS18B20datasheethttp://www.dzsc.com/datasheet/DS18B20_8175.html.
        [3].CAT24WC64datasheethttp://www.dzsc.com/datasheet/.html.
        [4].ISD1420datasheethttp://www.dzsc.com/datasheet/ISD1420_409804.html.
        [5].ROMdatasheethttp://www.dzsc.com/datasheet/ROM_1188413.html.
        [6].MSP430datasheethttp://www.dzsc.com/datasheet/MSP430_490166.html.
        [7].S6A0069 datasheethttp://www.dzsc.com/datasheet/S6A0069+_1.html.
        [8].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.
        [9].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
        [10].MAX232datasheethttp://www.dzsc.com/datasheet/MAX232_7.html.


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 溧阳市| 永寿县| 宁陕县| 那曲县| 勐海县| 宝山区| 临武县| 绍兴县| 健康| 游戏| 河东区| 调兵山市| 嵩明县| 秀山| 太保市| 双鸭山市| 宁陵县| 新乡市| 四川省| 砚山县| 潜江市| 枣阳市| 南康市| 沭阳县| 同心县| 清新县| 樟树市| 银川市| 襄樊市| 长治县| 赫章县| 鄂州市| 龙胜| 宁都县| 普宁市| 民乐县| 新巴尔虎左旗| 华亭县| 巴林右旗| 南川市| 英德市|