新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > STM32F103VB的SD卡在應(yīng)用編程設(shè)計

STM32F103VB的SD卡在應(yīng)用編程設(shè)計

作者: 時間:2012-02-21 來源:網(wǎng)絡(luò) 收藏

作為主設(shè)備,卡作為從設(shè)備,使用片內(nèi)集成SPI1接口與卡相連。端口PE3與卡片選引腳CS相連,作為其片選控制端口;SPI1_SCK為主設(shè)備時鐘輸出引腳,接至SD卡時鐘輸入引腳CLK;PSI1_MOSI為主設(shè)備數(shù)據(jù)輸出端口,與SD卡數(shù)據(jù)輸入端口DI相連;同理,將SD卡數(shù)據(jù)輸出端口DO與主設(shè)備數(shù)據(jù)輸入端口SPI1_MISO相連。利用片上通用同步/異步收發(fā)器USART1經(jīng)過MAX3232收發(fā)器芯片與上位機串口相連,串口通信電路原理圖如圖2所示。將端口PB9配置成輸入浮空模式并外接一個用戶按鍵,作為觸發(fā)IAP操作啟動的判斷條件,按鍵電路如圖3所示。

本文引用地址:http://m.butianyuan.cn/article/149588.htm

c.jpg



3 軟件
3.1 IAP功能實現(xiàn)
(IAP)允許用戶在程序運行過程中對Flash進行重新。整個過程主要是由IAP驅(qū)動程序來完成,它的主要工作流程是:首先在SD卡中定位用于更新固件的二進制文件,然后將該文件讀出并寫入用戶程序所在的Flash區(qū)域,最后跳轉(zhuǎn)到更新后的應(yīng)用程序入口執(zhí)行系統(tǒng)應(yīng)用程序。因此用戶程序存儲區(qū)應(yīng)該分為兩個部分,其中一個部分存儲IAP驅(qū)動程序,只用于IAP功能的執(zhí)行,通過ICP方式由JTAG或者SWD接口燒寫入Flash;另一部分存儲真正的應(yīng)用程序,用來執(zhí)行用戶真正需要的功能。兩個部分在Flash存儲區(qū)域中相互獨立,不能存在重疊的部分,系統(tǒng)上電或者復(fù)位后首先執(zhí)行第一部分代碼,實現(xiàn)對第二部分代碼的更新操作,在不需要更新系統(tǒng)固件的情況下直接由第一部分跳轉(zhuǎn)到第二部分代碼入口處執(zhí)行用戶應(yīng)用程序。
將存有更新程序的SD卡插入卡槽,系統(tǒng)重新上電或復(fù)位后通過指定按鍵選擇是否進行IAP操作,IAP操作流程如圖4所示。

d.jpg

分頻器相關(guān)文章:分頻器原理


評論


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

關(guān)閉