999国内精品永久免费视频,色偷偷9999www,亚洲国产成人爱av在线播放,6080亚洲人久久精品,欧美超高清xxxhd

首頁 新聞 工控搜 論壇 廠商論壇 產(chǎn)品 方案 廠商 人才 文摘 下載 展覽
中華工控網(wǎng)首頁
  P L C | 變頻器與傳動 | 傳感器 | 現(xiàn)場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
  D C S | 工業(yè)以太網(wǎng) | 現(xiàn)場總線 | 顯示調(diào)節(jié)儀表 | 數(shù)據(jù)采集 | 數(shù)傳測控 | 工業(yè)安全
  電 源 | 嵌入式系統(tǒng) | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
自己動手打造嵌入式Linux軟硬件開發(fā)環(huán)境
中華工控網(wǎng)
收藏本文     查看收藏
from (<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dailzh.net>http://www.dailzh.net<;/a>)</P><P> Linux和uClinux<BR> 1991年8月,芬蘭的一個學生在comp.os.minix新聞組貼上了以下這段話:</P><P> 你好所有使用minix的人-我正在為386(486)AT做一個免費的操作系統(tǒng)(只是為了愛好,不會象gnu那樣很大很專業(yè). </P><P> 這名學生就是Linus Torvalds, 而他所說的'愛好'就變成我們今天知道的Linux。</P><P> 由于Linux的源代碼公布在互聯(lián)網(wǎng)上,可以免費得到,因此從一開始就吸引了世界各地的UNIX 行家為Linux 編寫了</P><P> 大量的驅(qū)動程序和應用軟件,在短短幾年時間里,Linux 就發(fā)展成為一個相當完善的操作系統(tǒng),而且Linux支持的硬件</P><P> 平臺是所有操作系統(tǒng)中最多的,目前Linux支持硬件平臺:Intel的IA64、Compaq的Alpha、Sun的Sparc/Sparc64、SGI</P><P> 的Mips、IBM的S396、ARM、PowerPC等。Linux更大的影響在于它正逐漸地應用于嵌入式設備,uClinux正是在這種氛圍</P><P> 下產(chǎn)生的。uClinux就是Micro-Control-Linux,它也是一個開放源碼的項目,uClinux的源代碼和開發(fā)工具可以免費從</P><P> <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org>http://www.uclinux.org<;/a>上下載得到。<BR> uClinux是專為那些沒有MMU(內(nèi)存管理單元)的嵌入式處理器開發(fā)的,和主流的Linux相比,uClinux有以下的特點</P><P> :<BR> 1.簡化了內(nèi)核加載方式,uClinux的內(nèi)核可以在Flash上直接運行:就是把uClinux的內(nèi)核的可執(zhí)行映象燒寫</P><P> 到flash上,系統(tǒng)啟動時從Flash的某個地址開始逐句執(zhí)行;也可以加載到內(nèi)存中運行:把內(nèi)核的壓縮文件存放在Flash</P><P> 上,系統(tǒng)啟動時讀取壓縮文件在內(nèi)存里解壓,然后開始執(zhí)行。<BR> 2.采用了romfs文件系統(tǒng)作為root文件系統(tǒng):這種文件系統(tǒng)相對于一般的ext2文件系統(tǒng)要求更少的空間,首先內(nèi)核</P><P> 支持romfs文件系統(tǒng)比支持ext2文件系統(tǒng)需要更少的代碼,其次romfs文件系統(tǒng)相對簡單,建立文件系統(tǒng)superblock需要</P><P> 更少的存儲空間。Romfs文件系統(tǒng)不支持動態(tài)擦寫,對于系統(tǒng)需要動態(tài)保存的數(shù)據(jù)采用RAM盤的方法處理,RAM盤采</P><P> 用ext2文件系統(tǒng)。<BR> 3.使用了Flat可執(zhí)行文件格式:elf格式有很大的文件頭,flat文件對文件頭和一些段信息做了簡化。<BR> 4.重寫了應用程序庫: uClibc對libc做了精簡,uClinux對用戶程序采用靜態(tài)連接的形式。</P><P> uClinux的開發(fā)環(huán)境<BR> <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org>www.uclinux.org</a>為uClinux提供了GNU的交叉編譯器,包括以下組件:Gcc交叉編譯器,即在宿主機上開發(fā)編譯目</P><P> 標上可運行的二進制文件;Binutils輔助工具,包括objdump、as、ld等;Gdb調(diào)試器。以在ARM7上開發(fā)uClinux為例:<BR> 1.獲得uClinux-dist的源碼<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org>www.uclinux.org</a>上定期為新推出的Linux內(nèi)核推出相應的源碼包,最新的版本為</P><P> Kernel-2.4.21,可以從<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org/pub/uClinux/dist/>http://www.uclinux.org/pub/uClinux/dist/<;/a> 上免費下載得到。這個源碼包里包含</P><P> 了uCLinux-2.4.21、uClibc和已經(jīng)移植到uClinux下的用戶應用程序。下載完后,會得到一</P><P> 個uClinux-dist-20030522.tar.gz的文件,把它保存到/home目錄下,然后執(zhí)行:tar zxvf </P><P> uClinux-dist-20030522.tar.gz,當tar程序運行完畢后,在/home目錄下會有一個/home/uClinux-dist的新目錄,這<BR> 個目錄就是uClinux的源碼根目錄,里面有進行uClinux開發(fā)的所有的源代碼。<BR> 2.獲得ARM開發(fā)工<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org>www.uclinux.org</a>提供uClinux源碼的同時還提供相應的交叉編譯工具。要在開發(fā)主機上</P><P> 為ARM7目標系統(tǒng)編譯uClinux,還需要從<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org/pub/uClinux/arm-elf-tools/>http://www.uclinux.org/pub/uClinux/arm-elf-tools/<;/a> 上下載ARM交叉編譯</P><P> 器:arm-elf-tools-20030314.sh。得到這個文件以后,執(zhí)行以下命令:sh arm-elf-tools-20030314.sh,這個命令</P><P> 會在開發(fā)主機上自動建立一個uClinux-ARM的交叉編譯環(huán)境。鍵入arm-elf-gcc, 如果能看到下面的輸出信息:<BR> Reading specs from /usr/local/lib/gcc-lib/arm-elf/2.95.3/specsgcc version 2.95.3 20010315 (release)<BR> (ColdFire patches - 20010318 from <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://fiddes.net/coldfire/>http://fiddes.net/coldfire/<;/a>)(uClinux XIP and shared lib patches <BR> from <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.snapgear.com/>http://www.snapgear.com/<;/a>)<BR> 表示uClinux-ARM的交叉編譯環(huán)境已經(jīng)建立起來了。</P><P> 現(xiàn)在開發(fā)主機里已經(jīng)有了uClinux的源代碼和編譯這些源代碼的工具,也可以用make menuconfig, make等命令來</P><P> 編譯uClinux和用戶程序,為ARM目標板編譯了一個內(nèi)核映像文件,接下來要做得是需要一塊ARM7的開發(fā)板來運行這個映</P><P> 像文件(關于如何編譯uClinux和用戶程序請<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uClinux.org>www.uClinux.org</a>上得相關文檔)。</P><P> 構建ARM7-uClinux開發(fā)板<BR> uClinux只需要極少的硬件資源就可運行起來,以ARM7TDMI為例,只需要以下硬件:<BR> 1.CPU – Samsung S3C4510B<BR> 2.SDRAM 8M以上<BR> 3.一個簡易的串口<BR> 4.2M Flash<BR> 5.一個以太網(wǎng)接口(可選)<BR> 目前各嵌入式微處理器的廠商在推出每款處理器的同時都會提供一個Demo板,供用戶來測試微處理器的性</P><P> 能。Samsung公司對S3C4510B處理器提供了一款SNDS100的Demo板。Demo板的原理圖可以從Samsung公司的網(wǎng)站上免費下</P><P> 載,對這個原理圖作一些修改,只保留上面列出的5個部分,去掉其他多余的部分。修改以后的原理圖就是一個能夠運行</P><P> uClinux的ARM7目標板原理圖,然后根據(jù)這個原理圖去加工幾張PCB板,焊上相應的元件,一塊能運行uClinux的ARM7開</P><P> 發(fā)板就做成了(這款開發(fā)板相應得原理圖、PCB圖可以從<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dailzh.net>http://www.dailzh.net<;/a>上免費下載得到)。<BR> 慢著,雖然這塊開發(fā)板已經(jīng)焊接完成,但目前它只是一堆電子零件的簡單組合,要在它上面跑uClinux,還需要相</P><P> 應的軟件來管理這些硬件。<BR> 前面提到uClinux可以從Flash中直接運行,就是說可以將uClinux的映像文件直接燒寫到Flash中,然后上</P><P> 電,uClinux會從Flash中啟動嗎?是的,確實如此,F(xiàn)在要做的就是如何將uClinux的內(nèi)核映像燒寫到Flash中。用寫入</P><P> 器將uClinux內(nèi)核映像寫入到Flash中,然后將Flash焊接到pcb板上或插到開發(fā)板的flash的插座上可以嗎?當然可以,</P><P> 如果你有寫入器的話。不過,很少有人手里能有這種寫入器。我們需要的是一個廉價的Flash寫入方</P><P> 案。用JTAG,S3C4510B上集成了一個JTAG,通過JTAG我們可以控制S3C4510B上所有管腳,這樣可以通過向JTAG接口輸</P><P> 入相應的指令和數(shù)據(jù),用軟件的方法在S3C4510B的數(shù)據(jù)、地址和控制總線上產(chǎn)生出Flash器件的讀寫操作時</P><P> 序,將uClinux的內(nèi)核映像文件燒寫到Flash中(關于S3C4510B的JTAG接口電纜的制作和下載燒寫uClinux映像文件</P><P> 到Flash中的程序可執(zhí)行文件和源代碼請參閱<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dailzh.net>http://www.dailzh.net<;/a>上相關內(nèi)容)。</P><P> 終于將uClinux的映像文件燒寫到Flash中了,用一根串口電纜將ARM7開發(fā)板和開發(fā)主機的Com1口連接起來,從網(wǎng)上</P><P> 下載一個tip程序,執(zhí)行這個命令:<BR> tip –l /dev/ttyS0 –s 19200<BR> 等屏幕上顯示 connected.以后,將ARM7開發(fā)板的電源接通。如果夠幸運的話,你應該看到下面的信息:<BR> >>Linux version 2.4.20-uc0 (root@dailzh) (gcc version 2.95.3<BR> >>20010315 (release)(ColdFire patches - 20010318 from <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://fiddes.net/coldfire/>http://fiddes.net/coldfire/<;/a>)<BR> >>(uClinux XIP and shared lib patches from <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.snapgear.com/>http://www.snapgear.com/<;/a>)) 一 5月19 23:44:11 CST 2003<BR> >>Processor: Samsung S3C4510B revision 6<BR> >>Architecture: SNDS100<BR> >>On node 0 totalpages: 4096<BR> >>zone(0): 0 pages.<BR> >>zone(1): 4096 pages.<BR> >>zone(2): 0 pages.<BR> >>Kernel command line: root=/dev/rom0<BR> >>Calibrating delay loop... 49.76 BogoMIPS<BR> …<BR> >>Command: cat /etc/motd<BR> >>Welcome to uClinux.org<BR> >>For further information check: <img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org/>http://www.uclinux.org/<;/a><BR> >>\><BR> uClinux在ARM7目標板上已經(jīng)運行起來了,鍵入熟悉的ls命令,看有什么輸出。</P><P> 通過JTAG接口燒寫uClinux映像文件到Flash中速度太慢,調(diào)試uClinux內(nèi)核非常不方便,有沒有其他的方法?有,</P><P> uClinux除了可以從Flash中直接運行外,還可以加載到內(nèi)存中運行。我們來為ARM7開發(fā)板寫一</P><P> 個Bootloader,Bootloader的作用是初始化ARM7開發(fā)板,然后通過以太網(wǎng)接口將uClinux映像下載到內(nèi)存中,然后從內(nèi)</P><P> 存中運行uClinux。這種方法下載uClinux內(nèi)核映像只需要10幾秒,適合于開發(fā)階段經(jīng)常修改uClinux內(nèi)核時使</P><P> 用(Bootloader for ARM7的源代碼可以從<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dailzh.net>http://www.dailzh.net<;/a> 上下載得到)。調(diào)試完uClinux的內(nèi)核以后,可以再</P><P> 通過JTAG接口燒寫uClinux映像文件到Flash中,這樣又可以直接從Flash中運行調(diào)試好的uClinux了。</P><P> uClinux下用戶程序的開發(fā)和調(diào)試<BR> 現(xiàn)在ARM7開發(fā)板可以運行uClinux了,如何開發(fā)uClinux下的應用程序呢?和在普通計算機上開發(fā)Linux程序一樣,</P><P> 首先編寫應用程序的源代碼,只不過編譯的時候不能用gcc編譯,需要用arm-elf-gcc編譯。編譯以后的可執(zhí)行文件必須</P><P> 下載到ARM7開發(fā)板上才能運行,下載程序到目標板上可以通過在uClinux中啟用tftpd程序,在開發(fā)主機端用tftpcmd 程</P><P> 序來下載,然后在uClinux的控制臺窗口鍵入可執(zhí)行文件名的方法來運行。如果想要應用程序在uClinux啟動時自動運行</P><P> ,可以修改uClinux系統(tǒng)中/etc/rc文件的內(nèi)容來來實現(xiàn)。如果要用gdb來調(diào)試用戶程序,可以<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.uclinux.org>www.uclinux.org</a>上</P><P> 的相關文檔。</P><P> 關于作者<BR> dai lizhou , 愛好嵌入式系統(tǒng)和Linux開發(fā), 如果你對嵌入式Linux開發(fā)有興趣請訪問我們的網(wǎng)</P><P> 站<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dailzh.net>http://www.dailzh.net<;/a>, 誠邀你的加盟。</P><P>
 

狀 態(tài): 離線

公司簡介
產(chǎn)品目錄

公司名稱: 中華工控網(wǎng)
聯(lián) 系 人: 客服中心
電  話: 0755-26546361
傳  真: 0755-26585268
地  址: 深圳市南山區(qū)創(chuàng)業(yè)路現(xiàn)代城華庭1棟6A
郵  編: 518054
主  頁:
 
該廠商相關技術文摘:
智能儀器儀表的發(fā)展特點與前景分析
電動機性能虛擬儀器測試系統(tǒng)設計與實現(xiàn)
視頻監(jiān)控護航高鐵安全運營
基于PLC,觸摸屏及變頻器對吹膜機的改造
永宏PLC應用于自助圖書借還終端機
基于永宏PLC的GSM通訊原理及其應用
改善汽車生態(tài)學、安全性和舒適性,四大測試分析是關鍵
改善汽車生態(tài)學、安全性和舒適性,四大測試分析是關鍵
數(shù)控技術的發(fā)展趨勢及產(chǎn)業(yè)化
數(shù)控技術發(fā)展戰(zhàn)略與發(fā)展途徑的思考
用Energid 的軟件進行機器人的抓取和操作
如何借助RFID技術升級企業(yè)信息管理水平
更多文摘...
立即發(fā)送詢問信息在線聯(lián)系該技術文摘廠商:
用戶名: 密碼: 免費注冊為中華工控網(wǎng)會員
請留下您的有效聯(lián)系方式,以方便我們及時與您聯(lián)絡

關于我們 | 聯(lián)系我們 | 廣告服務 | 本站動態(tài) | 友情鏈接 | 法律聲明 | 不良信息舉報
工控網(wǎng)客服熱線:0755-86369299
版權所有 中華工控網(wǎng) Copyright©2022 Gkong.com, All Rights Reserved