基于嵌入式車(chē)載安全預警系統設計
2.1 微處理器MCU
設計中選用的主控芯片為STM32增強型系列的STM32F103RE,STM32系列是意法半導體推出的專(zhuān)為高要求、低成本、低功耗的嵌入式應用設計的Cortex-M3內核的ARM控制器。2.0~3.6 V的工作電壓,時(shí)鐘頻率可達到72 MHz,內置512 KB FLASH和64 KB SRAM,帶片選的靜態(tài)存儲器控制器,支持CF卡、SRAM、NAND存儲器。片上集成有三路16位數模轉換器、兩路I2C、五路UART和三路SPI端口等,其方便的擴展性及豐富的通信接口非常適用于本系統實(shí)現與多個(gè)外部功能模塊的通信控制。
2.2 定位、測速電路設計
GPS是實(shí)現車(chē)輛定位及測速功能的核心模塊,這里選用的是瑞士u-blox公司生產(chǎn)的LEA-5S型號的GPS模塊,其具有22.4 mmx17 mm超小封裝,4 Hz定位更新速率,65 mW的低功耗以及-160 dBm的高追蹤靈敏度。模塊的串口。TTL電平是3 V,與STM32的通信電平一致,因此應用中直接將模塊的Pin3 TxD,Pin4 RxD與主控芯片PA3 USART2_RX和PA2 USART2_TX相連。
通信協(xié)議遵循NMEA-0183標準,協(xié)議的語(yǔ)句格式以“$”開(kāi)始,以“CR>LF>”結束,主控芯片可以通過(guò)串口讀取模塊上傳的數據幀$GP GGA(全球定位信息)和$GPVTG(地面速度信息)語(yǔ)句,從中提取需要的經(jīng)緯度、航向、速度、時(shí)間等信息。
系統設計中選用Analog Device公司生產(chǎn)的型號為ADXL345三軸重力加速度計,主要完成的功能有:輔助測速,因其不受地理位置和周?chē)ㄖ挠绊?,運用擴展的Kalman濾波算法,解決GPS在動(dòng)態(tài)環(huán)境中信號失鎖和周跳問(wèn)題,保證系統測速功能的實(shí)時(shí)性;對汽車(chē)行駛過(guò)程中的加速度檢測,通過(guò)檢測的數據判斷車(chē)輛是否行駛在安全的加速度閾值內。ADXL345是一款超低功耗,小巧纖薄的3軸加速計,可以對高達±16g的加速度進(jìn)行高分辨率(13位)測量,車(chē)載系統中應用了芯片上的I2C通信接口。
2.3 藍牙免提模塊設計
設計中采用了一款集成度較高的BC05MM-EXT藍牙模塊,其內核芯片是英國CSR公司的BC05 Bluecore芯片,執行標準Bluetooth 2.1+ED R,模塊內嵌的通信協(xié)議支持HS/HF、A2DP,可實(shí)現免提和高質(zhì)量的音頻播放功能,內置噪聲消除和回音處理電路。
該模塊的外圍電路主要包括通信電路、音頻輸出電路、MIC濾波電路、狀態(tài)指示電路、按鍵輸入電路。STM32通過(guò)串口與藍牙模塊相連,主要完成的任務(wù)是與帶藍牙功能的手機之間進(jìn)行通信;按照模塊支持的A2DP協(xié)議,音頻輸出電路調試階段采用的是100 mW的立體聲耳機放大器TS482,匹配32 Ω的揚聲器;MIC輸入電路主要是對音頻信號的濾波處理,采用了差分輸入設計提高抗干擾性能,保證免提的音頻效果;狀態(tài)指示和按鍵輸入部分由主控芯片外接發(fā)光二級管和獨立按鍵實(shí)現。
設計中應用結構簡(jiǎn)單的倒F天線(xiàn),可直接在PCB板上按照適用藍牙系統的倒F天線(xiàn)尺寸在適當的布板位置繪制天線(xiàn)。
2.4 GSM模塊設計
常用的GSM短信模塊有TC35,TC35I。因前者電壓范圍稍微大一些,考慮到GSM模塊對電源的敏感性,所以設計中選用的是西門(mén)子公司推出的無(wú)線(xiàn)通信GSM模塊(雙頻900/1 800 MHz)TC35,支持Text和PDU格式的SMS(Short Message Service,短消息),可通過(guò)AT命令或關(guān)斷信號實(shí)現重啟和故障恢復。
TC35外圍電路主要由電源電路、數據通信電路、IGT啟動(dòng)電路和SIM卡電路組成。在啟動(dòng)電路設計中實(shí)現可靠的啟動(dòng)脈沖十分關(guān)鍵,按照TC35的設計要求,上電后需要給模塊的IGT腳加一個(gè)延時(shí)大于100 ms的低電平脈沖,并且電平下降時(shí)間要小于1 ms,供電電壓大于3.3 V才能使TC35進(jìn)入工作狀態(tài),設計中通過(guò)STM32的I/O引腳推挽輸出方式實(shí)現TC35的啟動(dòng)。模塊對電源的穩定性要求非常高,在通信時(shí)網(wǎng)絡(luò )連接時(shí)的瞬間電流峰值可達2 A,尤其是在信號不良時(shí),這種情況在電源電路設計時(shí)增加了必要的電容濾波部分。通信接口為模塊的18腳RXD,19腳TXD與主控芯片USART3串口通信。
2.5 電源設計
汽車(chē)上電子設備較多,使得車(chē)內的電磁環(huán)境也較復雜,在這種環(huán)境中汽車(chē)電子產(chǎn)品電源性能的好壞直接影響到電子設備的可靠性。根據各模塊的供電需求,系統采用車(chē)內點(diǎn)煙器提供的12 V電源,經(jīng)LM2596為核心的開(kāi)關(guān)穩壓電源芯片為系統提供5 V和3.3 V的車(chē)載系統工作電壓,LM2596其輸入范圍可達40 V,輸出電流可達3 A,并且功耗小、效率高、具有很好的線(xiàn)性和負載特性,非常適合該應用系統。選用LM259 6-3.3將車(chē)內電源轉化成車(chē)載系統內主控芯片STM32、加速度傳感器和GPS使用的3.3 V電源;同時(shí)選用LM2596.5.0為GSM提供5 V工作電壓。LM2596—5.0應用電路如圖2所示,LM2596—3.3的應用電路和LM2596-5.0原理基本相同。本文引用地址:http://dyxdggzs.com/article/148038.htm
如圖2所示,電源電路設計考慮到應用環(huán)境,采取了相應的抗干擾和過(guò)流保護措施。為了防止電流過(guò)大,輸入端串接自恢復保險絲F1保護系統的安全性;D1,D2構成電源極性反接保護電路;C1,C2,C3電容并接電路去除車(chē)內電源信號的紋波和高頻噪聲;輸出端L1可以抑制紋波,使LM2596輸出穩定的電壓;電源輸出端對地連接的C4,C5旁路電容也起到穩定環(huán)路的作用。
3 系統的軟件設計
STM32開(kāi)發(fā)工具選用的是ARM公司4.22版的KeilMDK,采用μVision 4開(kāi)發(fā)環(huán)境,通過(guò)片上集成的JTAG調試接口通過(guò)JLINK V8仿真器與PC相連。
3.1 μC/OS-Ⅱ的簡(jiǎn)介與移植
為了便于系統的升級與維護,設計中采用了嵌入式實(shí)時(shí)操作系統μC/OS-Ⅱ。該操作系統具有執行效率高、占用空間小實(shí)時(shí)性能優(yōu)良和可擴展性強等特點(diǎn),最小內核可編譯至2 KB,非常適合FLASH容量較小的系統使用。
μC/OS-Ⅱ的文件體系結構如圖3所示。
由圖3中可以看出,μC/OS-Ⅱ的絕大部分是與處理器和其他硬件無(wú)關(guān)的代碼,大大降低了移植的工作量,移植過(guò)程中需要修改的源代碼文件有:
(1)在內核頭文件OS_CPU.H中設置與處理器和編譯器相關(guān)的代碼,針對具體處理器的字長(cháng)重新定義一系列數據類(lèi)型,聲明用于開(kāi)關(guān)中斷、堆棧的增長(cháng)方向和任務(wù)切換的宏。
(2)在OS_CPU_A.ASM中實(shí)現與處理器相關(guān)的函數,關(guān)中斷函數OS_CPU_SR_Save();恢復中斷函數OS_CPU_SR_Restore();啟動(dòng)最高優(yōu)先級任務(wù)運行OSStartHighRdy();任務(wù)切換OSCtxSw()和中斷切換OSIntCtxSw()。
(3)在OS_CPU_C.C中用C語(yǔ)言編寫(xiě)與CPU相關(guān)的函數。主要是任務(wù)堆棧初始化函數OSTaskStkInit()和系統HooK函數。
整個(gè)移植的代碼都在上面三個(gè)文件中,實(shí)際只要在啟動(dòng)文件中修改任務(wù)調度函數以及節拍函數的中斷入口就完成了操作系統的移植。
評論