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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于MPC8349控制計(jì)算機(jī)的U-Boot移植

          基于MPC8349控制計(jì)算機(jī)的U-Boot移植

          作者: 時(shí)間:2010-05-06 來源:網(wǎng)絡(luò) 收藏
          2.6.13.4 和U-boot-1.1.3。
          C. U- 交叉編譯的結(jié)果
          首先,我們需要添加交叉編譯器(powerpc-Linux-)到u-boot/Makefile 中。在開發(fā)主機(jī)上,編譯器存在的路徑為/embedded/mpc_85xx/bin/powerpc-Linux。在添加、修改完Makefile 后,我們就需要進(jìn)行U-boot 的交叉編譯了。應(yīng)該輸入以下命令:
          # make distclean
          # make _config
          # make
          如果編譯成功,會(huì)出現(xiàn)以下三個(gè)應(yīng)用文件。
          “u-boot/u-boot.bin” : raw binary image
          “u-boot/u-boot “ : ELF binary image
          “u-boot/u-boot.srec“ : Motorola S-Record image
          5 安裝 U-
          在把交叉編譯好的U- 文件安裝到系統(tǒng)板上時(shí),我們可以針對(duì)不同情況進(jìn)行安裝。如果系統(tǒng)板上以前沒有U-Boot 型,我們可以使用的CodeWarrior 把U-Boot 燒錄到系統(tǒng)板中。如果系統(tǒng)板已存在可以運(yùn)行的U-Boot,我們可以利用U-Boot 可以直接下載新制作的U-Boot文件,從而實(shí)現(xiàn)U-Boot 的更新。
          當(dāng)使用U - Boot 在更新U-Boot 時(shí),我們首先需要在U-Boot 的環(huán)境變量中設(shè)置各種參數(shù)。這些參數(shù)包括啟動(dòng)頻率、系統(tǒng)板的ip 和TFTP 服務(wù)器的ip。為了查看U-Boot 的環(huán)境變量的設(shè)置情況,我們可以利用printenv 命令 ,從而確保所有的環(huán)境變量設(shè)置是否正確。然后,我們應(yīng)該插入以太網(wǎng)電纜向TSEC1 端口。然后,我們應(yīng)該按照下面的步驟。
          (1) 通過TFTP 下載u-boot.bin 文件到系統(tǒng)板中的 RAM。需要用的命令是“tftp 1000000u-boot.bin”。
          (2) 我們需要把u-boot.bin 文件拷貝到Flash 中。這里,我們需要取消Flash 的寫保護(hù)。需要用到的命令是 “protect off fff80000 ffffffff”。
          (3) 擦出Flash 上的數(shù)據(jù)。需要用到的命令是 “erase fff80000 ffffffff”。
          (4) 把u-boot.bin 文件拷貝到Flash 中。需要用到的命令是 “cp.b 1000000 fff80000 80000”。至此,最新的U-Boot 已被安裝到了 控制系統(tǒng)板上。
          6 U-Boot 的使用
          A 信息查看命令
          Bdinfo:將在終端顯示諸如內(nèi)存地址和大小、時(shí)鐘頻率、MAC 地址等信息。這些信息在傳遞給Linux 內(nèi)核一些參數(shù)時(shí)會(huì)用到。
          Coninfo:顯示控制臺(tái)設(shè)備和信息。
          Flinfo: 打印全部Flash 組的信息。
          Iminfo:打印程序映像的開頭信息,包含了映像內(nèi)容的校驗(yàn)(序列號(hào)、頭和校驗(yàn)和)。
          Help:help 命令還能夠查看每個(gè)命令的參數(shù)說明。
          B. 內(nèi)存管理命令
          Base:顯示或者設(shè)置一個(gè)“基地址”作為所有存儲(chǔ)類命令的地址偏移值。
          crc32:可以計(jì)算存儲(chǔ)數(shù)據(jù)的校驗(yàn)和。
          cmp:比較兩塊內(nèi)存中的內(nèi)容。
          cp:可以在內(nèi)存中復(fù)制數(shù)據(jù)塊,包括對(duì)Flash 的讀寫操作memory copy。
          md:顯示內(nèi)存區(qū)的內(nèi)容。
          mm:修改內(nèi)存,地址自動(dòng)遞增。
          mtest:提供一個(gè)簡單地存儲(chǔ)器測試。
          mw:可以按照字節(jié)、字、長字寫內(nèi)存。
          nm:可以修改內(nèi)存,可以按照字節(jié)、字、長字操作。
          loop:非常快速地讀某個(gè)存儲(chǔ)范圍。因?yàn)檫@個(gè)命令力圖最快速地讀取存儲(chǔ)單元,所以被用作一種特殊的存儲(chǔ)器測試。
          C. Flash 控制命令
          cp:可以在內(nèi)存中復(fù)制數(shù)據(jù)塊,包括對(duì)Flash 的讀寫操作。
          flinfo: 打印全部Flash 組的信息,也可以只打印其中某個(gè)組。一般嵌入式系統(tǒng)的Flash 只有一個(gè)組;
          erase:可以擦Flash。
          protect:對(duì)Flash 寫保護(hù)的操作,可以使能和解除寫保護(hù)。
          D. 執(zhí)行控制命令
          autoscr:autoscr 命令,可以在U-BOOT 中運(yùn)行“腳本”。
          bootm:引導(dǎo)啟動(dòng)存儲(chǔ)在內(nèi)存(RAM 和可以永久保存的Flash)中的程序映像。
          go:可以執(zhí)行應(yīng)用程序。
          E. 下載命令
          bootp:通過bootp 請(qǐng)求,要求DHCP 服務(wù)器分配IP 地址,然后通過TFTP 協(xié)議下載指定的文件到內(nèi)存。
          loadb:可以通過串口線下載二進(jìn)制格式文件。
          loads:可以通過串口線下載S-Record 格式文件。
          rarpboot :可以使用TFTP 協(xié)議通過網(wǎng)絡(luò)啟動(dòng)映像。也就是把指定的文件下載到指定地址,然后執(zhí)行。
          tftpboot : 可以使用TFTP 協(xié)議通過網(wǎng)絡(luò)下載文件。按照二進(jìn)制文件格式下載。
          F. 環(huán)境變量命令
          printenv :打印環(huán)境變量。
          saveenv :保存變量。
          setenv :可以設(shè)置環(huán)境變量。
          run :可以執(zhí)行環(huán)境變量中的命令,后面參數(shù)可以跟幾個(gè)環(huán)境變量名。
          bootd :運(yùn)行 “bootcmd”的配置。
          G.特殊命令
          i2c:I2C 底層文件系統(tǒng)。
          ide:IDE 底層文件系統(tǒng) 。
          diskboot :從IDE 上啟動(dòng)。
          H. 其他的命令
          date:時(shí)鐘設(shè)置與讀取命令。
          echo:回顯參數(shù)。
          reset:執(zhí)行CPU 的復(fù)位。
          sleep:可以延遲N 秒鐘執(zhí)行,N 為十進(jìn)制數(shù)。
          version:print monitor version。
          ? :得到所有命令列表。
          baudrate :定義串口控制臺(tái)的波特率。
          bootargs :定義傳遞給Linux 內(nèi)核的命令行參。
          bootcmd :保留的環(huán)境變量,也是一種腳本。如果定義了該變量,在autoboot 模式下,將會(huì)執(zhí)行該腳本的內(nèi)容。
          bootdelay : 定義執(zhí)行自動(dòng)啟動(dòng)的等候秒數(shù)。
          bootfile :定義缺省的下載文件。
          ethaddr :定義以太網(wǎng)接口0 的MAC 地址。
          eth1addr:定義以太網(wǎng)接口1 的MAC 地址。
          eth2addr :定義以太網(wǎng)接口2 的MAC 地址。
          filesize : 定義通過TFTP 下載文件的大小。
          gatewayip: 定義IP 地址的網(wǎng)關(guān)。
          ipaddr :定義本地的IP 地址。
          loadaddr : 定義通過TFTP 下載的默認(rèn)地址 。
          netmask :定義以太網(wǎng)接口的掩碼。
          serverip : 定義tftp 服務(wù)器端的IP 地址
          7 結(jié)論
          研究表明,在移植后U-Boot 可以運(yùn)行安全、穩(wěn)定地運(yùn)行在 控制系統(tǒng)上面。然后,在U-Boot 可以用來初始化,測試的硬件或下載和運(yùn)行程序代碼。U-Boot 在以后給系統(tǒng)加載Linux 操作系統(tǒng)和應(yīng)用程序,都表現(xiàn)出很好的穩(wěn)定性,高效性。總之,在U-Boot-1.1.3 作為最新版本的U-Boot,具有很強(qiáng)的功能,我們把其移植到MPC8349 控制系統(tǒng)上面,從而使該嵌入式系統(tǒng)順利啟動(dòng)、穩(wěn)定運(yùn)行、便于開發(fā)。鑒于這些情況,MPC8349控制計(jì)算機(jī)系統(tǒng)的應(yīng)用領(lǐng)域?qū)?huì)十分的廣泛。
          本文作者創(chuàng)新點(diǎn):本文詳細(xì)介紹了向MPC8349 控制計(jì)算機(jī)移植U-Boot 的方案。MPC8349控制計(jì)算機(jī)以其優(yōu)越的網(wǎng)絡(luò)功能,在很多領(lǐng)域有著廣泛的應(yīng)用。本方案把最新版本的U-Boot成功移植到硬件系統(tǒng)中,可以是MPC 控制計(jì)算機(jī)在嵌入式領(lǐng)域的開發(fā)更加便捷。

          本文引用地址:http://www.ex-cimer.com/article/202543.htm

          上一頁 1 2 下一頁

          關(guān)鍵詞: 8349 Boot MPC 計(jì)算機(jī)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(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); })();