1 概述 將普通傳感器與低功耗無線發射控制器和接收裝置連在一起就可構成無線傳感器,如果將該系統接入因特網(Intemet)甚至還可以組成無線網絡傳感器。文中介紹利用MC74型集成串行數字溫度傳感器組成的無線數字溫度傳感器。 MC74是安森美公司生產的8位串行接口集成數字溫度傳感器,其溫度數據由熱傳感單元轉換而來。MC74的溫度分辨率為±1°C,轉換速率通常為8次采樣/秒。在正常工作條件下,靜態電流為200μA(典型值),在待機條件下,靜態電流為5μA(典型值)。其他設備與MC74的通信可由2線SM總線,I2C兼容串行總線來實現.該總線可用于多區域監控.配置寄存器CONFIG中的SHDN位可用來激活低功耗待機方式。體積小巧、低裝配成本和易于操作的特點使MC74成為各種系統熱管理的理想選擇。 2 MC74的特點 圖1示出MC74的2種封裝形式。圖2示出MC74的內部結構。:MC74的特性如下: 數字溫度傳感功能; 兩種封裝.即SOT一23型或TO一220型封裝; 輸出溫度為一個8位的數字; 簡單的SM總線,12C串行接口; 固態(PN結型)溫度傳感; 高精度、+25°C至+85°C時,最高精度為±2°C;0°C至+125°C時,最高精度為:±3°C; 電源電壓范圍為2.7V一5.5V; 低功耗,工作電流典型值為200μA;待機典型電流值為5μA。 表1列出了MC74的引腳功能。 3 MC74的工作原理 MC74的內部結構如圖2所示。它從固態(PN結)傳感器獲得溫度并將其轉換成數字信號.其溫度分辨率為±1°C。它將轉換后的溫度數字信號存儲在內部寄存器中,再通過串行端口讀取。系統接口是一個主從式的SM總線/I2C端口,通過該接口可在任何時候讀取溫度數據。MC74總共有8個可編程的SM總線/I2C地址。可以同時使用多傳感器配置,即在一個控制系統中同時最多可連接8個類似MC74傳感器,而且在溫度獲取暫停時電路會進入低功耗等待方式。 3.1 MC74的低功耗等待方式 在得到MC74允許后。主機可將其置為低功耗(IDD=5μA典型值)等待方式,在這種方式中,A/D轉換器被中止,溫度數據寄存器被凍結,但SM總線/I2C端口還在正常運行。通過設置配置寄存器CONFIG中的SHDN位,可使MC74處于低功耗等待方式:即SHDN=0時為正常方式;SHDN=l時為低功耗等待方式。 3.2 MC74的SM總線/I2C從地址 MC74經內部編程設定有一個默認的SM總線,I2C地址為1001101,其他的7個地址可由用戶自行設定。圖3示出MC74的讀、寫及接收數據的格式。 3.3 MC74的串行端口操作 通過串行時鐘輸入端口SCLK和2線雙向串行端口的雙向數據端口SDA可對MC74進行編程和訪問。所有數據傳輸都在主從式結構中主機的控制下進行.通常是由CPU或微控制器充當主機,主機為所有傳輸提供時鐘信號。MC74通常作為主從式結構中的從機工作。在串行協議通信中,所有數據傳輸有兩個階段且所有字節先傳輸最高有效位。訪問由一個開始(START)條件發起,接著是一個器件地址字節和一個或多個數據字節,器件地址字節包括一個讀,寫選擇位,每一次訪問必須以一個停止(STOP)條件終止.應答(ACK)確認每一個字節的接收.只有在SCLK為低電平時SDA才能改變.當SCLK為高電平時SDA的改變將作為開始(START)和停止(STOP)條件。MC74的溫度與二進制值的關系如表2所示。 3.4 MC74的8位只讀溫度寄存器 該寄存器中的二進制值(二進制的補碼)代表一個交換周期后機載傳感器的溫度,在一次交互方式后寄存器中的數據會自動被更新,溫度數據寄存器中每個單元的值代表1℃,該值采用二進制的補碼運算,所以,一個00000000b的讀數相當于O°C。 4 MC74溫度傳感器的應用 4.1 由MC74組成的無線數字溫度傳感器 圖4示出由MC74組成的無線數字溫度傳感器發送端的電路原理。圖中,Ul是PIC系列單片機PICl2C509AG,U2是MC74.發射器是以PICl2C509AG為基礎的.由:PICl2C509AG驅動一個環型天線,天線蝕刻在發射器的電路板上。即由標準的PICl2C509AG,加上一個433MHz的ASK發射器。PICl2C509AG的RF部分包含一個晶體振蕩器、一個完整的鎖相環、模式控制邏輯及一個功率放大器。從圖4可以看到,RF部分和PIC微控制器部分在邏輯上是分開的,盡管它們駐留在同一個物理包內。 通常,ASK調制即在脈沖寬度調制模式下交替改變載波的振幅。這里使用的是。Manchesmr編碼方法。根據Manchester編碼(在一個位的中間,低電平向高電平轉變代表邏輯“0”,在一個位的中間,高電平向低電平轉變代表邏輯“1”),這樣就產生了同步位流.帶有編碼的時鐘信號,不在位界進行物理轉換.而是在每個位時間的中間進行邏輯轉換。 打開電源.發射器在大部分的時間內都處于休眠狀態以節省電能。工作時,PICl2C509AG部分使用I2C總線讀MC74。假如溫度有變化,新的溫度將會被發送。發射器上有兩個按鈕。這些按鈕用來喚醒發射器設置狀態ID,生成測試音頻或開始傳送目前的溫度和發射器開關狀態。當SWl被按下,發射器代碼被設置為自動改變發射器的狀態ID。同時,因為每個MC74有一個永久的12C地址。這個地址取決于感應器的序號,發射器代碼使用12C信號自動決定當前板載MC74上的I2C地址。 4.2 發送端數據發送的部分程序代碼 發射器發射的信息包內含有32位的報頭、4位的同步格式和32位的數據。數據域包含狀態ID(8位)、溫度(8位)、傳感器類型(4位)、信息類型(2位)、按鈕狀態(2位)和檢驗(8位)。每次調用發射事件時,這一整套信息被連續發送3次。下面是MC74型傳感器的發送端數據發送的一段程序代碼: 5 結束語 MC74非常適合于低成本和小型化應用。如電腦的硬盤驅動器或PC的其他外圍設備的熱保護,同時也適合于那些要求不太苛刻的溫度測量與控制系統。在上述無線數字溫度傳感器的嵌入式系統PICl2C509AG中.如果能嵌入Internet無線網絡通信協議,則可由它們組成一個無線傳感器網絡。 |