新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 通信領域采用FPGA芯片嵌入式系統分析方案

        通信領域采用FPGA芯片嵌入式系統分析方案

        作者: 時間:2012-07-02 來源:網絡 收藏

        2.5 配置文件的讀取和發送

        根據上述SD卡存儲格式的說明,可以對存儲在其中的配置數據進行讀取并發送出去。在本中,數據的讀取和發送是同時進行的。

        在對SD卡進行讀取時,首先需要讀取主引導記錄(MBR),獲得邏輯扇區的位置,然后根據該位置讀取BIOS參數數據塊(BPB),得到文件分配表(FAT)的位置以及扇區大 小等參數。在讀取文件分配表之前,需要先讀取根文件夾來獲得文件的起始位置,然后再 通過文件分配表獲得后續數據的位置。

        得到文件的起始簇號之后,在文件分配表中讀取對應該起始簇的字節,獲得文件存儲的下一個簇的簇號,這樣可以連續的進行讀取。在讀取一個簇后,即將整簇的數據發送出去。如果發現文件分配表中某一簇對應的數值是0xFFFF,則說明是文件最后一個簇,這時該簇的數據可以不足一個整簇,需要對其中的數據進行取舍,以保證發送數據的正確性。

        對配置文件讀取和發送的函數偽碼如下所示。

        ReadSD_FAT16(){

        讀取物理第0 扇區內容,即MBR,獲取邏輯0 扇區的位置;

        讀取邏輯0 扇區的內容,獲取每扇區字節數,每簇扇區數,FAT 表占據的扇區數等參數;

        讀取根文件夾的內容,根據配置文件的文件名獲取其起始簇號和文件長度;

        將當前簇設置為起始簇;

        While(1){

        讀取FAT 中對應當前簇的內容,獲得下一個簇的簇號;

        FAT 表中對應當前簇的內容為0xFFFF 時,即說明當前簇是最后一個簇,計算該簇內的有效數據,并進行發送;

        讀取當前簇內容,進行發送;

        當前簇指向下一個簇;

        3 結束語

        在當前使用領域日趨廣泛的情況下,對現有的液晶拼接屏幕含有產品進行升級更新成為了一項比較繁瑣的工作,特別是在產品數量較多的情況下。本提出了采用SD卡存儲配置數據的配置,使用了目前系統中常見的ARM 微處理器和SD卡,不僅降低了成本,而且利用了現有資源,節省了電路板布線布局的空間。最重要的是使升級 過程更加簡潔,在進行調試時也可以靈活使用。本文只給出了對Virtex 進行配置的情況,該方案也可以適用于液晶拼接屏幕Spartan 系列FPGA。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 建昌县| 张北县| 宣城市| 吉首市| 永丰县| 阿克苏市| 建湖县| 常德市| 舟山市| 建始县| 菏泽市| 丰都县| 阿坝县| 永修县| 阳江市| 赤壁市| 日照市| 五河县| 南皮县| 甘孜| 大荔县| 桂林市| 三门县| 花莲县| 临洮县| 金寨县| 青岛市| 萨嘎县| 贵南县| 神农架林区| 鄂尔多斯市| 库车县| 龙岩市| 赫章县| 盖州市| 恩施市| 乌什县| 富锦市| 繁昌县| 商丘市| 九寨沟县|