基于TinyOS2.x的溫濕度傳感器的底層驅動(dòng)與應用
摘要:簡(jiǎn)要介紹了TinyOS操作系統基本架構和ncsC語(yǔ)言組件編程方法,并剖析了SHTxx溫濕度傳感器的物理特性、溫濕度計算原理、硬件電路設計;詳細介紹了在TinyOS2.x操作系統下,SHTxx型溫濕度傳感器底層組件驅動(dòng)程序的設計過(guò)程,并在集成有CC2530的硬件平臺上驗證了此驅動(dòng)的可行性以及溫濕度傳感器的數據采集的系統方法。
關(guān)鍵詞:操作系統;底層驅動(dòng);溫濕度;采集;系統方法
引言
無(wú)線(xiàn)傳感網(wǎng)絡(luò )可以用一個(gè)簡(jiǎn)單的數學(xué)等式概括:傳感器+片上系統+無(wú)線(xiàn)通信=寬廣應用。傳感器將檢測到的信號按一定規律變換成為電信號或其他信息形式傳輸至無(wú)線(xiàn)傳感網(wǎng)絡(luò ),以滿(mǎn)足信息的傳輸、處理、存儲、顯示、記錄和控制等要求。本文研究了在TinyOS2.x操作系統上,SHTxx型溫濕度傳感器底層驅動(dòng)的應用研究,并且通過(guò)硬件平臺的設計,驗證了應用的可行性。
1 TinyOS系統與nesC語(yǔ)言
1.1 TinyOS系統
TinyOS是美國加州大學(xué)伯克利分校開(kāi)發(fā)的一種基于事件驅動(dòng)的操作系統,其目標是用最少的硬件支持網(wǎng)絡(luò )傳感器的并發(fā)密集型操作。Tin yOS操作系統把底層硬件封裝成組件架構,通過(guò)組件的層遞結構對應用層提供與硬件無(wú)關(guān)的接口,它的這種分層架構易于操作系統的移植。
TinyOS構建成一種自下而上的樹(shù)狀結構,如圖1所示。最底層的組件直接與硬件交互,同時(shí)向上層報告事件的發(fā)生,上層組件收到信號向下發(fā)送指令。TinyOS是專(zhuān)為低功耗微控制器設計的一種微型操作系統。此外,它還有非常環(huán)保的省電制度和機制。
1.2 nesC語(yǔ)言
nesC(network embeded system C)語(yǔ)言由C語(yǔ)言擴展而來(lái),用來(lái)描述TinyOS的執行模型和結構;nesC語(yǔ)言是TinyOS的編程語(yǔ)言,也是Tiny OS應用程序的開(kāi)發(fā)工具。nesC程序主要由配置組件、模塊組件和編譯文件組成,如圖2所示。
1.3 組件與程序
TinyOS組件分為配置和模塊兩種組件。一般來(lái)說(shuō),上層組件可以調用底層組件的命令,下層組件通過(guò)觸發(fā)信號的方式通知上層組件及其事件的發(fā)生,最底層的組件直接和硬件交互,從而自上到下形成一種樹(shù)狀結構。接口的提供者必須實(shí)現接口中的命令函數,而接口的使用者必須實(shí)現接口的事件函數,如圖3所示。一個(gè)組件可以使用或提供多個(gè)接口,以及實(shí)現同一個(gè)接口的多個(gè)命令。
模塊提供應用程序代碼,實(shí)現一個(gè)或多個(gè)接口;配置則是通過(guò)配線(xiàn)將其他組件裝配起來(lái)的組件,將各個(gè)組件所使用的接口與其他組件提供的接口連接在一起。
2 SHTxx溫濕度傳感器介紹
SHTxx系列單芯片傳感器是一款含有已校準數字信號輸出的溫濕度復合傳感器。SHTxx傳感器包括一個(gè)電容式聚合體測濕元件和一個(gè)能隙式測溫元件,并與一個(gè)14位的A/D轉換器以及串行接口電路在同一芯片上實(shí)現無(wú)縫連接。
2.1 SHTxx溫濕度傳感器的硬件接口
SHTxx的串行接口與I2C總線(xiàn)相似,但與I2C總線(xiàn)接口并不兼容,圖4為SHTxx溫濕度傳感器的硬件接口電路圖。SCK用于微處理器與SHTxx之間的時(shí)鐘同步通信。由于SHTxx內部接口包含了完全靜態(tài)邏輯,因此不存在最小SCK頻率。DATA為三態(tài)邏輯門(mén),主要用于數據的讀取。DATA在SCK時(shí)鐘下降沿之后改變狀態(tài),并僅在SCK時(shí)鐘上升沿有效。數據傳輸期間,在SCK時(shí)鐘高電平時(shí),DATA必須保持穩定。為避免信號沖突,微處理器應驅動(dòng)DATA在低電平。需要一個(gè)外部的上拉電阻(例如10 kΩ)將信號提拉至高電平。
2.2 SHTxx溫濕度傳感器的工作時(shí)序
SHTxx溫濕度傳感器用一組“啟動(dòng)傳輸”時(shí)序來(lái)表示數據傳輸的初始化。當SCK時(shí)鐘為高電平時(shí),DATA翻轉為低電平,緊接著(zhù)SCK變?yōu)榈碗娖?,隨后在SCK時(shí)鐘為高電平時(shí),DATA翻轉為高電平。
評論