最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)

LPC2210

LPC2210 的PDF資料

下載
,185549K
其他型號

LPC2210的供應(yīng)商:
聯(lián)系人:楊小姐/秦先生
電話:0755-82724787/0755-82772151
聯(lián)系人:秦先生(微信手機(jī)同號)/楊小姐(微信手機(jī)同號)
電話:0755-82772151/0755-82772151
聯(lián)系人:陳先生
電話:075582527379
聯(lián)系人:林小姐/陳小姐/彭小姐
電話:0755-23995323/0755-23915567/0755-83290053
>>更多供應(yīng)商

基于LPC2210的嵌入式Linux開發(fā)平臺構(gòu)建

查看最近90天中添加的最新產(chǎn)品 最新電子元器件資料免費下載 派睿電子TI有獎問答 - 送3D汽車鼠標(biāo) IR推出采用焊前金屬的汽車級絕緣柵雙極晶體管 全球電子連接器生產(chǎn)商—samtec 最新斷路器保護(hù)套

     摘要:本文描述了ARM7 與uCLinux 操作系統(tǒng)的特點,詳細(xì)討論了基于ARM7 與uCLinux開發(fā)的平臺構(gòu)建過程。利用構(gòu)建好的開發(fā)平臺,通過示例來說明了基于NFS 方式的嵌入式Linux 的應(yīng)用程序開發(fā)流程,該開發(fā)平臺將進(jìn)一步應(yīng)用于放射性氣體氣溶膠連續(xù)監(jiān)測系統(tǒng)的數(shù)據(jù)采集。

  0 引言

  隨著網(wǎng)絡(luò)、通信、多媒體和信息家電時代的到來,嵌入式系統(tǒng)在經(jīng)歷了近 20 年的發(fā)展歷程之后,進(jìn)入了一個全新的發(fā)展階段。Linux 操作系統(tǒng)以其穩(wěn)定性好、可靠性高、源代碼公開、可裁剪等優(yōu)點已成為嵌入式領(lǐng)域的一股新興力量,具有巨大的市場潛力和商業(yè)價值。而ARM 處理器是目前應(yīng)用的最為廣泛的嵌入式處理器架構(gòu)。因此,將Linux 操作系統(tǒng)移植到ARM 處理器平臺上并應(yīng)用于實際的產(chǎn)品是最為流行的嵌入式產(chǎn)品解決方案。

  放射性氣體氣溶膠監(jiān)測系統(tǒng)的數(shù)據(jù)采集與處理一般是以 8 位單片機(jī)作為控制核心,直接導(dǎo)致硬件電路復(fù)雜、設(shè)計和調(diào)試難度加大、集成度低、穩(wěn)定性差、系統(tǒng)升級難度較大等缺點。因此,本文采用LPC2210+uCLinux 的開發(fā)模式來設(shè)計整個監(jiān)測系統(tǒng)的數(shù)據(jù)采集與處理模塊,能夠很好的提升整個系統(tǒng)的穩(wěn)定性和可操作性。其中LPC2210 是基于32 位ARM7TDMI 內(nèi)核的處理器,uCLinux 操作系統(tǒng)是開放源代碼的嵌入式Linux 的典范之作,主要針對沒有MMU(存儲器管理單元)的處理器,具有良好的可移植性和優(yōu)秀的網(wǎng)絡(luò)功能。

  1 硬件平臺介紹

  硬件平臺采用 LPC2210 為系統(tǒng)硬件核心開發(fā)板,系統(tǒng)框圖如圖1 所示。主要包括:存儲系統(tǒng)、系統(tǒng)接口、用戶接口3 個部分。LPC2000 系列ARM7 處理器I/O 口供電電源為3.3V,內(nèi)核及片內(nèi)外設(shè)供電電源為1.8V,所以,系統(tǒng)設(shè)計為3.3V 應(yīng)用系統(tǒng)。該系列的處理器可以使用外部時鐘源,內(nèi)部PLL 電路可調(diào)整系統(tǒng)時鐘,使系統(tǒng)運行速度更快(CPU 最大操作時鐘為60MHz)。

  該硬件平臺擴(kuò)展了2MB NOR Flash 和8MB PSRAM。為了方便程序調(diào)試以及最終代碼的固化應(yīng)用,使用LPC2210 外部存儲器接口的Bank0 和Bank1 地址空間。在使用uCLinux操作系統(tǒng)時,NOR Flash 用來存放bootloader 程序,以便于加載并引導(dǎo)放在NAND Flash 中的uCLinux 內(nèi)核。

  LPC2210 具有外部總線接口,設(shè)計電路為16 位總線方式對網(wǎng)卡芯片RTL8019AS 進(jìn)行訪問,即數(shù)據(jù)總線D0~D15 與網(wǎng)卡芯片的SD0~SD15 連接,由于RTL8019AS 工作電壓是5V,而LPC2210 的I/O 電壓是3.3V,故需在總線上串接470 歐的保護(hù)電阻。網(wǎng)卡芯片的Vih 最小值為2.0V,故與LPC2210 連接時不需要加電平轉(zhuǎn)換芯片。


