娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年10月11日(星期五)

正在發(fā)生

2018年10月11日 | OK6410開發(fā)板裸板燒寫啟動說明

發(fā)布者:hzx312895379 來源: eefocus關鍵字:OK6410  裸板燒寫  啟動說明 手機看文章 掃描二維碼
隨時隨地手機看文章

       參考博文“OK6410啟動分析”可知S3C6410在nand flash啟動時硬件會自動將NANDflash中前8K的程序完整復制到S3C6410片內內存中(OK6410的nand flash一頁是4K),但是這前8K并不是連續(xù)的2頁內容,6410為了兼容2K頁的nand flash啟動時自動拷貝nand flash前4頁的內容到片內內存執(zhí)行,而且拷貝時只拷每頁中的前2KByte,面對這樣的拷貝方式,如果我們的裸機代碼小于2k則可以正常運行,但是如果編譯出來的.bin文件大于2K就要注意了,不能直接把邏輯代碼直接一股腦寫到nand flash當中,在我們前面的裸機實驗當中編譯出來的邏輯代碼都小于2K,上電啟動后可以直接在片內RAM中運行。

       像自己寫的bootloader源碼初始化硬件后直接把內核拷貝到SDRAM中,不像2440自己寫的bootloader那樣想拷貝自己到SDRAM中,跳過去運行以后再初始化內核參數拷貝內核到SDRAM中再啟動內核,編譯出來.bin文件很小。但是當邏輯程序大于2K怎么辦?解決辦法如下:

1、只燒寫前4頁的前2K,前4頁的后2K不用,處理方法有兩種:

①用燒寫命令多次燒寫,比如示例如下:

參考博文“百問網6410第1期Nand flash的問題”,編譯得到uart.bin文件(8.83 KB )后,從SD卡啟動,利用SD卡上的u-boot,將uart.bin 文件寫入nand flash中,操作步驟如下:

a. dnw 50008000                              //將uart.bin發(fā)送到內存地址50008000處

b. nand erase 0 100000                    //擦除nand flash 0地址開始的1M空間

c. nand write 50008000 0 1000        //將uart.bin 偏移為0開始的4k寫入第1頁nand flash

d. nand write 50008800 1000 1000  //將uart.bin 偏移為2k開始的4k寫入第2頁nand flash

e. nand write 50009000 2000 1000  //將uart.bin 偏移為4k開始的4k寫入第3頁nand flash

f. nand write 50009800 3000 1000   //將uart.bin 偏移為6k開始的4k寫入第4頁nand flash

g. nand write 5000A000 4000 FE000 

//將uart.bin 偏移為8k開始的剩余(1M - 8k)內容寫入nand flash 第5頁開始之后的空間

這樣nand flash前4頁的每頁前2k便保存了uart.bin文件的前8k內容。

②用"mlc_boot_tool"工具處理一下BIN文件:

以"Ok6410_mlc_demo"目錄下的"16th_nand_all"為例子

    a. cd Ok6410_mlc_demo

    b. make clean

    c. make                                             // 得到 uart.bin ,發(fā)現(xiàn)他大于2K,所以需要處理

    d. ./mlc_boot_tool uart.bin wy.bin  // 重新生成的 wy.bin 就這最用下載到開發(fā)板上面的bin文件

注意:

    為什么需要"mlc_boot_tool"工具呢?請結合源碼和6410的啟動流程自行分析。

a、S3C6410 nand啟動,會自動拷貝前8K數據到SRAM中,但是我們的MLC nand每頁大小為4K的,而6410的CPU硬件決定了在它自動拷貝的時候每頁只能拷貝2K。即NAND啟動時,nand的前4頁中,每頁中的前2K數據才是有用的。

b、所以我們的工具就是把bin文件前面連續(xù)的8K數據拆出來放到MLC NAND的前4頁里去。即:BIN文件中的第1個2K數據放在NAND的第1頁,第2個2K數據放在第2頁,第3個2K數據放在第3頁,第4個2K數據放在第4頁。 因為MLC NAND頁大小為4K,所以前面4頁只有一半的空間被用到了。從第5頁開始,每頁的4K空間都被用到了。

c、mlc_boot_tool工具就是把bin文件做成:(2k有用數據+2k無用數據) x 4 + 剩余數據

2、代碼重定位的時候自動判斷,前4頁中只拷貝2K,其他頁正常拷貝:

參考博文“百問網6410第1期Nand flash的問題”修改nand_read函數,如果是前4頁,則只讀取每頁的前2k內容;如果是前4頁之后,則讀取每頁的全部內容。

3、按照博文“燒寫OK6410裸板方法匯總”來燒寫nand flash即可。

====================================================================

番外篇:

1、6410 NAND問題

答:對于OK6410,需要處理一下BIN文件。我們發(fā)布的源碼里有這一段話:

(2).處理bin文件

        以"Ok6410_mlc_demo"目錄下的"16th_nand_all"為例子

        a. cd Ok6410_mlc_demo

        b. make clean

        c. make                                                   // 得到 uart.bin ,發(fā)現(xiàn)他大于2K,所以需要處理

        d. ./mlc_boot_tool uart.bin wy.bin        // 重新生成的 wy.bin 就這最用下載到開發(fā)板上面的bin文件

        注意:

        為什么需要"mlc_boot_tool"工具呢?請結合源碼和6410的啟動流程自行分析。

