基于STM32單片機(jī)的數(shù)據(jù)記錄裝置設(shè)計
本裝置采用SPI模式,與STM32的SPll口進(jìn)行連接通信。
SD卡的SPI通信接口使其可以通過SPI通道進(jìn)行數(shù)據(jù)讀寫。從應(yīng)用的角度來看,采用SPI接口的好處在于,sTM32內(nèi)部自帶SPI控制器,不僅給開發(fā)上帶來方便,同時也降低了開發(fā)成本。
SPI接口的選用是在上電初始時向其寫入第一個命令時進(jìn)行的。
3軟件設(shè)計
軟件調(diào)試采用KEIL公司RealView MDK4 12,它包括了ULVision4集成開發(fā)環(huán)境與ReilView編譯器,自動配置啟動代碼。集成Flash燒寫模塊,強(qiáng)大的Simulation設(shè)備模擬,性能分析等功能。系統(tǒng)軟件部分主要包括數(shù)據(jù)接收和數(shù)據(jù)存儲。數(shù)據(jù)接收部分用于與能量管理系統(tǒng)的通信,以CAN中斷接收的方式實(shí)現(xiàn)通信。在數(shù)據(jù)處理和存儲部分程序中,數(shù)據(jù)處理是對數(shù)據(jù)進(jìn)行處理轉(zhuǎn)換為常用的單位和格式,數(shù)據(jù)存儲部分負(fù)責(zé)將數(shù)據(jù)按一定結(jié)構(gòu)打包存儲。系統(tǒng)啟動之時,SD卡的初始化是非常重要的,只有進(jìn)行了正確的初始化,才能進(jìn)行后面的各項操作。在初始化過程中,SPI的時鐘不能太快,否則會造初始化失敗。在初始化成功后,應(yīng)盡量提高SPI的速率,在剛開始要先發(fā)送至少74個時鐘信號。
中斷接收流程圖如圖3所示。
數(shù)據(jù)存儲流程圖如圖4所示。
4結(jié)束語
本設(shè)計提出了一種基于STM32的數(shù)據(jù)存儲裝置的設(shè)計方案,成功實(shí)現(xiàn)了電動汽車電池相關(guān)數(shù)據(jù)的存儲,使用CAN通信保證了裝置應(yīng)用的廣泛性,用SD卡作為存儲介質(zhì),滿足了數(shù)據(jù)存儲容量以及速率上的要求,但同時仍有可以繼續(xù)改進(jìn)的地方,比如可以考慮增加_個USB口,使裝置可以直接接到電腦上查看,存儲和讀取都將更方便,但由于STM32的USB與CAN共用部分SRAM,需要將USB與CAN的運(yùn)行時間錯開。
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評論