圖 1 系統(tǒng)結(jié)構(gòu)框圖

  2 嵌入式Linux 開發(fā)平臺的構(gòu)建

  本研究采用在宿主機(jī)上編寫程序,然后通過交叉編譯生成目標(biāo)平臺上可以運行的可執(zhí)行文件,最后下載到目標(biāo)板的特定位置運行的方法構(gòu)建平臺,即通常稱為的“宿主機(jī)+目標(biāo)板”的開發(fā)模式,如圖2 所示。目標(biāo)板分別通過RS-232 串口和RJ-45 以太網(wǎng)接口與宿主機(jī)連接。

  宿主機(jī)上需要運行 2 個窗口,即宿主機(jī)本機(jī)操作窗口和串口終端窗口。宿主機(jī)操作窗口可以是本機(jī)的操作終端,也可以是通過遠(yuǎn)程登錄登錄到Linux 服務(wù)器的操作界面。串口終端窗口可以是Linux 下的minicom,也可以是windows 下的超級終端。目標(biāo)板可以看成一臺計算機(jī),串口終端就相當(dāng)于這臺計算機(jī)的顯示器,作為人機(jī)交互界面。在宿主機(jī)編譯、鏈接后得到的可執(zhí)行文件下載到目標(biāo)板上運行。


 

