摘要:1.2設計思想圖1顯示了本文中所使用的SD卡FAT文件系統通過MC9S12XSl28MAA進行解析的軟硬件結構體系。編譯鏈接軟件使用CodeWarrior5.O,硬件采用MC9S12XSl28MAA單片機與Kingston公司的MicroSD卡。代碼由4部分組成:用戶應用部分(由用戶編寫控制,本文使用MC9S12XS128MAASCI串口模塊進行信息調試),FAT文件系統讀取解析部分
圖1顯示了本文中所使用的SD卡FAT文件系統通過MC9S12XSl28MAA進行解析的軟硬件結構體系。編譯鏈接軟件使用CodeWarrior 5.O,硬件采用MC9S12XSl28MAA單片機與Kingston公司的Micro SD卡。代碼由4部分組成:用戶應用部分(由用戶編寫控制,本文使用MC9S12XS128MAA SCI串口模塊進行信息調試),FAT文件系統讀取解析部分,硬件控制部分(通過單片機SPI模塊與SD卡連接),以及單片機CPU的初始化部分。其中,SPI模塊與SD卡連接的硬件控制部分,以及FAT文件系統的讀取解析部分是本文的重點。

其中,Sd_SPI.h是關于SD卡讀取寫入部分的一些宏定義、常量和函數的聲明;Sd_SPI.c包括了通過SPI模塊讀寫SD卡的代碼;Fat.h是關于Fat文件系統解析的全局變量、宏定義以及函數聲明;Fat.c包括了Fat文件系統解析的代碼;SimpleFat.c是簡易讀取Fat文件系統信息的代碼;SimpleFat.h是其全局變量以及函數的聲明。
2 硬件設計
SD卡有2種操作模式:SD卡模式、SPI模式。SD卡模式允許通過4線高速總線傳輸,但由于大部分單片機無此接口模塊,故選擇SPI模式。HCSl2X系列單片機內部都帶有此同步串行外部設備接口(Serial Peripheral Interface,SPI)。單片機可以通過SPI系統組成一個通信速率比SCI高的同步網絡,故使用SPI模式可以把外設減少到最低。SPI模式相對于SD卡模式的缺點是損失了傳輸速度;但是目前的微處理器的處理速度越來越高,利用SPI模式大都能滿足工程需要。
HCSl2X單片機的全雙工8位SPI模塊有4個引腳,分別為主入從出引腳MISO、主入從出引腳MOSI、串行時鐘引腳SCK以及從機片選引腳SS。當CS信號線為低電平時,主機開始所有的總線傳輸。數據從單片機的MOSI引腳同步輸入Micro SD卡的DA引腳,Micro SD卡返回數據由DO線同步輸入單片機的MISO引腳,數據在CLK信號的上升沿同步輸入和輸出。
3 軟件設計
3.1 HCSl2X總線時鐘超頻
MC9S12XSl28MAA默認總線時鐘默認同外接晶振相關,但可以通過配置PLL鎖相環實現單片機總線超頻,從而加快SD卡讀取速率。實驗中可通過下列代碼將單片機總線頻率超頻到80MHz:

通信工程師備考資料免費領取
去領取
專注在線職業教育25年