目 錄 章節頁碼 事前準備 --------------------------------------------------------- 2 第一章建立 ROM IMAGE ---------------------------------- 3 第二章上傳 ROM IMAGE --------------------------------- 7 ( 一 )Tera Term 設定 ---------------------------------- 7 ( 二 ) 上傳 Image 檔 ----------------------------------- 8 第三章使用操作 ------------------------------------------------- 10 ( 一 )ACT-Sample 操作說明 --------------------------- 10 ( 二 )JVM 操作說明 -------------------------------- 11 附件一上傳 Application ----------------------------------- 13 附件二架設 MIDlet 伺服器 ---------------------------------- 14 1
事前準備 俗語說 工欲善其事, 必先利其器, 我們要開始編譯 uclinux 程式, 事前 準備也是不可少的, 因不同版本的 Make 與 GCC 有可能造成不可預期之錯誤, 以下是系統建議的軟體版本 : ( 一 )Make 可在命令列 (Command Line) 下達 make -v 查詢目前系統使用的 make 版本, 本系統開發使用 GNU Make 3.80 Example: GNU Make 3.80 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ( 二 )GCC 可在命令列下達 gcc -v 查詢目前系統使用的 GCC 版本, 本系統開發建議 gcc version 3.2.3 Example: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/specs Configured with:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable- cxa_atexit --enable-languages=c,c++,f77 --disable-libgcj --host=i386-redhat-linux Thread model: posix gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-55.fc5) 2
第一章建立 ROM IMAGE 1. 將 gvsdt_local_rev.tar 放到 / 底下後再以 tar xvf gvsdt_local_rev.tar 將其 解開 ( 建好後在 usr 目錄下應有 gvsdt 目錄存在 ) 2. 在 /home 底下建立一個目錄, 通常以登入 linux 的使用者名稱來建 此處以 ncnu 為例, 請建好 /home/ncnu 的目錄 3. 將 ncnu.tgz 放到 /home/ncnu 底下後再以 tar xvzf ncnu.tgz 將其解開 4. 切換到 /home/ncnu/os/v-uclinux 底下修改 myenv 這個檔案將 myenv 中有 ncnu 的字改為自己的 account 然後存檔 ( 修改 ROOTDIR=/home/ncnu/os/v-uClinux 為自己的檔案路徑 ) 5. 在 /home/ncnu/os/v-uclinux 底下執行 source myenv 設定好環境變數 6. 在 /home/ncnu/os/v-uclinux 底下執行 make menuconfig 會出現圖 1.1: 圖 1.1 Menuconfig 主畫面 7. 出現圖 1.1 選 Target Platform Selection 3
8. 出現圖 1.2 選擇 Customize Kernel Settings 及 Customize Vendor/User Settings 圖 1.2 目標平台選擇畫面 9. 勾選完畢後選 Exit 回到主畫面如圖 1.3, 然後選 Exit 圖 1.3 Menuconfig 主畫面 10. 出現圖 1.4 選擇 Yes 儲存 kernel configuration 圖 1.4 確認畫面 4
11. 出現圖 1.5 直接選 Exit, 出現圖 1.6 選擇 Yes 儲存 kernel configuration 圖 1.5 設備設定畫面 圖 1.6 確認畫面 12. 出現圖 1.7 直接選 Exit, 出現圖 1.8 選擇 Yes 儲存 kernel configuration, 即完成 設定 圖 1.7 環境參數設定畫面 圖 1.8 確認畫面 5
13. 在 /home/ncnu/os/v-uclinux 底下輸入 nmkb 就會進行整個 os 及 application 的編 譯了 若是輸入 nmkb 後沒反應的話, 表示 myenv 中的設定有錯, 再檢查一次 14. 如果順利的話, 大概 8~10 分鐘後會完成 compiler 完成後在 images 中應該會有以下的檔案 : vmlinuz 可以在 redboot 中更新的 kernel 檔 root.image.jffs2 可以在 redboot 中更新的第一塊 file system, 主要放一些不常更新的程式與檔案 ext.image.jffs2 可以在 redboot 中更新的第二塊 file system, 主要放置 act_sample 此類常更新的程式 目錄中還會有其他檔案, 但上面的檔案一定要有, 這樣才表示 compiler 成功, 若 有 error 可看 /home/ncnu/os/v-uclinux 底下的 mlog 檔看哪邊有錯 15. 後續若有更新 kernel 時可以下 go_kernel 就可以 ;application 則下 go 便可自動 產生 image 檔 16.act_sample 程式放在 /home/ncnu/os/v-uclinux/user/act_sample 底下 在 /home/ncnu/os/v-uclinux/user 還有其他目錄, 則為一些測試程式 如果要單獨 build act_sample 的話, 則進到 /home/ncnu/os/v-uclinux/user/act_sample/ 然後下 make f act_make 就可以 build 出 act_sample 的程式 6
第二章上傳 ROM IMAGE ( 一 )Tera Term 設定 Tera Term 為一 Terminal 程式, 用途有二 :( 1 ) 上傳 image 檔 (2) 做為 console 使用 Tera Term 前, 必需先設定相對應的 JTAG 開發工具環境變數, 如圖 2.1 所 示, 選擇 [Setup] [Serial port], 便會進入圖 2.2 圖 2.1 Tera Term 主畫面 進入視窗後, 請依照下列參數設定 : Port: 依照 USB 轉換版設定, 例如 COM 4 Baud rate( 傳輸資料速率 ): 設定為 460800 Data( 資料傳送位元數 ): 8bit Parity( 同位元檢查 ): None Stop( 停止資料位元數 ): 1 bit Flow control( 流量控制 ): None 圖 2.2 Serial port 設定畫面 7
( 二 ) 上傳 Image 檔 1. 上傳資料前請先將 vmlinuz root.image.jffs2 ext.image.jffs2 三個影像檔 copy 至指定目錄 ( 預設請先將三個 Rom Image 放置 C 槽 ncnu 目錄下,C:\ncnu\) 2. 在 P204 開機時出現提示符號 + 時請立即按下 Ctrl + C 進入機器 Redboot 待命狀態, 如圖 2.3 所示 : 圖 2.3 進入 Redboot 待命狀態 3. 再選擇 [Control] [Macro] 如圖 2.4 所示, 此時選取事先準備好的 ttl 檔 ( 檔案 預設路徑為 c:\ncnu\update_img.ttl) 如圖 2.5 所示 : 圖 2.4 選擇 Macro 指令畫面 圖 2.5 ttl 檔案瀏覽視窗 8
4. 選擇完畢後程式便會自動上傳 Rom Image, 如圖 2.6 所示, 此過程約需十分 鐘 完成畫面如圖 2.7 所示, 上傳完成後只需要重新開機便可開始進入 P204 操作 圖 2.6 資料上傳訊息視窗 圖 2.7 上傳完成畫面 9
第三章使用操作 當 P204 開機後會進行下述兩個流程 :( 一 )ACT-Sample( 二 )JVM ( 一 )ACT-Sample 操作說明測試流程如圖 3.1 所示, 請依照指示輸入按鍵及聲音測試, 圖 3.2 所示為按鍵示意圖 : Tone Test/Melody Test 可利用 Volume Key, 調整音量大小 Vibrator Test 可利用任意按鍵, 啟動或停止振動功能 Backlight Test 可利用 Directional Key( 左 右鍵 ) 調整亮度 進入 Tone / Melody / Vibrator / Backlight Test, 可按下 OFF HOOK 進行下一項程序 START Number Key Test Function Key Test Directional Key Test / Volume Key Test Tone Test Melody Test Vibrator Test Backlight Test END 圖 3.1 ACT-SAMPLE 流程 圖 3.2 按鍵示意圖 當功能測試完成後, 便會進入 JVM 畫面 10
( 二 )JVM 操作說明 1.JVM 啟始畫面如圖 3.3 所示, 選擇 [Download New]: 圖 3.3 JVM 啟始畫面 2. 進入後如圖 3.4 所示, 請依照指示輸入 JAVA MIDlet 檔案主機位置, 並選擇 [Menu] [Go] 進入下載, 如圖 3.5 所示 : 輸入主機位置 輸入法模式 圖 3.4 輸入網址畫面 圖 3.5 選擇下載 JVM 操作說明 : Key Center: 確認鍵 OFF HOOK 鍵 : 強制結束 JVM ON HOOK 鍵 : 清除字元 # 字鍵: 空一格 * 字鍵: 更換輸入法 ( 輸入法切換順序為 ) ABC: 大寫英文字母模式 Abc: 小寫英文字母模式 123: 數字模式 SYM: 符號表 11
3. 正確進入主機的話可看見 MIDlet 軟體清單如圖 3.6 所示, 可自行選擇 MIDlet 下載, 選擇後按下 [Install] 便會出現確認視窗如圖 3.7, 此時再次按下 [Install] 即可 開始下載安裝 圖 3.6 MIDlet 選擇畫面 圖 3.7 安裝確認畫面 4. 安裝成功後可發現主畫面多出一選項 MIDlet 選項, 選擇後按下確認鍵 ( 或選擇 [Menu] [Launch]) 便可執行 MIDlet 程式, 之後欲下載其他應用程式只需要重覆上述流程即可 圖 3.8 完成畫面 5. 若離開 JVM 則 P204 將進入 閒置狀態, 此時可透過 Console 進行程式操作 12
附件一上傳 Application 1. 首先確認 P204 為 閒置狀態, 此時可透過 Console 下達命令 2. 利用 TFTP 將檔案上傳至 P204, 如圖 1 當成功後會出一訊息文字告知上傳動作已完成 TFTP 指令說明 tftp i <IP 位址 > put < 檔案名稱 > 範例 : tftp -i 192.168.2.103 put act_sample 圖 1 TFTP 上傳畫面 3. 執行程式上傳的檔案預設會放置於 /tmp 目錄下, 記得先以 chmod 改變檔案屬性, 再執行程式, 如圖 2 為 Console 畫面, 可看出上傳後程式會放置 /tmp 目錄下 Chmod 指令說明 Chmod < 檔案屬性 > < 檔案名稱 > 範例 : Chmod 755 act_sample 圖 2 Console 畫面 13
附件二架設 MIDlet 伺服器 本文件筆者以架設 Apache Server 為範例做一說明 : 1. 首先至 http://www.apache.org/ 下載 Apache Server 軟體, 截至本文撰寫完成最 新版本為 2.2.4 圖 1 Apache Server 下載頁面 2. 下載完成後便可開始安裝, 安裝完成後可發現 [ 程式集 ] 中新增了一項 Apache 程式選項如圖 2 所示, 此時可先啟動 Apache Server 服務測試, 檢查是否安裝設定正確, 啟動後可利用瀏覽器於網址列上輸入 http://127.0.0.1, 檢查是否能正確開啟網頁 圖 2 啟動 Apache Server 3. 安裝完成後 Apache Server 預設並無提供 MIDlet 元件下載功能, 因此我們必 須手動修改 mine.types 描述檔 ( 請於 Apache 安裝目錄搜尋 conf 子目錄中 14
mine.types 檔案 ) 加入下列兩行, 定義 MIDlet 檔案屬性, 如圖 3 所示 : application/java-archive jar text/vnd.sun.j2me.app-descriptor jad 圖 3 新增文件定義檔 定義完成後記得重新啟動 Apache Server! 4. 如此一來伺服器便有支援 MIDlet 下載能力, 接下來只要將編譯好的 Java 程 式 (jad 及 jar 檔案 ) 放上 : 其中 jar 檔為程式主檔案 ;jad 則為程式描述檔, 之後再利用一網頁做為連結即可 如圖 4 為 MIDlet 下載流程 圖 4 MIDlet 網路下載流程 15