• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 關 閉

    新聞中心

    EEPW首頁 > 工控自動化 > 設計應用 > 基于TinyOS2.x的溫濕度傳感器的底層驅動與應用

    基于TinyOS2.x的溫濕度傳感器的底層驅動與應用

    作者: 時間:2013-08-06 來源:網絡 收藏


    3 SHTxx的TinyOS設計
    3.1 SHTxx傳感器底層接口驅動設計
    由SHTxx傳感器測量時序可知,SHTxx傳感器測量時序包括啟動傳輸、發送命令、2字節數據傳輸以及CRC校驗傳輸等時序部分。SHTxx溫濕度傳感器的TinyOS驅動代碼包括SHT接口的定義SHT.nc、SHT配置組件SHTC.nc和模塊組件SHTP.nc三部分。
    (1)SHT溫濕度傳感器接口定義
    在SHT溫濕度傳感器接口中,定義了read命令函數和ReadDone事件函數。read命令函數負責啟動SHTxx溫濕度傳感器的測量過程,ReadDo ne事件函數則是當SHTxx溫濕度傳感器測量完成后觸發該事件。具體代碼如下:
    j.JPG
    (2)SHT溫濕度傳感器配置組件
    在SHT溫濕度傳感器配置組件中,利用MainC組件的初始化命令完成對SHT溫濕度傳感器的初始化操作。HplCC2530GenerallOC組件對SHT溫濕度傳感器端口進行配置,定時器組件定義兩次測量的時間間隔,部分代碼如下:
    k.JPG
    (3)SHT溫濕度傳感器模塊組件
    SHT溫濕度傳感器模塊組件完成SHT溫濕度傳感器數據讀取的,完成對SHT溫濕度傳感器的時序模擬以及實現SHT接口函數。在數據讀取完成后,觸發ReadDone事件函數,下面主要介紹SHT溫濕度傳感器驅動模塊中的幾個與時序相關的函數。
    復位時序模擬函數如下:
    l.JPG
    數據讀取時序模擬函數如下:
    recvByte(uint8_t ack)函數模擬讀取數據時的時序。微處理器在讀取SHTxx溫濕度傳感器的數據時,有兩種不同的應答信號。在讀取轉換數據時,由微處理器將DATA線拉為低電平作為應答信號;而在讀取CRC數據時,需要將DATA線拉為高電平應答信號,所以在recvByte(uint8 _t ack)函數中,ack作為兩種應答信息參數進行傳遞。該函數返回讀取的數據。
    m.JPG
    SHTxx溫濕度傳感器寫數據主要為寫命令字和SHTxx溫濕度傳感器的狀態寄存器,在寫命令字完成后,SHTxx溫濕度傳感器將控制DATA數據線,并將數據線上拉為高電平作為應答信號。寫數據時序模擬函數略——編者注。
    3.2 SHTxx溫濕度傳感器TinyOS驅動程序設計
    SHTxx溫濕度傳感器驅動測試程序通過SHTxx溫濕度SHTxx的溫濕度值,顯示在開發平臺中的LCD屏上,程序文件包括模塊組件TestSHTM.nc、配置組件TestSHTC.nc以及編譯文件makefile。
    TestSHTC.nc的配置文件部分代碼略——編者注。SHTxx溫濕度傳感器驅動測試程序的組件關聯圖略——編者注。

    4 系統測試及結論
    通過Cygwin平臺對應用程序進行編譯和鏈接,生成hex文件,下載程序到目標硬件平臺運行。LCD顯示溫濕度結果,通過測試發現,該系統能完成預期的數據功能。根據SHTxx溫濕度傳感器驅動的設計方法完成其他傳感器的驅動設計。當然也可以利用該驅動程序,通過網絡實時監控周圍環境的溫濕度參數。

    本文引用地址:http://www.czjhyjcfj.com/article/159296.htm
    linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
    風速傳感器相關文章:風速傳感器原理
    土壤濕度傳感器相關文章:土壤濕度傳感器原理
    溫濕度控制器相關文章:溫濕度控制器原理

    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 南投县| 青川县| 金溪县| 开化县| 青神县| 南皮县| 普兰店市| 韩城市| 临沭县| 南充市| 越西县| 青铜峡市| 潼南县| 江津市| 浮梁县| 银川市| 海门市| 扶余县| 潮州市| 稷山县| 渭南市| 隆化县| 高密市| 彭泽县| 吉首市| 波密县| 周至县| 丰台区| 乌海市| 板桥市| 巴中市| 惠安县| 张掖市| 广元市| 淮南市| 本溪| 新干县| 澄江县| 武川县| 安阳县| 华坪县|