LPC1788的外部存儲控制器(Emc),可以對動(dòng)態(tài)存儲器和靜態(tài)存儲器的支持,可以接SDRAN、NAND_FLASH、NOR_FLASH等多種存儲器!有了這些存儲器的支持,就有更大的空間存儲我們的代碼和數據,把Uboot移植到開(kāi)發(fā)板上,有了這個(gè)強大的程序支持,就可以在上面跑UCLinux操作系統,還可以吧程序放到NAND_FLASH里面運行。好處是大大的有!好了廢話(huà)不多說(shuō)咱們開(kāi)始。 首先要做的是安裝Linux系統,我裝了個(gè)虛擬機里面跑的是CentOS。具體如果安裝就不多說(shuō)了網(wǎng)上有很多的教程。這里說(shuō)交叉編譯器的安裝,我用的是4.5.1的版本,這個(gè)東西是開(kāi)發(fā)ARM過(guò)程中最重要的東西了。具體安裝步驟如下。 在根目錄下創(chuàng )建“/disk/m3”的路徑,將交叉編譯器放到這個(gè)路徑。以后的開(kāi)發(fā)就在這個(gè)路徑里進(jìn)行,F在用“tar”命令解壓編譯器,如上圖。這個(gè)是我自己的習慣。 解壓完后將WB_ARM拷貝到“/opt/”路徑下,如上圖。 編譯器就在“/opt/WB_ARM/toolschain/4.5.1/bin/”路徑下。用“l(fā)s”命令可以查看到如上圖。 用vim編輯器,把交叉編譯器的路徑添加到家目錄下的“.bash_profile”文件中。使用vim的方法如上圖。 上圖就是將路徑添加后的結果,注意不要寫(xiě)錯了。完成后保存退出。然后注銷(xiāo)CentOS,按鍵盤(pán)上的“Ctrl+Alt+字符刪除鍵(←)”,就可以注銷(xiāo)。 注銷(xiāo)完成后在終端里輸入arm-然后按鍵盤(pán)上的“Tab”鍵兩次,就會(huì )出現如上圖的交叉編譯器。 接下來(lái)就可以編譯uboot。 將uboot拷貝到我們創(chuàng )建的路徑下并解壓,因為這個(gè)源碼包是zip包,不是tar包,所以不能用tar命令解壓,要用unzip命令解壓。如上圖。 解壓后進(jìn)入,里面就是uboot的源碼文件。 在“board/nxp/”路徑下就有1788的開(kāi)發(fā)板如上圖,但是這個(gè)開(kāi)發(fā)不是我們自己的開(kāi)發(fā)板,不過(guò)有1788的就好。查看了官方的ea-lpc1788的電路圖,用的是串口0,旺寶的1788開(kāi)發(fā)板也是用的串口0,按道理說(shuō),編譯后下載到板子串口0會(huì )有信息輸出。接下來(lái)就編譯試試看。 在uboot的頂層目錄,先用make clean清除一下,再用make ea-lpc1788_config將uboot配置成1788的uboot,最好make編譯,如上圖。 不編不知道一編嚇一跳,還有錯誤,這可如何是好!他說(shuō),找不到‘raise’這個(gè)符號,思來(lái)想去,符號應該就是一個(gè)函數,是不是那個(gè)地方定義了后,沒(méi)有寫(xiě)這個(gè)函數,結果我搜索了一遍什么都沒(méi)有啊,那感覺(jué)就像在孫悟空身上拔了一根毫毛,興奮的一吹什么都沒(méi)有啊。最后想了想,居然沒(méi)有這個(gè)符號,那我就給它一個(gè)這樣的符號。 找了一個(gè)命令的路徑,用vim打開(kāi)里面有一個(gè)main.c如上圖。 在里面添加了一個(gè)raise的函數保存退出,如上圖。 繼續編譯。 奇跡出現了,呵呵!出來(lái)了一個(gè)u-boot.bin這個(gè)就是我們要用到的。如上圖。 把u-boot.bin下載到lpc1788的0地址處,連接開(kāi)發(fā)板的USB轉串口到電腦。打開(kāi)centos的minicom。打開(kāi)前先將USB轉串口轉接到虛擬機的centos里,將minicom設置為/dev/ttyUSB0,8位數據位,沒(méi)有校驗位,一位停止位。具體設置的詳細過(guò)程網(wǎng)上有很多。連接后復位開(kāi)發(fā)板,就會(huì )有信息打印出來(lái),這說(shuō)明我們的uboot成功的運行起來(lái)了,由于旺寶的lpc1788開(kāi)發(fā)板和官方的不一樣,所以NAND就出現問(wèn)題了!如上圖。 現在在uboot里面輸入help就會(huì )顯示出uboot的命令,到了這一步感覺(jué)很是高興!不過(guò)要成功引導加載UCLinux還有很長(cháng)的一段路要走!這次先寫(xiě)到這里吧!希望能夠堅持到那一步。帖子會(huì )不定期的更新,并加上源代碼!希望大家多多支持,給我前進(jìn)的動(dòng)力! 操作系統,CentOS 交叉編譯器版本,4.5.1 開(kāi)發(fā)平臺,旺寶 悍馬1788開(kāi)發(fā)板。 |