<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 在基于ADSP BF533的嵌入式Linux系統(tǒng)上的移植

          在基于ADSP BF533的嵌入式Linux系統(tǒng)上的移植

          作者: 時(shí)間:2012-04-26 來(lái)源:網(wǎng)絡(luò) 收藏

          (3)與頭文件相關(guān)的代碼:在include/configs創(chuàng)建mybf533.h,參考include/configs/stamp.h,如下:



          Flash的修改與具體型號(hào)和容量有關(guān),修改過(guò)程中參考Flash擦除數(shù)據(jù)命令、特定寄存器的寫(xiě)入地址以及扇區(qū)的大小和位置。

          與SDRAM相關(guān)設(shè)置:




          注意:最后一行要用Tab鍵開(kāi)頭表示命令。其中blackfin表示CPU的種類(lèi).bf533是cpu bf533對(duì)應(yīng)的代碼目錄,mybf533是目標(biāo)板對(duì)應(yīng)的目錄。這樣可使用make mybf533_config配置自身的開(kāi)發(fā)板。

          其他修改視情況而定。如根據(jù)SDRAM大小修改cplb表,根據(jù)需要修改堆棧大小。如drivers/cfi_flash.c中flash_init()函數(shù),cpu/bf533/ints.c中init_IRQ()函數(shù)等。

          修改完畢后就可以采用如以下命令編譯:bash$>make clean,bash$>make mrproper,bash$>make mybf533_config,bash$>make。

          編譯完后_1.1.3生成的二進(jìn)制文件U-Boot.bin(U-Boot.bin只能用于更新)。執(zhí)行 bash$>bfin-uclinux-objcopy-I binary-Oihex U-Boot.bin,生成可在Windows下首次燒寫(xiě)到Flash的十六進(jìn)制文件U-Boot.hex。

          4.2 U-Boot的燒寫(xiě)

          第一次下載U-Boot到目標(biāo)板或者當(dāng)U-Boot不能正常啟動(dòng)時(shí)。必須通過(guò)JTAG或者ADI ICE將U-Boot下載到目標(biāo)板。在此可將ADI公司的仿真器與Visual DSP++環(huán)境相連,通過(guò)Visual DSP++,在TOOLS-->Flash Programmer下執(zhí)行Flash驅(qū)動(dòng)程序M25P64.dxe,選擇"Erase all"-->Load Flie燒寫(xiě)U-Boot.hex文件到Flash中。

          移植成功后,打開(kāi)終端minicom復(fù)位開(kāi)發(fā)板,若串口能輸出正確的啟動(dòng)信息.則表明移植基本成功。啟動(dòng)后,如果在設(shè)定的時(shí)間內(nèi),串口沒(méi)有接收到按鍵。U-Boot將自動(dòng)加載操作系統(tǒng)內(nèi)核和文件系統(tǒng)。若設(shè)定時(shí)間內(nèi)串口接收到按鍵,則U-Boot停止自動(dòng)加載,進(jìn)入命令行,可看到U-Boot的提示符"mybf533>",查看Flash信息,調(diào)試或手動(dòng)加載內(nèi)核。

          生成新的U-Boot.bin文件后??赏ㄟ^(guò)Ethernet或者串口更新U-Boot。因?yàn)榫W(wǎng)絡(luò)的傳輸速度遠(yuǎn)比串口快,故一般選擇網(wǎng)絡(luò)傳輸。將新生成的U-Boot.bin拷貝到宿主機(jī)根目錄下的tftpboot目錄(前提是已經(jīng)創(chuàng)建tftp sever),在目標(biāo)板出現(xiàn)U-Boot提示符后。按任意鍵進(jìn)入下載模式:
          mybf533>tftp 0x1000000 U-Boot.bin

          0x1000000為SDRAM默認(rèn)的下載地址空間,用于U-Boot的升級(jí)、調(diào)試。當(dāng)需要升級(jí)或者修改U-Boot,可將新的U-Boot從 SDRAM燒寫(xiě)到。Flash,覆蓋原來(lái)的U-Boot,以減少燒寫(xiě)Flash的次數(shù)。在燒寫(xiě)以前最好測(cè)試一下所下載的U-Boot能否正常運(yùn)行:

          如果不正確,應(yīng)重復(fù)執(zhí)行Erase all和Copy命令,直到正確為止。至此,U-Boot移植的步驟已基本完成。

          5 結(jié)束語(yǔ)

          U-Boot是一個(gè)功能強(qiáng)大的Boot loader。前期移植工作是嵌入式系統(tǒng)開(kāi)發(fā)的首要環(huán)節(jié)。但其移植不可避免的存在一些難以預(yù)料的問(wèn)題。嵌入式開(kāi)發(fā)人員應(yīng)該在了解U-Boot的工作機(jī)理、移植條件后,根據(jù)目標(biāo)板和具體情況靈活裁減U-Boot以提高操作系統(tǒng)移植的穩(wěn)定性,縮短移植周期,降低產(chǎn)品成本。

          本文結(jié)合U-Boot的運(yùn)行機(jī)理以及U-Boot移植的基本要求,研究了U-Boot在基于的嵌入式系統(tǒng)上的移植。本文的移植是在不改變 U-Boot框架前提下,對(duì)嵌入式目標(biāo)板和CPU相關(guān)代碼進(jìn)行修改,實(shí)現(xiàn)了成功移植且移植后的U-Boot能夠在目標(biāo)板上穩(wěn)定運(yùn)行,為后續(xù)開(kāi)發(fā)奠定了良好的基礎(chǔ)。


          上一頁(yè) 1 2 3 下一頁(yè)

          關(guān)鍵詞: U-Boot BF533 Linux系統(tǒng)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();