一種智能手機獲取監測環境溫度、濕度的實現方法
摘要:本文介紹一種利用智能手機耳機接口音頻傳輸,來實現智能手機拓展監測環境溫度、濕度的應用設計與實現方案,同時提出了可兼容2種不同耳機接口標準的解決方案,增強了智能手機拓展應用價值。
本文引用地址:http://www.104case.com/article/274760.htm隨著移動終端操作系統應用軟件功能日益強大,如Android和iOS智能操作系統,智能手機的應用已遠超出通話的原始功能,各種移動應用的開發更充分體現了智能化、開放式的趨勢。這里介紹一種如何利用智能手機的耳機音頻接口,來實現隨時獲取外界環境溫度濕度參數的方法。
1 技術應用背景
目前智能手機等移動通訊終端,通常都帶有4腳3.5mm立體聲耳機接口,這就給智能手機帶來通用接口擴展應用的可能性,或許有人會想到PC上通用的USB接口,然而我們發現在智能手機不斷演進發展過程中,盡管逐步過渡到支持micro USB接口,但是僅局限于USB device接口功能,雖然支持USB OTG功能的手機也有不少,但并不能保證市面所有的手機都支持。而智能手機支持耳機接口,卻是絕對所需必配,因此研究通過手機耳機接口作拓展應用,似乎是必然之路。
2 系統組成與原理
本智能手機偵測環境溫、濕度參數系統,如圖1所示系統由來自耳機端口環境溫濕度偵測外設和智能手機所組成,其中耳機端口外設主要由耳機端口MIC與GND自動偵測與自動切換電路,電池供電開關電路,耳機輸出L聲道信號整形電路,MIC信號整形發送電路,低功耗32位MCU單片機電路,專業級溫度、濕度傳感器等組成。
3 工作原理
耳機端口外設裝置將負責完成環境溫、濕度參數測量采集,在相應的智能手機APP程序支持下,智能手機顯示屏將可直接顯示環境溫度、濕度曲線。為了達此目的,這就需要建立耳機端口外設與智能手機數據通訊機制:數據傳輸的具體方式中,外設裝置通過插入手機外置話筒音頻輸入接口或音頻線路輸人接口的連接線發送數據信號給手機,外設裝置通過插入手機的外置耳機音頻接口或音頻線路輸出接口的連接插線,接收手機發送出的數據信號。很顯然手機耳機端口只能直接傳輸音頻信號,耳機線傳輸一般是1250Hz~9600Hz之間的交流音頻信號。要進行數據傳輸,信號就需要進行編碼調制發送,接收時解調解碼頻率為9600Hz和4800Hz的音頻信號。本方案則采用標準的曼徹斯特(Manchester) 線路編碼,來進行數據傳輸,如果把耳機接口終端作為主導裝置,則由其產生位時鐘信號、命令選擇信號和數據。外設裝置通過耳機音頻輸入/輸出接口與智能手機進行數據通信,數據信號在主控模塊中進行編解碼處理,再通過控制裝置讀取、寫入外部介質,并存儲數據。實現的主控模塊電路可選用低功耗的ARM微控制器,內部有可編程工作寄存器,可以方便地與主機通信,但要有自己的數據協議,主控模塊對雙向信號進行編解碼處理的過程:(1)主控電路模塊將讀寫裝置需傳送的曼徹斯特編碼數據信息解碼成國標數據,再編碼為差分曼徹斯特編碼數據信號,送到連接手機MIC接口或線路音頻輸入接口的傳輸線上。(2)主控電路模塊從連接手機耳機接口或線路音頻輸出接口如輸出L聲道的傳輸線上,接收差分曼徹斯特編碼數據信號,解碼成國標數據,再編碼為標準曼徹斯特編碼數據信息,送入MCU內置的讀寫裝置。該讀寫裝置將負責完成環境溫度、濕度數據采集。
本耳機外設解決方案使用曼徹斯特編碼來實現智能手機和EFM32ZG108微控制器間的通訊。不進行載波調制與解調,直接在音頻線路上傳輸數據編碼信號。具體協議機制如下:基于音頻輸入/輸出的數據傳輸方法是一種串行通訊方法,參考標準同步串行通訊協議,采用差分曼徹斯特編碼,曼徹斯特編碼總會在每一位的中點產生一個邊沿跳變,在每一位的開始位置也可能會有一個邊沿跳變(這決定于傳輸的數據)。在每一位中點的跳變方向表明數據。在位傳輸的邊沿所產生的跳變并不表明數據信息。它們的存在只是讓信號處于正確的狀態以便允許每一位中點的跳變。存在有保證的跳變允許信號能自同步,并且允許接收者能正確地匹配數據;如果數據不匹配,接收者能通過識別每一位中點,即在每一位的周期里不會一直有一個跳變,如圖2所示,數據傳輸是雙工方式,從手機輸出數據的傳輸使用音頻輸出線路,進人手機的數據傳輸使用音頻輸入線路,發送數據前讓總線空閑準備,提示接收方做好接收準備。
4 智能手機與耳機外設數據傳輸的軟硬件設計
從硬件外觀體積設計得小巧出發,整個環境溫濕度偵測耳機外設將有采用3.0V/50mAh CR1225 鈕扣電池供電,內置的電路設計具有不插入智能手機耳機,電池將不耗電;插入耳機后,手機APP激活后,電池才會對整個耳機外設系統供電。為了能做到系統長時間待機續航使用,主控MCU(微控制器)特意選用了超低功耗微控制器EFM32ZG108F16,它是基于ARM Cortex-M0+ CPU 內核,低成本32-bit MCU,CPU頻率能達到24MHz。由于EFM32ZG108F16低功耗的性能,deep sleep(深度睡眼)模式0.9mA,此時內部的模擬電壓比較器與CPU均仍然工作;Stop 模式0.5mA;Shut off模式20nA,EFM32ZG108F16是耳機外設解決方案理想的微控制器,微控制器負責處理所有的硬件接口和軟件協議處理,通過智能手機標準的3.5mm音頻接口實現了智能手機與微控制器之間的通訊,該微處理器軟件運行固件使用內部12MHz RC (IRC) 振蕩器作為時鐘源,基于數據傳輸速率只有1.4kbps,程序實際運行可工作于1MHz,微控制器耗電僅為114mA;一旦手機APP發出退出測量模式命令,耳機外設主控可進入深度睡眠模式(內部32.768kHz RC 振蕩器作為時鐘源),耗電只有0.9mA。
針對環境溫度、濕度參數檢測,這里將選用瑞士Sensirion AG全資子公司——盛思銳溫濕度傳感器SHT21,SHT21內部由電容式相對濕度傳感器、帶隙溫度傳感器、運放、A/D轉換器、OTP 存儲及數字處理單元所組成、支持I2C總線接口輸出,工作時功耗較低:3.2mW(8位測量,1次/秒),3V供電時,測量耗電只有300mA,SHT21相對濕度工作范圍為濕度0-100%;溫度工作范圍:-40 - +125℃ (-40 - +257°F);濕度響應時間為8秒(tau63%)。
如圖3所示主控制器與溫濕度傳感器以I2C總線進行數據采集通訊。
評論