Jollen 的 Embedded Linux 訓練方案
|| Embedded Linux 教育訓練 | 專用實驗板 | Jollen-Kit! Builder | 課程特別企劃 ||
more: Jollen 的 Embedded Linux 系列著作 | Jollen's Blog

Jollen-Kit! 2006

立即掌握 Embedded Linux 關鍵技術

課程學員專用 Embedded Linux / ARM9 訓練平臺

立即下載 JKBuilder 快速開發平臺並參與研發


Jollen-Kit! 2006 是什麼?

簡稱 JK2410 - Jollen-Kit! 2006 based on SMDK2410

由 www.jollen.org 所設計與製造之 Embedded Linux 完整學習平臺

請看「Jollen-Kit! 2006 快速導覽

Embedded Linux Training Board for General Purpose PDA/Smart Phone

JK2410 使用 SMDK2410 Reference Design

  • SMDK2410 是 Samsung MCU Development Kit for S3C2410 的縮寫

  • SMDK2410 是非常完整的 ARM9 Reference Design

  • Samsung 官方提供的技術資料相當完整

  • MDS Technology 與 MIZI Research 是 SMDK2410 的主要開發者

  • SMDK2410 相當普及、取得容易

JK2410 採用 Embedded Linux

  • Linux kernel 2.4.18 (rmk7-pxa1-mz5) 是由 MIZI Research 所提供,JK2410 由 MIZI Research 下載 kernel 後,修改了 TFT-LCD Panel 的 framebuffer 驅動程式,目前已經成功在 JK2410 Training Board 上執行。

  • 為了讓我們的 Embedded Linux 課程具備連貫性,jollen.org 自行移植了 U-Boot 至 JK2410,捨棄 Samsung 所提供的 vivi 開機程式。U-Boot 1.1.3 原本就支援 SMDK2410 的平臺,jollen.org 做了相當大幅度的修改,並且也將 TFT-LCD Panel 的驅動程式移植進來,開機後可顯示我們的 boot logo。SMDK2410 廣為使用的 vivi 開機程式也能在 JK2410 上使用。

  • Shared library 是使用 glibc 2.3.3,這是利用 crosstool 所建立的。

  • Base root filesystem 是基於 Busybox 1.00 所建立的可開機映像檔。

提供 GNU ARM Cross Toolchain

  • GCC 3.4.1

  • GNU binutils 2.15

  • glibc 2.3.3

提供 JK2410 Builder (JKBuilder)

快速進入開放源碼 (Open Source) 移植的最佳教學平臺!透過 CVS 與所有學員分享您的成果!

JKBuilder 是一個能快速建構 Embedded Linux/ARM9 應用的平臺,能幫助您快速解決工作上的問題!

JK2410 介面 (Interface) 規格

  • Serial Port x 1

  • USB Host Port x 1, Device Port x 1

  • SD/MMC 卡

  • ICE 介面

  • SPI

  • I2C with HOLTEK 24LV08

  • Audio In/Out/Microphone

  • GPIO 按鈕 (外部中斷) x 12

  • GPIO 介面 x 1 組 (16-pin Pin House)

  • 2.83” 26萬2千色 TFT-LCD (手機規格)

Jollen-Kit! 2006 是非常積極進行中的專案
所有紀錄與更新將於 http://forum.jollen.org 同步發佈。

下載 Embedded Linux 嵌入式系統--原理與實務(第二版)光碟檔案

  • Linux kernel 2.4.18 for jk2410:uimage0320.img - 2006/03/20 (Stable)

  • 可開機的 Base root filesystem: urootfs2.img -2006/03/10 (Busybox 1.10 with tftp)

  • GNU cross toolchain:arm-9tdmi-linux-gnu.tar.gz (armpath by Joe)

    安裝方法:
       # cd /                                                             (切換到 '/' 根目錄)
       # tar jxf <路徑>/arm-9tdmi-linux-gnu.tar.gz      (將檔案解開)

  • 其它工具與原始碼下載

專題實作

  • Madplay:由我們的課程,您將可以學習到如何移植一個 MP3 撥放系統到 Jollen-Kit! 2006。

  • Microwindows:並且完整了解 Microwindows 的全部移植過程。您將可以在 Jollen-Kit! 2006上撥放多媒體檔案。課程並包含 Microwindows 的 Touch Screen 移植,學員將能了解如何修改 Microwindows,以支援 Jollen-Kit! 2006 的手機面板。

* Microwindows 已改名為 Nano-X (Window System)

U-Boot 變更記錄

2005/11/29

  • The first official release version for Jollen-Kit! 2006.

  • U-Boot boots up from NOR flash and NAND flash done.

2005/12/21

  • Porting: LCD Panel Driver. Done.

  • Porting: MMU initialization. Done.

  • Protect NOR flash from crashed.

  • Initialize PWM Timer 0.

2006/01/08

  • The second official release version for Jollen-Kit! 2006.

  • Boot logo was Done.

技術文件

>> 如何使用本站提供的 Linux kernel & root filesystem ?

下載 kernel & ramdisk !! And GO !! 請在 u-boot 命令模式下輸入以下指令 (請確認 tftpboot 的環境是否已 read):(範例)

jollen.org# tftpboot 32000000 urootfs.img; tftpboot 30F00000 uimage.img; bootm 30F00000 32000000

>> 使用 kernel 2.4 與 kernel 2.6。

下載本站提供的 kernel 2.4 for JK2410 時,請在 u-boot 命令模式下設定 bootargs 變數,才能傳遞正確的開機參數給 kernel:

jollen.org# set bootargs root=/dev/ram0 rw console=ttyS0,115200 mem=64M ramdisk=16384

若使用 kernel 2.6,則 kernel 開機參數應改為:

jollen.org# set bootargs root=/dev/ram0 rw console=ttySAC0,115200 mem=64M ramdisk=16384

!!請注意!!base root filesystem 是有區分 for kernel 2.4 與 for kernel 2.6 的,請搭配正確的 kernel 版本使用!

>> 使用 DHCP。

網站提供的免費 root filesystem 支援用戶端 DHCP 功能,只需要接上網路線再執行以下指令即可:

~ # udhcpc -i eth0 -s /etc/udhcpc/default.script

板子便能自動向 DHCP server 取得 IP。

>> 執行 Microwindows。

開機後執行:

~ # export FRAMEBUFFER=/dev/fb/0
~ # nano-X &
~ # nanowm &
~ #
nxcal &

>> 在板子上撥 MP3。

首先,先安裝驅動程式:

~ # insmod soundcore
~ #
insmod s3c2410-uda1341

再使用 /bin/madplay 放 mp3 即可,例如:

~ # madplay -m ./demo.mp3

Training 課程實作問題集

Q: 我依照講義完成 Busybox 移植並將 root filesystem 開機後,會出現以下錯誤訊息:

kmod: failed to exec /sbin/modprobe -s -k binfmt-464c, errno = 8

A: 請檢查 Busybox 的 Makefile STRIP 變數。

Embedded Linux Study Suite, v3.0, 2006/09/26
Top   |   Copyright(c) 2004-2007 www.jollen.org