版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、M3352-128LI&LC工控板類別內(nèi)容AM3352,Linux,CAN,Ethernet、RS232、LCD,USB摘要M3352-128LI&LC 工控板使用指南廣州致遠電子UM2014120101V1.00Date: 2014/12/01用戶手冊User ManualM3352-128LI&LC廣州致遠電子工控板修訂歷史用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.i版本日期V0.902014/11/20創(chuàng)建文檔V1.002014/12/01正式發(fā)布M3352-128LI&LC廣州致遠電子
2、工控板目錄1. M3352-128 工控板簡介11.11.2M3352-128板1EPC-9200I 工控主板11.2.11.2.21.2.31.2.4簡介1主板主要接口2硬件參數(shù)2軟件參數(shù)32.系統(tǒng)基本操作42.1開機和登錄42.1.12.1.22.1.32.1.4啟動選擇4串口連接設(shè)置4串口登錄6SSH登錄62.22.32.4關(guān)機7Qt 演示程序8輸入設(shè)備82.4.12.4.22.4.3觸摸屏8USB 鼠標8USB 鍵盤82.52.6查看系統(tǒng)信息8系統(tǒng)設(shè)置92.6.12.6.2網(wǎng)絡設(shè)置9系統(tǒng)時鐘102.7文件傳輸102.7.12.7.2SSH 文件傳輸10NFS 文件傳輸112.82.92
3、.102.112.122.13U 盤使用12TF 卡使用12U-Boot 交互12待機設(shè)置13LCD 背光調(diào)節(jié)13串口測試133.文件系統(tǒng)143.13.23.33.43.5分區(qū)描述14支持的文件系統(tǒng)14安裝第軟件15程序開機自啟動15修改文件系統(tǒng)164.應用程序開發(fā)174.1應用程序開發(fā)環(huán)境構(gòu)建174.1.1Linux 開發(fā)一般方法17用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.1M3352-128LI&LC廣州致遠電子工控板4.1.24.1.34.1.4安裝操作系統(tǒng)18構(gòu)建交叉開發(fā)環(huán)境18NFS 服務器配置194.2
4、4.34.44.54.6Hello 程序20GPIO 使用21蜂鳴器使用23LED 使用23串口編程244.6.14.6.24.6.3串口設(shè)備24配置串口接口屬性25獲得和設(shè)置串口信號線狀態(tài)354.7Socket CAN 編程364.7.14.7.24.7.3初始化 CAN 網(wǎng)絡接口36socket can 編程36示例程序404.8看門狗使用454.8.14.8.2概述45范例455. QT 4 編程485.15.2背景知識48Qt 介紹485.2.15.2.2Qt 簡介48Qt/E 簡介485.3編譯環(huán)境的搭建485.3.15.3.2編譯Qt-4.7.3 源碼包48編譯環(huán)境的設(shè)置485.4
5、Hello world495.4.15.4.2編譯 hello 程序49在目標板上運行 hello 程序505.5qmake 與 pro 文件515.5.15.5.2pro 文件例程51pro 文件常見配置525.6桌面版本的 Qt SDK 使用簡介535.6.15.6.25.6.35.6.45.6.5桌面版本Qt SDK 簡介53桌面版本Qt SDK 的安裝54Qt Creator 配置54Qt Creator 使用例程55移植 hello world585.7zylauncher 圖形框架586. 系統(tǒng)恢復和更新646.16.26.36.4制作TF 卡64燒寫 Linux 固件64升級某個
6、固件65全自動升級65用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.2M3352-128LI&LC廣州致遠電子工控板6.56.6免責其它66Tera Term 使用說明66. 697.用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.3M3352-128LI&LC廣州致遠電子工控板1. M3352-128 工控板簡介1.1M3352-128M3352-128板板分 M3352-128LI 和 M3352-128LC 兩個型號,兩者僅在溫度范圍上有所差異
7、,在硬件接口和軟件上完全相同,板外觀如圖 1.1 所示。圖 1.1 M3352-128板外觀1.2 EPC-9200I 工控主板1.2.1 簡介EPC-9200I 是廣州致遠電子開發(fā)的基于 AM3352 處理器的工控主板,采用“板+底板”的結(jié)構(gòu),板為 M3352-128LI 工控板,該主板可做為 M3352-128 核心板的開發(fā)板或者前期驗證板使用(下文無特殊情況,均已 EPC-9200I 來進行描述)。EPC-9200I 板載 6 路UART,2 路USB Host 2.0 接口,1 路 10/100M 以太網(wǎng)接口、2 路CAN 接口、1 路 TF 卡接口,1 路位 16 位 LCD 接口和
8、 4 線電阻式觸摸屏接口。主板外觀如圖 1.2 所示。擴展接口1蜂鳴器 RTC電池接口5V電源以太網(wǎng)LCD接口 (帶觸摸)USB HostM3352板USB OTGTF卡(背面)復位按鍵擴展接口2功能跳線和調(diào)試串口用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.1M3352-128LI&LC廣州致遠電子工控板圖 1.2 EPC-9200I 工控主板【重要說明】:(1) 功能跳線區(qū)的 JP2,斷開選擇從 NAND 啟動(默認),短接選擇從 TF 卡啟動。(2) 功能跳線區(qū)的 JP5,斷開使能看門狗(默認),短接看門狗。1.2
9、.2 主板主要接口EPC-9200I 主板各接口簡要描述如表 1.1 所列。表 1.1 EPC-9200I 工控主板接口描述1.2.3 硬件參數(shù)EPC-9200I 主板硬件參數(shù)如表 1.2 所列。表 1.2 EPC-9200I-L 主板硬件參數(shù)用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.2項目描述說明處理器AM3352(Cortex-A8 內(nèi)核),800MHz內(nèi)存128MB DDR3電子硬盤256MB SLC NAND顯示接口16 位 LCD 接口觸摸屏接口4 線電阻式觸摸屏接口串口6 路(包含 1 路調(diào)試串口)USB Hos
10、t2 路,USB 2.0 高速USB OTG1 路,USB 2.0 高速標號功能備注CON1電源接口5V 供電CON210/100M 自適應以太網(wǎng)CZ1USB HostCZ2USB HostJ4USB OTGJ516 位 LCD 接口帶 4 線電阻式觸摸屏接口J6擴展接口 2串口、CAN 等J7擴展接口 1GPIO 等J9功能跳線區(qū)、調(diào)試串口U4(背面)TF 卡M3352-128LI&LC廣州致遠電子工控板1.2.4 軟件參數(shù)EPC-9200I-L 運行 Linux-3.2.0,包含如下驅(qū)動程序:llllllllllllllNAND Flash 驅(qū)動程序;顯示驅(qū)動程序(調(diào)整分辨率需要修
11、改源碼);LCD 背光驅(qū)動; 觸摸屏驅(qū)動程序;SD/MMC 卡驅(qū)動程序;USB Host 驅(qū)動程序,支持USB 鍵盤、USB 鼠標和U 盤;CAN-Bus 驅(qū)動程序(Socket CAN 接口);10/100M 自適應以太網(wǎng)驅(qū)動程序;RS-232C 接口驅(qū)動程序;RTC 驅(qū)動程序; 看門狗驅(qū)動程序; LED 驅(qū)動;交流蜂鳴器驅(qū)動;GPIO 驅(qū)動。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.3CAN 接口2 路以太網(wǎng)1 路,10/100M 自適應TF 卡接口1 路RTC1 路蜂鳴器1 個指示燈2 個M3352-128LI&
12、;LC廣州致遠電子工控板2. 系統(tǒng)基本操作2.1 開機和登錄系統(tǒng)默認 IP:192.168.1.136SSH 登錄用戶名和均為:root2.1.1啟動選擇EPC-9200I 支持從 NAND 或者 TF 卡啟動,通過 JP2 跳線進行選擇。斷開 JP2 選擇從NAND 啟動,短接后從 TF 卡啟動。2.1.2串口連接設(shè)置EPC-9200 的調(diào)試串口為 UART0,從 DUART 接口引出,為 TTL 電平為 TTL 電平,需要轉(zhuǎn)換成 RS232 電平,才能與 PC 通訊。圖 2.1 所示是一個 RS232-TTL 模塊,通過接到主板即可。線圖 2.1 RS232-TTL 模塊具體接法:將模塊的
13、 TXD 和RXD 信號分別接到主板DUART 的DUTX 和DURX 引腳,GND 對接,5V 信號可以接到主板的 5V,也可以接 3.3V。通過串口延長線將調(diào)試串口與電腦串口相連,設(shè)置串口 115200-8N1,無流。在 Windows 環(huán)境下,可以使用超級終端或者其它串口軟件,下面以超級終端為例進行介紹。選擇【開始】à【程序】à【附件】à【通訊】à【超級終端】,打開“新建連接”的界面,在“名稱”一欄填寫連接的名稱如“Linux”,如圖 2.2 所示。圖 2.2 新建連接用戶手冊©2013 Guangzhou ZHIYUAN Electro
14、nics Stock Co.,.4M3352-128LI&LC廣州致遠電子工控板點擊“確定”,在如圖 2.3 所示的界面,選擇正確的串口。圖 2.3 選擇串口點擊“確定”進入串口屬性設(shè)置界面,在這里設(shè)定串口的波特率、數(shù)據(jù)位等參數(shù),具體設(shè)置為“115200,8N1,無流”,如圖 2.4 所示。圖 2.4 串口屬性設(shè)置確認設(shè)置無誤后點擊“確定”,將得到如圖 2.5 所示的超級終端界面。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.5M3352-128LI&LC廣州致遠電子工控板圖 2.5 設(shè)定完成的超級終端界面2.1
15、.3串口登錄接好串口,打開串口軟件,給工控板上電,在 U-Boot 階段不要按任何按鍵,系統(tǒng)將啟動并進入 Linux 系統(tǒng),在超級終端可以看到啟動信息。系統(tǒng)啟動完畢,進入 LinuxShell 界面,如圖2.6 所示。圖 2.6 通過超級終端登錄 Linux 系統(tǒng)2.1.4SSH登錄EPC-9200I-L 系統(tǒng)支持 SSH登錄,可以使用任何 SSH 軟件進行登錄。下面以Putty用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.6M3352-128LI&LC廣州致遠電子工控板軟件通過 SSH 協(xié)議進行登錄為例進行介紹。EPC
16、-9200I-L 有 1 路以太網(wǎng),默認 IP 為 192.168.1.136,要進行 SSH主機設(shè)置或者添加一個 192.168.1.x 的 IP 地址。登錄,需要為啟動Putty 軟件,在“Host Name”欄填入工控板的 IP 地址 192.168.1.136,選中 SSH 協(xié)議,如圖2.7 所示。圖 2.7 選中使用 SSH 協(xié)議點擊“Open”,在登錄界面輸入用戶名和“root”,登錄 Linux 系統(tǒng),如圖 2.8 所示。圖 2.8 通過 SSH 登錄 Linux 系統(tǒng)2.2 關(guān)機一般情況下直接關(guān)閉電源即可。如果有數(shù)據(jù)操作,為了確保數(shù)據(jù)完全寫入,可輸入sync 命令,完成數(shù)據(jù)同步
17、后關(guān)閉電源;或者輸入poweroff 命令,等串口終端出現(xiàn)“System halted”提示后再關(guān)閉電源。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.7rootEPC-9200 # poweroffThe system is going down NOW! Sent SIGTERM to all processesM3352-128LI&LC廣州致遠電子工控板2.3 Qt 演示程序EPC-9200I-L 包含支持 Qt 4.7.3,默認啟動演示程序。最終實際應用可能不需要該演示程序,可以刪除Qt 的啟動/etc/ini
18、t.d/S90qt 文件:2.4 輸入設(shè)備系統(tǒng)支持觸摸屏輸入,也支持 USB 鍵盤和鼠標等設(shè)備。2.4.1觸摸屏如果在啟動 Qt 演示程序之前沒有過觸摸屏可進行相關(guān)操作。USB 鼠標,則默認使用觸摸屏作為輸入設(shè)備,通觸摸屏校準。如果使用了觸摸屏,則需要進行校準,可刪除校準文件/etc/pointercal,然后重啟系統(tǒng):或者在啟動 GUI 程序之前,輸入 wr ts_calibrate 命令進行校準。2.4.2 USB 鼠標如果了 USB 鼠標后啟動 QT,則可同時使用觸摸屏和 USB 鼠標進行操作。2.4.3USB 鍵盤插上USB 鼠標后啟動演示界面,即可以使用USB 鍵盤進行操作。2.5
19、查看系統(tǒng)信息查看系統(tǒng)內(nèi)核版本,使用uname 命令:查看系統(tǒng)內(nèi)存使用情況,使用 free 命令:查看系統(tǒng)磁盤使用情況,使用 df 命令:用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.8rootEPC-9200 # dfFilesystemSizeUsedAvailable Use% Mounted onubi0 rootfs56.1M46.6M9.6M83%/tmpfs123.9M80.0K123.8M0%/tmprootEPC-9200 # freetotalusedfreesharedbuffers Mem:12391634
20、7528916400-/+ buffers:3475289164Swap:000rootEPC-9200 # uname aLinux EPC-9200 3.2.0 #16 Fri Aug 8 17:13:17 CST 2014 armv7l GNU/LinuxrootEPC-9200 # wr rm /etc/pointercalrootEPC-9200 wr rm /etc/init.d/S90qtSent SIGKILL to all processesRequesting system poweroff System halted.M3352-128LI&LC廣州致遠電子工控板
21、查看CPU 等其它信息:的系統(tǒng)信息請使用相應令進行查看。2.6 系統(tǒng)設(shè)置2.6.11.網(wǎng)絡設(shè)置IP 地址臨時改變 IP 可以使用 ifconfig 命令進行,如:更詳細的網(wǎng)絡設(shè)置請參考其它資料。改變網(wǎng)卡設(shè)置可使用 eeprom 命令進行更改:2.MAC 地址EPC-9200I-L更改 MAC 地址,出廠為 MAC 分配了廣州致遠通過 IEEE 標準購買的合法的MAC 地址(致遠的 MAC 地址以 00-14-97 開頭),貼在板的上。如果有需要,可以用以下命令修改網(wǎng)卡的 MAC 地址,如果不修改則系統(tǒng)將使用 TI 分配的 MAC 地址(也是合法地址)。MAC 地址范例:00-14-97 開頭的
22、 MAC 地址所屬廠商:。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.9rootEPC-9200 # ifconfig eth0 hw ether 00:14:97:0f:00:00rootEPC-9200 # eeprom net set ip <ip-addr>rootEPC-9200 # ifconfig eth0 192.168.1.136rootEPC-9200 # cat /prouinfo Processor: ARMv7 Processor rev 2 (v7l) BogoMIPS: 795.44F
23、eatures: swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls CPU implementer : 0x41Crchitecture: 7 CPU variant: 0x3CPU part: 0xc08 CPU revision2Hardware: EPC-9200Revision0000Serial0000000000000000tmpfs123.9M48.0K123.8M0%/vartmpfs123.9M0123.9M0%/mediaubi1:opt162.4M20.0K157.6M0%/optM3352-128LI&
24、;LC廣州致遠電子工控板結(jié)果如下:2.6.2系統(tǒng)時鐘查看系統(tǒng)時間,使用 date 命令:設(shè)置系統(tǒng)時鐘,先使用 date 命令設(shè)置好時間,然后使用 hwclock -w 命令將時間寫入硬件RTC。例如:設(shè)置硬件RTC 時間為 2014-08-28,15:34:00,則可以使用如下命令:2.7 文件傳輸2.7.1SSH 文件傳輸EPC-9200I-L 支持 SSH登錄,如果所使用的 SSH 軟件帶有文件傳輸功能,還可以通過 SSH 進行文件傳輸。下面以帶文件傳輸?shù)?SSH Secure File Transfer 為例進行介紹。SSH Secure File Transfer 的運行界面如圖2.9
25、 所示。圖 2.9 SSH Secure File Transfer 運行界面用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.10rootEPC-9200 # date 2014.08.28-15:34:00rootEPC-9200 # hwclock -wrootEPC-9200 # dateMon Jan 28 15:35:12 UTC 2014M3352-128LI&LC廣州致遠電子工控板點擊界面的“Quick Connect”按鈕,在連接界面相應欄中填入 EPC-9200I-L 的 IP地址和登錄所使用的用戶名,如
26、圖 2.10 所示。圖 2.10 填寫主機和用戶名最后點擊“Connect”按鈕,登錄系統(tǒng),并可進行文件傳輸。圖根目錄(/)下的視圖。2.11 所示為切換到系統(tǒng)圖 2.11 SSH 文件按瀏覽視圖通過 SSH Secure File Transfer 可以進行文件傳輸,由于系統(tǒng)保護機制,只有/opt 目錄可寫,所以進行文件傳輸需要先在 SSH 中將目錄切換到/opt 目錄。2.7.2NFS 文件傳輸工控板只能作為 NFS 客戶端,可以通過NFS 方式登錄到 NFS 服務器,進行文件傳輸。使用 mount 命令,格式如下:例如:NFS 掛載后,可以使用 cp 命令將NFS 服務器的文件到系統(tǒng)本地
27、目錄。例如:用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.11rootEPC-9200 # mount -t nfs 192.168.1.138:/home/chenxibing/nfs /mnt -o nolockrootEPC-9200 # mount -t nfs nfs-server-ip:nfs-share-directory /mountpoint -o nolockM3352-128LI&LC廣州致遠電子工控板2.8 U 盤使用EPC-9200I-L 帶 2 路 USB Host,可支持 U 盤、USB或者
28、 USB 接口的硬盤等移動設(shè)備。可用的 U 盤后,系統(tǒng)通常會自動掛載到/media 目錄下,具體目錄取決于 U盤的分區(qū)情況,U 盤通常被識別為 SCSI 設(shè)備,設(shè)備名為/dev/sdaX 或者/dev/sdbX,掛載為/media/sdaX 或者/media/sdbX。操作完畢,建議使用先 sync 命令完成同步,或者使用 umount 命令卸載 U 盤,確保數(shù)據(jù)完全寫入,再拔取U 盤。2.9 TF 卡使用TF 卡,系統(tǒng)會進行 TF 卡自動掛載。一般會掛載在/media/mmcX 目錄下。X 數(shù)值取決于卡的分區(qū)情況,如果只有一個分區(qū),則需要手工掛載:操作完畢,需要先卸載然后才能將卡拔出。2.1
29、0 U-Boot 交互EPC-9200I-L 采用 U-Boot 做為系統(tǒng)引導程序,在必要的情況下,可以進入 U-Boot,進行一些高級設(shè)置。EPC-9200I-L 為了防止某些意外中止 U-Boot 引導進程,設(shè)置了保護機制,需要在特定時間段輸入特定字符串才能進入 U-Boot 交互界面。U-Boot 啟動后,出現(xiàn)“Autobooting in 1seconds. Enter "zlg" to interrupt Autoboot.”提示后的 1 秒鐘內(nèi)輸入“zlg”交互界面。U-Boot此時輸入“zlg”進入如下菜單界面(輸入的“zlg”無):各菜單功能都比較明了,不再
30、介紹。輸入“q”將進入傳統(tǒng)命令行模式,可進行操用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.12e Erase NAND Flasha Burn all imagesb Burn bootloaderk Burn kernell Burn logor Rebootq exit to cmdlineU-Boot 2011.09-00000-gc32c12a-dirty (Aug 26 2013 - 11:09:04)I2C:ready DRAM: 128 MiBWARNING: Caches not enabledNAND: HW
31、 ECC Hamming Code selected 256 MiBMMC:OMAP SD/MMC: 0Net:cpswAutobooting in 1 seconds. Enter "zlg" to interrupt Autoboot.rootEPC-9200 # mount -t vfat /dev/mmcblk0 /mntrootEPC-9200 # cp /mnt/hello/hello /rootM3352-128LI&LC廣州致遠電子工控板作。2.11 待機設(shè)置默認待機時間為 10 分鐘。如果需要待機模式,可進行如下操作:在非待機狀態(tài)下想立即進入待機模
32、式,可進行如下操作:不進入待機模式,則需要修改內(nèi)核啟動參數(shù),進入 U-Boot,在內(nèi)核啟動如果需要參數(shù)中增加:consoleblank=0 即可,例如:實際操作方法。系統(tǒng)啟動后,進入U-Boot 命令行。輸入如下指令:然后重啟即可。2.12 LCD 背光調(diào)節(jié)EPC-9200I-L 支持 PWM 背光調(diào)節(jié), 可根據(jù)實際需要進行調(diào)整。操作接口為/sys/class/backlight/pwm-backlight/brightness。往 brightness 文件寫入背光空比,有效范圍 0100),即可實現(xiàn)調(diào)節(jié)。例如,將亮度設(shè)置為 70%:的值(PWM 占2.13 串口測試EPC-9200I-L
33、系統(tǒng)自帶一個串口測試軟件 microcom,可以很簡便快捷的測試串口。Microcom 的用法如下:例如,需要測試串口 ttyO1,波特率為 38400。將 EPC-9200I-L 的 ttyO1 通過 TTL-232轉(zhuǎn)換模塊和延長線與PC 的某個串口相連,PC 上打開串口軟件。在 EPC-9200 的終端輸入如下命令:然后在終端輸入字符,在PC 的串口軟件可以看到所的字符,反之亦然。-t 3000 表示在 3000ms 內(nèi)沒有輸入,程序就自動。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.13rootEPC-9200 # mi
34、crocom -t 3000 -s 38400 /dev/ttyO1Usage: microcom -d DELAY -t TIMEOUT -s SPEED -X TTYrootEPC-9200 # echo 70 > /sys/class/backlight/pwm-backlight/brightnessU-Boot# setenv optargs consoleblank=0U-Boot# run ubiargsbootargs=ubi.mtd=5 root=ubi0 rootfs rootfstype=ubifs console=ttyO0,115200n8 mem=128M c
35、onsoleblank=0rootEPC-9200 echo "0" > /sys/class/graphics/fb0/blankrootEPC-9200 echo "4" > /sys/class/graphics/fb0/blankM3352-128LI&LC廣州致遠電子工控板3. 文件系統(tǒng)3.1分區(qū)描述系統(tǒng)板載 256MB 字節(jié) NAND Flash,一共分為 7 個MTD 分區(qū),查看/proc/mtd 文件可看到各 MTD 分區(qū)信息:各分區(qū)的大小和用途等如表 3.1 所列。表 3.1 NAND Flash 分區(qū)和說明建議用戶
36、將應用程序或者程序數(shù)據(jù)存放在/opt 分區(qū),而不要放在用戶文件系統(tǒng)中,以免對文件系統(tǒng)造成破壞。3.2 支持的文件系統(tǒng)系統(tǒng)支持多種常見文件系統(tǒng),如 ext2、fat 等,具體支持哪些文件系統(tǒng),可通過查看/proc/filesystem 文件。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.14rootEPC-9200 # cat /proc/filesystems rootEPC-9200 # cat /proc/filesystems nodev sysfsnodev rootfsnodevbdevnodevprocnodevtm
37、pfs分區(qū)大小用途SPL0.5MBSPL 區(qū)域U-Boot2MBU-BootKernel4MBLinux 內(nèi)核Kernel24MBLinux 內(nèi)核(備份)Logo1MB內(nèi)核 LOGOFile System64MB用戶文件系統(tǒng)區(qū)域Opt剩余空間/opt 分區(qū),可存放用戶數(shù)據(jù)或者程序rootEPC-9200 # cat /proc/mtd dev:sizeerasesize name mtd0: 00080000 00020000 "SPL"mtd1: 00200000 00020000 "U-Boot"mtd2: 00400000 00020000 &qu
38、ot;Kernel"mtd3: 00400000 00020000 "Kernel2"mtd4: 00100000 00020000 "Logo"mtd5: 04000000 00020000 "File System"mtd6: 0b480000 00020000 "Opt"M3352-128LI&LC廣州致遠電子工控板3.3 安裝第軟件建議用戶程序須安裝在/opt 目錄下,在/opt 目錄下建立合理的程序目錄結(jié)構(gòu),如:/opt 在物理上是一個單獨的 MTD 分區(qū),專門用于安裝用戶程序和存放用戶
39、數(shù)據(jù)。3.4 程序開機自啟動系統(tǒng)啟動過程中會掃描/etc/init.d 目錄下所有以“S”開頭的文件并啟動。所以只需在/etc/init.d 目錄下編寫一個文件名為:“S+編號+名稱”的可執(zhí)行即可,在中增加啟動某個具體程序的語句即可。文件名必須以“S”開頭,編號代表了啟動級別,越大越晚運行,取值建議在 9099 之間。例如,需要開機啟自動的應用程序為/opt/myapp/bin/myapp,可編寫 S90myapp并增用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.15/opt/myapp/|- bin#存放用戶程序可執(zhí)行文件|-
40、 data#存放數(shù)據(jù)文件|- doc#存放文檔文件|- etc#存放配置等文件|- lib#存放程序所需要的額外的庫文件- share#存放共享文件nodevbinfmt_misc nodevdebugfsnodevsockfsnodevusbfsnodevpipefsnodevanon_inodefs nodevrpc_pipefs nodevdevptsext3 ext2 cramfsnodevramfs vfat msdosnodevnfsnodevnfs4nodevmqueue nodevmtd_inodefs nodevoprofilefs nodevubifsM3352-128LI
41、&LC廣州致遠電子工控板加可執(zhí)行權(quán)限,放到/etc/init.d 目錄下,文件內(nèi)容可簡單的寫為:實際應用中,如果程序啟動之前需要設(shè)置一些環(huán)境變量,或者進行其他初始化,或者加載某些外設(shè)驅(qū)動或者庫等等,最好編寫一個序的為startmyapp,內(nèi)容如下(注意,的程序啟動來完成以上工作,如啟動程需要可執(zhí)行權(quán)限):實現(xiàn)開機自啟動只需在/etc/init.d/S90myapp 中調(diào)用這個即可:例如,要實現(xiàn)開機啟動 QT 演示程序,可在/etc/init.d 目錄下增加一個S90qt 文件,其中內(nèi)容如下:3.5修改文件系統(tǒng)出廠的文件系統(tǒng),除了/opt 和臨時目錄/tmp 可寫之外,其余目錄都是只讀系
42、統(tǒng),防止系統(tǒng)受到意外損壞。但是系統(tǒng)不可避免的需要進行某些修改,系統(tǒng)提供了這樣的操作機制。在進行文件、修改等命令前加上 wr,即可修改系統(tǒng)的只讀目錄和文件,例如:這樣就可以將S90qt 文件到本來只讀的/etc/init.d 目錄。要編輯修改某個文件,可在文件,則可以這樣操作:vi前加上 wr,實現(xiàn)對文件的修改。例如要修改/etc/inittab用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.16rootEPC-9200 # wr vi /etc/inittabrootEPC-9200 # wr cp S90qt /etc/init
43、.d#!/bin/sh/usr/share/zhiyuan/zylauncher/start_zylauncher &#!/bin/sh/opt/myapp/startmyapp &#!/bin/sh insmodkoexport= export YYY=/opt/myapp/bin/myapp#!/bin/sh/opt/myapp/bin/myapp &M3352-128LI&LC廣州致遠電子工控板4. 應用程序開發(fā)4.1 應用程序開發(fā)環(huán)境構(gòu)建4.1.1Linux 開發(fā)一般方法Linux 系統(tǒng),由于系統(tǒng)的匱乏,通常無法安裝本地編譯器進行本地開發(fā),而需要在借助一
44、臺主機進行交叉開發(fā)。一般情況下,主機運行 Linux 操作系統(tǒng),在主機安裝相應的交叉編譯器,將在主機編輯好的程序交叉編譯后,通過一定方式如以太網(wǎng)或者串口將程到目標系統(tǒng)運行,或者進行調(diào)試。一般的交叉開發(fā)流程如圖 4.1 所示。序開始調(diào)試應用程序發(fā)布應用程序圖 4.1Linu叉開發(fā)一般流程Linux 開發(fā)的一般模型如圖 4.2 所示。通常需要一臺PC 主機,在其中安裝好各種進行交叉編譯所需要的軟件,通過串口和以太網(wǎng)和目標板相連。在主機上進行程序編輯和編譯,得到的可執(zhí)行文件通過串口或者以太網(wǎng)到目標板中運行或者進行調(diào)試。圖 4.2Linux 開發(fā)模型Linux 開發(fā),NFS(Network FileS
45、ystem)方式應該是最常用的開發(fā)方式了。進行主機開啟 NFS 服務,作為 NFS 服務器,目標板作為 NFS 客戶端,目標板通過 NFS 方式,將主機 NFS 服務器目錄掛載到,像操作本地文件一樣操作的文件。對主機的要求,硬件方面,要求有串口和網(wǎng)口;軟方面,操作系統(tǒng)推薦使用主流版,用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.17將應用程序放到目標系統(tǒng)運行在主機上編譯應用程序在主機編寫應用程序代碼M3352-128LI&LC廣州致遠電子工控板如 ubuntu 等,還需要安裝開發(fā)相關(guān)的軟件,同時還需要其它的軟件如交叉編譯
46、器等。4.1.2安裝操作系統(tǒng)按照一般方法安裝即可。4.1.3構(gòu)建交叉開發(fā)環(huán)境1.工具鏈和安裝工具鏈壓縮包:arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2安裝工具鏈只需將壓縮包進行解壓,并設(shè)置環(huán)境變量即可。解壓后生成arm-2011.03 目錄,其中 bin 里面包含工具鏈如 arm-none-linux-gnueabi-gcc、arm-none-linux-gnueabi-g+的可執(zhí)行文件。設(shè)置工具鏈路徑,將 arm-2011.03/bin 目錄添加到系統(tǒng)PATH 環(huán)境變量中即可,假如工具鏈 安 裝 在 /home
47、/ctools/arm-2011.03 目 錄 , 則 需 要 指 定 交 叉 編 譯 目 錄 到/home/ctools/arm-2011.03/bin。具體設(shè)置方法:修改/.bashrc 文件,在 PATH 變量中增加交叉編譯工具鏈的安裝路徑, 然后運行/.bashrc 文件,使設(shè)置生效。運行.bashrc 文件的方法,進入用戶主目錄,輸入. .bashrc 命令(點+空格.bashrc)。在終端輸入 arm-none-并按 TAB 鍵,如果能夠看到很多 arm-none-linux-gnueabi-前綴的命令,則基本可以確定交叉編譯器安裝正確。2.測試工具鏈編寫一個簡單的應用程序文件如
48、hello.c,然后在終端輸入 arm-none-linux-gnueabi-gcchello.c -o hello,編譯hello.c,得到 hello 程序后,使用 file 命令查看其格式。如果得到如上信息,可知 hello 程序是 ARM 格式的文件,arm-none-linux-gnueabi-工具鏈已經(jīng)可以正常使用了。用戶手冊©2013 Guangzhou ZHIYUAN Electronics Stock Co.,.18chenxibinglinux-compiler: $ arm-none-linux-gnueabi-gcc hello.c -o hello chen
49、xibinglinux-compiler: $ file hellochenxibinglinux-compiler: hello$ file hellohello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not strippedchenxibinglinux-compiler: $ arm-none-linux-gnueabi-arm-none-linux-gnueabi-addr2linearm-none-l
50、inux-gnueabi-elfeditarm-none-linux-gnueabi-gdbtui arm-none-linux-gnueabi-ranlibarm-none-linux-gnueabi-ararm-none-linux-gnueabi-g+ arm-none-linux-gnueabi-gprofarm-none-linux-gnueabi-readelfarm-none-linux-gnueabi-as arm-none-linux-gnueabi-gccarm-none-linux-gnueabi-ldarm-none-linux-gnueabi-size arm-non
51、e-linux-gnueabi-c+arm-none-linux-gnueabi-gcc-4.5.2arm-none-linux-gnueabi-nm arm-none-linux-gnueabi-spritearm-none-linux-gnueabi-c+filtarm-none-linux-gnueabi-gcov arm-none-linux-gnueabi-objcopyarm-none-linux-gnueabi-stringsarm-none-linux-gnueabi-cpp arm-none-linux-gnueabi-gdbarm-none-linux-gnueabi-ob
52、jdumparm-none-linux-gnueabi-strip# User specific environment and startup programsPATH=$PATH: /home/ctools/arm-2011.03/bin ç 增加交叉編譯器安裝路徑M3352-128LI&LC廣州致遠電子工控板4.1.4NFS 服務器配置NFS 即網(wǎng)絡文件系統(tǒng)(Network File-System),可以通過網(wǎng)絡,讓不同、不同系統(tǒng)之間可以實現(xiàn)文件共享。通過NFS,可以共享目錄,就像本地磁盤一樣。NFS只是一種文件系統(tǒng),本身并沒有傳輸功能,是基于 RPC(過程調(diào)用)協(xié)議實現(xiàn)的,采用 C/S 架構(gòu)。Linux 開發(fā)中,通常需要在主機上配置 NFS 服務器,將某系統(tǒng)特定目錄共享給目標系統(tǒng)和使用。通過 NFS,目標系統(tǒng)可以直接運行存放于主機上的程序,可以減少對目標系統(tǒng)FLASH 的燒寫,既減少了對 FLASH 損害,同時也節(jié)省了燒寫
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工企業(yè)2025年春節(jié)節(jié)后復工復產(chǎn)工作專項方案 (合計3份)
- 下午考前囑咐囑咐什么?發(fā)言提綱
- 古詩文初賽答案(正稿)
- 《電路原理圖繪制》課件
- 傳統(tǒng)服飾設(shè)計師職責概述
- 鋼鐵結(jié)構(gòu)設(shè)計師職責說明
- 煤炭行業(yè)美工工作總結(jié)
- 特需科護士工作總結(jié)
- 財務工作資金管理總結(jié)
- 專業(yè)技能與教研水平
- 手術(shù)室敏感指標構(gòu)建
- 書法創(chuàng)作設(shè)計方案
- MOOC 軟件工程概論-北京聯(lián)合大學 中國大學慕課答案
- 2023年鐵路工務安全規(guī)則正文
- 生態(tài)安全與環(huán)境風險評估預警機制
- MOOC 傳熱學-西安交通大學 中國大學慕課答案
- 影視劇本創(chuàng)作與改編策劃
- 藥品配送服務應急預案
- 山東省青島市市北區(qū)2023-2024學年七年級上學期期末地理試題
- 2024年東方航空人力資源管理西北分公司招聘筆試參考題庫含答案解析
- 2023年海南省公務員錄用考試《行測》真題和答案解析
評論
0/150
提交評論