圖2 嵌入式Linux 交叉開發(fā)環(huán)境

  2.1 uCLinux 操作系統(tǒng)的移植

  在開始移植操作系統(tǒng)之前,先準(zhǔn)備好移植所需要的軟件包,主要包括:交叉編譯所需的編譯工具包、uCLinux 源碼包、完整的bootloader 程序及根文件系統(tǒng)。上述二種工具包都有眾多版本,本文分別選擇的是uCLinux-dist-20040408.tar.gz、arm-elf-tools-20040427.sh。整個移植工作分為三步:建立交叉編譯環(huán)境;編譯配置內(nèi)核;bootloader 及根文件系統(tǒng)的移植。

  2.1.1 建立交叉編譯環(huán)境

  將工具包 arm-elf-tools-20040427.sh 拷貝到目錄/usr/src 下,為其增加可執(zhí)行權(quán)限(#chmod755 arm-elf-tools-20040427.sh);然后安裝arm-elf-gcc(# ./ arm-elf-tools-20040427.sh),安裝完畢后查看/usr/local/bin 目錄下是否存在arm-elf-gcc 等文件,如存在,表明交叉編譯器安裝成功;最后是添加交叉編譯的路徑,這一步在安裝過程會自動執(zhí)行和保存,并在下次啟動之后仍然有效(#export PATH=$PATH:/usr/local/arm-elf/bin)。至此,交叉編譯環(huán)境已經(jīng)建立完畢。

  2.1.2 交叉編譯uCLinux 內(nèi)核

  在交叉編譯內(nèi)核之前,首先要對編譯選項進(jìn)行配置。為了配置過程的直觀性,一般選擇“make menuconfig”命令,進(jìn)入uCLinux v3.1.0 Configuration 界面,主要是設(shè)置嵌入式處理器的型號以及操作系統(tǒng)的版本,然后選擇Default all settings 后進(jìn)行編譯即可。交叉編譯工作一次由以下命令完成:

  #cd /usr/src/uCLinux-dist // uCLinux-dist 為uCLinux 源代碼所在目錄

  #make distclean // 清除上一次編譯所產(chǎn)生的輔助文件和目標(biāo)文件

  #make menuconfig // 通過文本菜單方式配置uCLinux

  #make dep // 建立源代碼文件的依賴關(guān)系

  #make //編譯內(nèi)核

  編譯結(jié)束之后會在 uCLinux 安裝目錄下建立romfs 和images 兩個目錄。其中romfs 為romfs 文件系統(tǒng)的臨時存放目錄;images 為生成的目標(biāo)代碼目錄,其中romfs.img 為romfs文件系統(tǒng)的映像文件,image.bin 為文件系統(tǒng)和內(nèi)核代碼的目標(biāo)文件。

  2.1.3 bootloader 及根文件系統(tǒng)的移植

  通過 RS-232 串口將完整的bootloader 程序下載到目標(biāo)板的NOR Flash 中。主要工作是在WinXP 下設(shè)置超級終端,波特率38400、8 位數(shù)據(jù)位、1 位停止位、無奇偶校驗位、無流控制。通過運行下載程序,可以將bootloader 下載到NOR Flash 中。

  建立 uCLinux 超級終端,設(shè)置波特率為115200、8 位數(shù)據(jù)位、1 位停止位、無奇偶校驗位、無流控制。命名為uCLinux。然后啟動開發(fā)板,在超級終端中也即嵌入式開發(fā)板的“顯示器”中,可以看到bootloader 的啟動界面,通過FlashFXP 軟件可以將目錄bin\、boot\、etc\下的文件下載到開發(fā)板。

  2.1.4 uCLinux 的啟動

  通過 bootloader 轉(zhuǎn)載和引導(dǎo)剛剛生成的內(nèi)核和文件系統(tǒng)。bootloader 引導(dǎo)內(nèi)核的方式是:將內(nèi)核影像文件和根文件系統(tǒng)下載至PSRAM 中直接啟動,而不是從NAND Flash 中讀入PSRAM,這種方法不需要燒寫Flash。如圖3 是uCLinux 操作系統(tǒng)啟動后的界面。


圖3 uCLinux 操作系統(tǒng)的啟動界面

  2.2 NFS 輔助開發(fā)環(huán)境的建立

  網(wǎng)絡(luò)文件系統(tǒng)(NFS,Network File System)是一種將遠(yuǎn)程主機(jī)上的分區(qū)(目錄)經(jīng)網(wǎng)絡(luò)掛載到本地系統(tǒng)的一種機(jī)制,通過對網(wǎng)絡(luò)文件系統(tǒng)的支持,用戶可以在本地系統(tǒng)上像操作本地分區(qū)一樣來對遠(yuǎn)程主機(jī)的共享分區(qū)(目錄)進(jìn)行操作。因此,通過建立NFS,把Linux 宿主機(jī)上的特定分區(qū)共享到待調(diào)試的目標(biāo)板上,就可以直接在目標(biāo)板上操作Linux 宿主機(jī)的特定分區(qū),同時可以在線對程序進(jìn)行調(diào)試和修改,大大方便了軟件的開發(fā)。故NFS 是嵌入式Linux 開發(fā)的一個重要組成部分,下面詳細(xì)說明如何建立NFS 輔助開發(fā)環(huán)境。

  2.2.1 宿主機(jī)端NFS 服務(wù)器的配置

  以 root 身份登錄Linux 服務(wù)器,編輯/etc 目錄下的共享目錄配置文件exports,指定共享目錄及權(quán)限等。

  執(zhí)行如下命令編輯文件 /etc/exports:

  #vi /etc/exports

  在該文件中添加如下內(nèi)容:

  /home/work 192.168.0.* (rw, sync, no_root_squash)

  然后保存退出。

  添加的內(nèi)容表示允許 IP 地址范圍在192.168.0.*的計算機(jī)以讀寫的權(quán)限來訪問/home/work 目錄。

  其中,/home/work 也稱為服務(wù)器輸出共享目錄;rw 讀寫權(quán)限;sync 數(shù)據(jù)同步寫入內(nèi)存和硬盤;no_root_squash 為NFS 服務(wù)器共享目錄用戶的屬性,如果用戶是root,那么對于這個共享目錄來說就具有root 權(quán)限。

  接著執(zhí)行如下命令,以啟動端口映射:

  #/etc/rc.d/init.d/portmap start

  最后執(zhí)行如下命令啟動 NFS 服務(wù),此時NFS 就會激活守護(hù)進(jìn)程,然后開始*client 端的請求:

  #/etc/rc.d/init.d/nfs start

  在 NFS 服務(wù)器啟動后,還需檢查Linux 服務(wù)器的防火墻等設(shè)置(一般需要關(guān)閉防火墻服務(wù)),確保沒有屏蔽掉NFS 使用的端口和允許通信的主機(jī),主要是檢查Linux 服務(wù)器iptables,ipchains 等選項的設(shè)置,以及/etc/hosts.deny,/etc/hosts.allow 等文件。

  到此,宿主機(jī)端 NFS 服務(wù)器配置完成。

  最后在宿主機(jī)上進(jìn)行 NFS 服務(wù)器的回環(huán)測試,驗證共享目錄是否能夠被訪問。在宿主機(jī)上運行如下命令:

  # mount –t nfs –o nolock 192.168.0.10:/home/work /mnt

  # ls /mnt

  命令將宿主機(jī)的 NFS 輸出共享目錄掛載到/mnt 目錄下,因此如果NFS 配置正確的話,應(yīng)該可以在/mnt 目錄下看到/home/work 共享目錄的內(nèi)容。

  2.2.2 目標(biāo)板端NFS 客戶端的配置

  在宿主機(jī)端的設(shè)置成功之后,還需要對客戶端進(jìn)行相關(guān)的設(shè)置。在目標(biāo)板系統(tǒng)的命令行下,執(zhí)行如下命令來進(jìn)行NFS 共享目錄的掛載:

  /> mkdir /mnt/nfs //建立宿主機(jī)輸出共享目錄的掛載點

  /> mount –t nfs –o nolock 192.168.0.10:/home/work /mnt/nfs

  /> cd /mnt/nfs

  /> ls

  此時,目標(biāo)板終端所顯示的內(nèi)容即為宿主機(jī)的輸出目錄的內(nèi)容,即宿主機(jī)的輸出目錄/home/work 通過NFS 映射到了嵌入式目標(biāo)板的/mnt/nfs 目錄。由于Linux 默認(rèn)下不啟動NFS,每次宿主機(jī)進(jìn)入Linux 之后都要重新完成NFS 的啟動和掛載,比較麻煩?梢詫⒁陨系拿顚懭胨拗鳈C(jī)的腳本文件/etc/rc.d/rc.local 中,宿主機(jī)啟動時會執(zhí)行此文件。

  3 嵌入式Linux 應(yīng)用程序的開發(fā)

  完成上述工作之后,嵌入式Linux 開發(fā)平臺搭建成功。在這個平臺上即可以進(jìn)行相關(guān)應(yīng)用程序的開發(fā)。本文采用NFS 方式進(jìn)行應(yīng)用程序的開發(fā)。

  基于 NFS 方式的應(yīng)用程序開發(fā),首先在宿主機(jī)上通過vi 編輯器進(jìn)行源代碼的編輯,然后通過交叉編譯,最后生成可執(zhí)行文件,在嵌入式目標(biāo)板端通過NFS 方式掛載宿主機(jī)的共享分區(qū),讓應(yīng)用程序直接運行在嵌入式目標(biāo)系統(tǒng),并進(jìn)行調(diào)試。基于 NFS 方式的開發(fā)流程如圖4 所示。


圖 4 基于NFS 方式的開發(fā)流程圖

  當(dāng)開發(fā)人員完成了應(yīng)用程序的調(diào)試之后,可以將調(diào)試好的應(yīng)用程序下載到目標(biāo)系統(tǒng)的Flash 中或者直接編譯到嵌入式Linux 內(nèi)核中,從而最終形成一個獨立的嵌入式應(yīng)用系統(tǒng)。下面介紹一個示例來說明基于嵌入式 Linux的應(yīng)用程序開發(fā)流程。該示例使用MiniGUI的靜態(tài)框、按鈕和編輯框空間,實現(xiàn)一個Login 系統(tǒng)登錄的對話框。對話框中要求輸入用戶名和密碼,如果輸入正確的用戶名和密碼(例如用戶名為51,密碼為888888)則進(jìn)入系統(tǒng)(顯示一個主窗口),否則彈出錯誤對話框,并要求用戶再次輸入用戶名和密碼。實現(xiàn)本示例之前,必須確保已經(jīng)搭建好MiniGUI 編譯和開發(fā)板上的運行環(huán)境。

  實驗步驟如下:

  第一步:編輯源程序

  在宿主機(jī)的工作目錄/home/work 下使用vi 編輯器編輯源程序,源程序名為login.c。

  部分程序源代碼如下:

  // 定義對話框

  static DLGTEMPLATE MyDlg =

  { WS_BORDER | WS_CAPTION,

  WS_EX_NONE,

  2, 50, 235, 190,

  "登錄",

  0,

  0,

  6,

  NULL,

  0

  };

  // 定義對話框中的控件

  static CTRLDATA CtrlInitData[] =

  {

  { "static",

  WS_VISIBLE | SS_SIMPLE,

  25,10, 200, 16,

  IDC_SLOGIN,

  "請輸入用戶名和密碼.",

  0,

  WS_EX_NONE

  },

  { "static",

  WS_VISIBLE | SS_SIMPLE,

  10,40, 60, 16,

  IDC_SUSER,

  "用戶名:",

  0,

  WS_EX_NONE

  },

  { "static",

  WS_VISIBLE | SS_SIMPLE,

  10,80, 60, 16,

  IDC_SPASS,

  "密碼:",

  0,

  WS_EX_NONE

  },

  { "edit",

  WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP,

  70,40, 140,25,

  IDC_EUSER,

  "",

  0,

  WS_EX_NONE

  },

  { "edit",

  WS_CHILD | WS_VISIBLE | WS_BORDER | ES_PASSWORD | WS_TABSTOP,

  70,80, 140,25,

  IDC_EPASS,

  "",

  0,

  WS_EX_NONE

  },

  { "button",

  WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON,

  80,120, 80,25,

  IDOK,

  "確定",

  0,

  WS_EX_NONE

  }

  };

  //設(shè)置用戶名和密碼

  #define USER_NO 3

  static char *g_user[USER_NO] = {"root",

  "51",

  "WXM"

  };

  static char *g_pass[USER_NO] = {"******",

  "888888",

  "2046"

  };

  第二步:修改對應(yīng)的 Makefile.am 文件,設(shè)置編譯login.c 文件

  在命令行下輸入 # make

  當(dāng)命令執(zhí)行完畢之后,會在當(dāng)前目錄下生成名為login 的可執(zhí)行文件。

  第三步:在目標(biāo)板掛載共享目錄,并運行程序。

  /> cd usr

  />usr> portmap&

  [26]

  /usr> mount –t nfs 192.168.0.10:/home/work /usr/pro –o nolock //掛載共享目錄

  />cd /usr/pro

  /usr/pro ./login //運行程序,顯示登入對話框

  第四步:使用目標(biāo)板上的功能鍵 0~9 輸入用戶名和密碼,使用TAB 鍵轉(zhuǎn)移到下一個焦點,使用BACK 鍵刪除已輸入的字符,使用ENTER 確定輸入。當(dāng)用戶名和密碼輸入正確時,登錄成功,登入界面被關(guān)閉,并顯示一個MiniGUI 主窗口。如圖5 示:


圖5 “登入”對話框和歡迎界面

  4 結(jié)束語

  作為實時放射性氣體氣溶膠監(jiān)測系統(tǒng)的數(shù)據(jù)采集系統(tǒng)開發(fā)的重要組成部分,本文通過分析ARM7 和uCLinux 特點,將二者有機(jī)結(jié)合,構(gòu)建了ARM7+uCLinux 的嵌入式通用開發(fā)平臺,并展示了應(yīng)用該開發(fā)平臺開發(fā)應(yīng)用程序的詳細(xì)過程。該平臺的應(yīng)用克服了大多數(shù)實時監(jiān)測系統(tǒng)因采用8 位單片機(jī)為控制核心實現(xiàn)數(shù)據(jù)采集而帶來的硬件電路復(fù)雜、穩(wěn)定性差、升級困難等問題。故本文作者創(chuàng)新點:通過采用ARM7+uCLinux 的嵌入式通用開發(fā)平臺克服了大多數(shù)實時監(jiān)測系統(tǒng)硬件電路復(fù)雜、穩(wěn)定性差、升級困難等缺點;同時采用該開發(fā)平臺在開發(fā)過程中使用NFS 方式下載開發(fā)的應(yīng)用程序,為嵌入式應(yīng)用軟件的開發(fā)節(jié)省了大量的時間,大大提高了開發(fā)效率。



  來源:秫秫
收藏此頁】【關(guān)閉】【返回】【打印】【推薦
分享: QQ空間 人人網(wǎng) 開心網(wǎng) 騰訊微博 新浪微博 搜狐微博 網(wǎng)易微博
本頁面信息由維庫用戶提供,如有侵犯您的知識產(chǎn)權(quán),請致電本站,本站核實后將迅速刪除!

熱門詞條:壓電蜂鳴器自動埋弧焊機(jī)微電腦時溫程控儀通用接近開關(guān)負(fù)載直流電阻測試儀截止閥LED幕墻屏單相自耦調(diào)壓器RF無線射頻電路印刷電路板更多>>
相關(guān)文章
  • 更多"LPC2210"相關(guān)文章
  • 關(guān)于我們 | 服務(wù)項目 | 付款方式 | 聯(lián)系我們 | 友情鏈接 | 投訴 建議 合作 | 網(wǎng)站地圖 | 加入收藏 | 公司庫
    © 2025 維庫電子市場網(wǎng)(udpf.com.cn) 版權(quán)所有 經(jīng)營許可證編號:浙B2-20050339 版權(quán)聲明
    二十一年專注打造優(yōu)質(zhì)電子元器件采購網(wǎng)、IC交易平臺。