關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于TinyOS2.x的溫濕度傳感器的底層驅(qū)動與應(yīng)用

基于TinyOS2.x的溫濕度傳感器的底層驅(qū)動與應(yīng)用

作者: 時間:2013-08-06 來源:網(wǎng)絡(luò) 收藏

摘要:簡要介紹了TinyOS基本架構(gòu)和ncsC語言組件編程方法,并剖析了SHTxx傳感器的物理特性、計算原理、硬件電路設(shè)計;詳細(xì)介紹了在TinyOS2.x下,SHTxx型傳感器底層組件驅(qū)動程序的設(shè)計過程,并在集成有CC2530的硬件平臺上驗證了此驅(qū)動的可行性以及溫濕度傳感器的數(shù)據(jù)。
關(guān)鍵詞:;溫濕度;;

引言
無線傳感網(wǎng)絡(luò)可以用一個簡單的數(shù)學(xué)等式概括:傳感器+片上系統(tǒng)+無線通信=寬廣應(yīng)用。傳感器將檢測到的信號按一定規(guī)律變換成為電信號或其他信息形式傳輸至無線傳感網(wǎng)絡(luò),以滿足信息的傳輸、處理、存儲、顯示、記錄和控制等要求。本文研究了在TinyOS2.x操作系統(tǒng)上,SHTxx型溫濕度傳感器的應(yīng)用研究,并且通過硬件平臺的設(shè)計,驗證了應(yīng)用的可行性。

1 TinyOS系統(tǒng)與nesC語言
1.1 TinyOS系統(tǒng)
TinyOS是美國加州大學(xué)伯克利分校開發(fā)的一種基于事件驅(qū)動的操作系統(tǒng),其目標(biāo)是用最少的硬件支持網(wǎng)絡(luò)傳感器的并發(fā)密集型操作。Tin yOS操作系統(tǒng)把底層硬件封裝成組件架構(gòu),通過組件的層遞結(jié)構(gòu)對應(yīng)用層提供與硬件無關(guān)的接口,它的這種分層架構(gòu)易于操作系統(tǒng)的移植。
TinyOS構(gòu)建成一種自下而上的樹狀結(jié)構(gòu),如圖1所示。最底層的組件直接與硬件交互,同時向上層報告事件的發(fā)生,上層組件收到信號向下發(fā)送指令。TinyOS是專為低功耗微控制器設(shè)計的一種微型操作系統(tǒng)。此外,它還有非常環(huán)保的省電制度和機(jī)制。

本文引用地址:http://m.butianyuan.cn/article/159296.htm

a.JPG


1.2 nesC語言
nesC(network embeded system C)語言由C語言擴(kuò)展而來,用來描述TinyOS的執(zhí)行模型和結(jié)構(gòu);nesC語言是TinyOS的編程語言,也是Tiny OS應(yīng)用程序的開發(fā)工具。nesC程序主要由配置組件、模塊組件和編譯文件組成,如圖2所示。

b.JPG


1.3 組件與程序
TinyOS組件分為配置和模塊兩種組件。一般來說,上層組件可以調(diào)用底層組件的命令,下層組件通過觸發(fā)信號的方式通知上層組件及其事件的發(fā)生,最底層的組件直接和硬件交互,從而自上到下形成一種樹狀結(jié)構(gòu)。接口的提供者必須實現(xiàn)接口中的命令函數(shù),而接口的使用者必須實現(xiàn)接口的事件函數(shù),如圖3所示。一個組件可以使用或提供多個接口,以及實現(xiàn)同一個接口的多個命令。

c.JPG


模塊提供應(yīng)用程序代碼,實現(xiàn)一個或多個接口;配置則是通過配線將其他組件裝配起來的組件,將各個組件所使用的接口與其他組件提供的接口連接在一起。

2 SHTxx溫濕度傳感器介紹
SHTxx系列單芯片傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。SHTxx傳感器包括一個電容式聚合體測濕元件和一個能隙式測溫元件,并與一個14位的A/D轉(zhuǎn)換器以及串行接口電路在同一芯片上實現(xiàn)無縫連接。
2.1 SHTxx溫濕度傳感器的硬件接口
SHTxx的串行接口與I2C總線相似,但與I2C總線接口并不兼容,圖4為SHTxx溫濕度傳感器的硬件接口電路圖。SCK用于微處理器與SHTxx之間的時鐘同步通信。由于SHTxx內(nèi)部接口包含了完全靜態(tài)邏輯,因此不存在最小SCK頻率。DATA為三態(tài)邏輯門,主要用于數(shù)據(jù)的讀取。DATA在SCK時鐘下降沿之后改變狀態(tài),并僅在SCK時鐘上升沿有效。數(shù)據(jù)傳輸期間,在SCK時鐘高電平時,DATA必須保持穩(wěn)定。為避免信號沖突,微處理器應(yīng)驅(qū)動DATA在低電平。需要一個外部的上拉電阻(例如10 kΩ)將信號提拉至高電平。

d.JPG


2.2 SHTxx溫濕度傳感器的工作時序
SHTxx溫濕度傳感器用一組“啟動傳輸”時序來表示數(shù)據(jù)傳輸?shù)某跏蓟?。?dāng)SCK時鐘為高電平時,DATA翻轉(zhuǎn)為低電平,緊接著SCK變?yōu)榈碗娖剑S后在SCK時鐘為高電平時,DATA翻轉(zhuǎn)為高電平。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
風(fēng)速傳感器相關(guān)文章:風(fēng)速傳感器原理
土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理
溫濕度控制器相關(guān)文章:溫濕度控制器原理

上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