<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 設(shè)計(jì)應(yīng)用 > 多功能智能時(shí)鐘的設(shè)計(jì)

          多功能智能時(shí)鐘的設(shè)計(jì)

          作者:謝志平 時(shí)間:2020-01-20 來源:電子產(chǎn)品世界 收藏

            謝志平(廣東省技師學(xué)院,廣東 惠州 516100)
            摘? 要:充分利用32位單片機(jī)內(nèi)部強(qiáng)大資源,開發(fā)了一種將電子時(shí)鐘、倒計(jì)時(shí)器、簡(jiǎn)易心率、天氣預(yù)報(bào)、體溫檢測(cè)裝置與藍(lán)牙音響系統(tǒng)結(jié)合的電子設(shè)備。采用了高精度時(shí)鐘芯片DS3231,能做到時(shí)間精準(zhǔn);采用了ESP8266Wi-Fi模塊進(jìn)行授時(shí)和天氣預(yù)報(bào)功能;采用了專用血氧傳感器芯片MAX30102,體積小,功耗低,能方便檢測(cè)血氧與心率;利用無線串口HC-12模塊實(shí)現(xiàn)了遠(yuǎn)距離無線遙控功能。經(jīng)實(shí)際測(cè)試,達(dá)到了預(yù)期的各項(xiàng)功能。
            關(guān)鍵詞:?jiǎn)纹瑱C(jī);高精度;Wi-Fi模塊;無線遙控

          本文引用地址:http://www.ex-cimer.com/article/202001/409438.htm

            1 關(guān)鍵核心技術(shù)

            1.1 單片機(jī)部分

            單片機(jī)為STM32主流型號(hào),是一種高性能、低成本、低功耗的嵌入式單片機(jī)。整個(gè)系統(tǒng)分為主機(jī)和遙控器:主機(jī)采用LED全彩屏顯示,遙控器采用OLED顯示屏[2]。LED顯示屏可以采用市場(chǎng)上主流的P3、P2.5小間距高清LED顯示屏,利用STM32單片機(jī)CPU速度優(yōu)勢(shì),采用動(dòng)態(tài)掃描技術(shù),既節(jié)約電能,又能達(dá)到高清顯示的目的。 整個(gè)系統(tǒng)結(jié)構(gòu)如圖1所示。

          1581328940459635.jpg

            1.2 時(shí)鐘芯片

            時(shí)鐘芯片采用了DS3231,該芯片是低成本、高精度I2C實(shí)時(shí)時(shí)鐘(RTC),具有集成的溫補(bǔ)晶振(TCXO)和晶體,在沒有Wi-Fi授時(shí)時(shí),正常溫度工作范圍內(nèi)精度為±2×10-6,走時(shí)非常精準(zhǔn),優(yōu)于普通鐘表,農(nóng)歷的算法和星期算法100年內(nèi)零誤差。
            1.3 Wi-Fi授時(shí)與天氣數(shù)據(jù)采集

            Wi-Fi模塊采用ESP8266。接收天氣時(shí)間用arduino程序編寫,arduino程序的示例做得好,容易快速上手,通 過ESP8266讀天氣及時(shí)間程序就是用arduino程序里的示例修改的。在其基礎(chǔ)上增加字符串處理,把收到的網(wǎng)站數(shù)據(jù)重新整理成比較簡(jiǎn)單的字符串。由于是個(gè)人應(yīng)用,所以參數(shù)需根據(jù)實(shí)際情況進(jìn)行修改。如:在ESP8266例程里相應(yīng)的位置將實(shí)際使用的Wi-Fi名改為test ,密碼為123456789。模塊就能自動(dòng)連接到這個(gè)test了。
            WiFi.mode(WIFI_STA);

            WiFiMulti.addAP(“test”, “123456789”);

            如果要查詢指定地區(qū)的天氣,利用免費(fèi)開放的天氣查詢網(wǎng)站,在例程里相應(yīng)的位置直接修改當(dāng)?shù)氐牡刂贰H缫樵兓葜莸貐^(qū)的天氣,則:http.begin(“http://www.webxml.com.cn/WebServices/WeatherWS.asmx/getWeather?theUserID=&theCityCode=惠州”)。
            1.4 血氧飽和度與心率采集

            身體細(xì)胞需要氧氣來進(jìn)行有氧呼吸。呼吸是細(xì)胞獲得有用能量的關(guān)鍵方法之一。血氧飽和度是血液中被氧結(jié)合的氧合血紅蛋白(HbO2)的容量占全部可結(jié)合的血紅蛋白(Hb)容量的百分比,即血液中血氧的濃度,它是呼吸循環(huán)的重要生理參數(shù)。
            血氧傳感器采用Maxim公司的MAX30102[4],是一種專為可穿戴設(shè)備設(shè)計(jì)開發(fā)的血氧飽和度和心率監(jiān)測(cè)傳感器,它是集光源、接收和濾波及數(shù)字化為一體。芯片功耗極低,采用了1.8 V內(nèi)核供電,采用I2C標(biāo)準(zhǔn)通信,可用軟件關(guān)斷芯片,待機(jī)電流低至0.7 μA。芯片內(nèi)集成的光源為660 nm的紅光和880 nm的紅外光,接收端為高靈敏度的光敏三極管,接收到的信號(hào)進(jìn)行放大后可進(jìn)行模擬濾波和數(shù)字濾波,然后將測(cè)得的數(shù)據(jù)存放到內(nèi)部存儲(chǔ)器中,供外部控制器讀取。電路見圖2。

          1581328971811841.jpg

            內(nèi)部LED通信是通過一個(gè)標(biāo)準(zhǔn)的I2C兼容接口,該模塊可以通過軟件在零待機(jī)電流的情況下關(guān)閉,使電源導(dǎo)軌始終處于通電狀態(tài)。
            脈沖血氧儀需要兩種不同的波長(zhǎng)來執(zhí)行測(cè)量。MAX30102集成了紅色和紅外 LED 驅(qū)動(dòng)器,可調(diào)制血氧飽和度(SPO2)和心率(HR)測(cè)量的 LED 脈沖。LED 電流可在適當(dāng)?shù)碾娫措妷合聫?~50 mA進(jìn)行編程。LED 脈沖寬度可編程為69~411 μs,使算法能夠根據(jù)使用情況優(yōu)化血氧飽和度(SPO2)和心率(HR)的精度和功耗。圖3為實(shí)物圖。

          微信截圖_20200210180111.jpg

            數(shù)據(jù)的讀取方法:設(shè)置一個(gè)串行通信_(tái)周期任務(wù)函數(shù),當(dāng) USB 緩沖區(qū)中存在數(shù)據(jù)時(shí),此函數(shù)會(huì)分析數(shù)據(jù),并在是有效的命令時(shí)執(zhí)行。
            串行通信_(tái)周期任務(wù)函數(shù)不斷檢查g_recv_size 標(biāo)志。當(dāng)此標(biāo)志的值不是0時(shí),這意味著在USB 緩沖區(qū)上從單片機(jī)接收了一些數(shù)據(jù)。此信息將復(fù)制到主應(yīng)用程序 InBuffer,并且接收的數(shù)據(jù)數(shù)量將復(fù)制到 InSize。之后, g_recv_size 設(shè)置為 0,指示數(shù)據(jù)已讀取。當(dāng) InSize 的值不是 0 時(shí),數(shù)據(jù)已收到,并且檢查它是否與通信協(xié)議數(shù)據(jù)兼容。數(shù)據(jù)讀取流程圖如圖4。

          微信截圖_20200210180115.jpg

            1.5 無線遙控

            為能手動(dòng)遠(yuǎn)程控制,考慮距離和抗干擾能力,遙控器采用了HC-12無線串口通信模塊,該模塊工作在433.4~473 MHz,可以設(shè)置多個(gè)頻道,步進(jìn)為400 kHz。模塊最大發(fā)射功率為100 MW,5 kbit/s,空中波特率下接收靈敏度為-116 dBm,開闊地1 000 m的通信距離。模塊與單片機(jī)的連接見圖5。

          1581329019792094.jpg

            HC-12 模塊共有四種工作模式,考慮實(shí)際使用時(shí),遙控器數(shù)據(jù)量小,正常使用時(shí)距離也比較近,故采用FU2 模式。此模式為省電模式,此時(shí)模塊的空閑工作電流為 80 μA 左右。只適用傳輸少量數(shù)據(jù)(每個(gè)數(shù)據(jù)包在 20 個(gè)字節(jié)以內(nèi)),數(shù)據(jù)包發(fā)送時(shí)間間隔不能太短(最好在 2 s以上),否則會(huì)造成數(shù)據(jù)丟失。AT 指令用來設(shè)置模塊的參數(shù)和切換模塊的功能,設(shè)置后需退出設(shè)置狀態(tài)才生效。方法為:正常使用(已經(jīng)上電)中,把 第 5 引腳“SET”置低電平,利用串口調(diào)試助手,發(fā)送AT+FU2回車。串口調(diào)試助手返回OK+FU2。此模式下不能設(shè)置成其它串口波特率。FU2 模式下,參數(shù)和功能的修改,掉電不會(huì)丟失。指令格式見表1。

          1581329041949388.jpg

            由于 HC-12 模塊的無線接收靈敏度比較高,當(dāng)串口波特率大于 9.6 kbit/s 時(shí),必須要錯(cuò)開 5 個(gè)相鄰頻道來使用。當(dāng)串口波特率不大于 9.6 kbit/s 時(shí),如果短距離(10 m以內(nèi))通信,也需要錯(cuò)開 5 個(gè)相鄰頻道使用。
            設(shè)置好串口相關(guān)工作模式后,程序配置好初始化(波特率和串口控制字等)。然后只要將發(fā)送的數(shù)據(jù)送入發(fā)送函數(shù)即可。例如:發(fā)送0x99。即:UART_Send_Byte(0x99);發(fā)送函數(shù)為:

            void UART_Send_Byte(unsigned char mydata)

             

            ES=0;//關(guān)串口中斷 

            TI=0;//串口中斷標(biāo)志置0 

            SBUF=mydata;//將發(fā)送的數(shù)據(jù)送入SBUF 

            while(!TI);//等待發(fā)送完成 

            TI=0;//清發(fā)送中斷標(biāo)志 

            ES=1;//打開中斷 

            }

            2 系統(tǒng)測(cè)試

            系統(tǒng)顯示采用了LED屏幕。LED屏采用了局部刷新算法,響應(yīng)速度快,程序功能優(yōu)化,效率較高。并且視覺效果很好,支持運(yùn)行動(dòng)畫效果、顯示圖片等。操作按鍵算法采用非延遲消抖,提高了單片機(jī)工作效率,使用STM32F0單片機(jī)HAL庫(kù)[5]里的SysTick時(shí)鐘檢查時(shí)長(zhǎng)實(shí)現(xiàn)消抖,定時(shí)器高速采樣,響應(yīng)快,對(duì)程序運(yùn)行速度影響小,支持多種按鍵事件的響應(yīng),實(shí)現(xiàn)了數(shù)據(jù)操作、界面設(shè)置等諸多人性化功能。程序里設(shè)置為每天連接一次Wi-Fi信號(hào),對(duì)時(shí)鐘芯片進(jìn)行授時(shí)。經(jīng)過半年的運(yùn)行,完全能與北京時(shí)間完全一致。藍(lán)牙模塊采用集成的模塊,接通電源后就可以與手機(jī)藍(lán)牙進(jìn)行配對(duì),成功后就可以獲取手機(jī)內(nèi)的音樂信息,使智能時(shí)鐘有了相應(yīng)的娛樂功能,使智能時(shí)鐘的應(yīng)用更加廣泛。遙控器的操作在正常工作和生活環(huán)境里均能可靠地對(duì)主機(jī)進(jìn)行設(shè)置,使用效果良好。
            3 結(jié)語

            普通的電子時(shí)鐘功能單一,走時(shí)不夠精準(zhǔn),利用32位單片機(jī)豐富的硬件與軟件資源,將普通的電子鐘功能進(jìn)行擴(kuò)展,實(shí)現(xiàn)了諸多人性化的功能,方便了人們的生活,在性價(jià)比方面具有較大的優(yōu)優(yōu)勢(shì),具有一定的市場(chǎng)。
            參考文獻(xiàn)

            [1] 屈微, 王志良. STM32單片機(jī)應(yīng)用基礎(chǔ)與項(xiàng)目實(shí)踐-微課版[M].北京:清華大學(xué)出版社,2019:100-201.
            [2] 劉正翔.基于STM32的OLED顯示屏接口設(shè)計(jì)[J].電子技術(shù)與軟件工程, 2017(19):65.
            [3] 白鵬飛.基于MAX30102的穿戴式血氧飽和度檢測(cè)系統(tǒng)[J].激光與紅外, 2017(10):1277-1279

            [4] 高顯生.STM32F0實(shí)戰(zhàn):基于HAL庫(kù)開發(fā)[M]. 北 京: 機(jī)械工業(yè)出版社,2018:98-104.
            [5] 李立春,劉卓.基于ARM Cortex-M3的SysTick解 析[J].吉林化工學(xué)院學(xué)報(bào), 2015,32(1):37-38.

            本文來源于科技期刊《電子產(chǎn)品世界》2020年第02期第81頁(yè),歡迎您寫論文時(shí)引用,并注明出處。



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();