①. S3C6410 nand啟動,會自動拷貝前8K數據到SRAM中,但是我們的MLC nand每頁大小為4K的,而6410的

    CPU硬件決定了在它自動拷貝的時候每頁只能拷貝2K。即NAND啟動時,nand的前4頁中,每頁中的前2K數

    據才是有用的。

②. 所以我們的工具就是把bin文件前面連續(xù)的8K數據拆出來放到MLC NAND的前4頁里去。即:BIN文件中的第

    1個2K數據放在NAND的第1頁,第2個2K數據放在第2頁,第3個2K數據放在第3頁,第4個2K數據放在第4

    頁。因為MLC NAND頁大小為4K,所以前面4頁只有一半的空間被用到了。從第5頁開始,每頁的4K空間都被

    用到了。

③. mlc_boot_tool工具就是把bin文件做成:(2k有用數據+2k無用數據) x 4 + 剩余數據

2、我這最近在玩GSM模塊,需要用到uart; 我發(fā)現(xiàn)在終端中,開發(fā)板自己本身用的是s3c2410_serial0, 我想知道是如何來確定引腳引腳與設備文件的關系?在/dev下,還有很多tty設備文件,這些是具體怎么關聯(lián)到引腳上的?

答:/dev/tty1,2...等都是虛擬的設備,不用管它。

你只需要管/dev/s3c2410_serial0,1,2;在驅動程序里,它會操作的UART的對應寄存器,設置對應的引腳

 

3、 dm9k問題這里dm9000的操作有個地方不大明白?

static void dm9000_reset(board_info_t * db)

{

        // RESET device

        writeb(DM9000_NCR, db->io_addr);

        udelay(200);

        writeb(NCR_RST, db->io_data);

        udelay(200);

}

reset操作就是往下面寄存器寫NCR_RST,可是上面函數中db->io_addr代表S3C2410_CS4

而db->io_data代表S3C2410_CS4 + 4,可是這兩個東西到底代表什么呢?寄存器?

重點:OK6410開發(fā)板裸板燒寫啟動說明

答:對于DM9000,要把數據B寫入地址A,是這樣操作的:

先把A作為數值發(fā)給io_addr;再把B作為數值發(fā)給io_data。io_addr和io_data的差別在于地址線BIT2,對應DM9000的CMD引腳。


關鍵字:OK6410  裸板燒寫  啟動說明 引用地址:OK6410開發(fā)板裸板燒寫啟動說明

上一篇:OK6410-實驗指令筆記
下一篇:OK6410默認u-boot啟動參數

推薦閱讀

? ?集微網10月11日報道,今日,榮耀在京舉行發(fā)布會,發(fā)布1099元的智能手機新品榮耀暢玩8C。高續(xù)航、大運存、精致工藝設計成為榮耀暢玩8C的主打亮點,也為這款千元機帶來不俗競爭力。榮耀暢玩C系列,主打千元價位機型,目前已經累計超過4000萬用戶,并保持著良好的市場反饋和口碑,目前在京東好評99%,天貓好評4.8。暢玩C系列是榮耀手機銷量上的先鋒,二...
現(xiàn)在PCIe 3.0通道的M.2 SSD將讀寫速度提升到3000M/S,你以為這就是SSD的上限嗎?紫光SSD再一次刷新你對速度的認知,下面這張圖是最新曝光的紫光SSD工程樣品,容量為1TB。可以看出是M.2接口的SSD,用的是群聯(lián)主控芯片,其他細節(jié)不得而知。可以看到在AS SSD Benchmark中,這款紫光SSD讀取速度為超過了4000M/S,寫入速度超過了3700M/S。在CrystalDiskMark...
據外媒報道,蘋果計劃在10月31日將iPhone 5C、MacBook 15英寸2014年款列入過時和停產產品清單(vintage and obsolete products)。  蘋果的過時產品名單都是已上市5-7年的產品,更長時間的則轉入停產名單。  在過去,成為過時產品,就意味著蘋果不再提供任何維修服務,但是從2018年開始,蘋果延長了特定過時產品的維修服務期限。  今...
疑似小米 CC11 Pro 通過工信部認證。該機型號為“2109119BC”,配有 6.55 英寸的 OLED 屏幕,分辨率為 3840*2160。在工信部網站還顯示該機配備 4400mAh 容量的電池,以及主頻為 2.4GHz 的八核芯片組,共有 6GB/8GB/12GB/16GB RAM 和 64GB/128GB/256GB/512GB 內置存儲。  該手機將有紅色、橙色、黃色、綠色、青色、藍色、紫色、...

史海拾趣

小廣播
設計資源 培訓 開發(fā)板 精華推薦

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 吉水县| 茌平县| 都昌县| 门头沟区| 卫辉市| 牟定县| 福建省| 大新县| 杂多县| 伊川县| 新化县| 普格县| 香格里拉县| 启东市| 涟水县| 岳阳县| 耒阳市| 桂阳县| 益阳市| 五大连池市| 巩义市| 宾阳县| 耒阳市| 慈溪市| 尖扎县| 马关县| 弥勒县| 德安县| 屏东市| 碌曲县| 江西省| 东安县| 本溪市| 镇安县| 蒙山县| 喀喇沁旗| 沿河| 田东县| 岢岚县| 贵州省| 武平县|