简介
Tiny6410是一款以ARM11芯片(三星S3C6410)作为主处理器的嵌入式核心板,该CPU基于ARM1176JZF-S核设计,内部集成了强
大的多媒体处理单元,支持Mpeg4,
H.264/H.263等格式的视频文件硬件编解码,可同时输出至LCD和TV显示;它还并带有3D图形硬件加速器,以实现OpenGL ES 1.1
& 2.0加速渲染,另外它还支持2D图形图像的平滑缩放,翻转等操作。
Tiny6410采用高密度6层板设计,尺寸为64 x
50mm,它集成了128M DDR RAM,256M/1GB SLC Nand
Flash存储器,采用5V供电,在板实现CPU必需的各种核心电压转换,还带有专业复位芯片,通过2.0mm间距的排针,引出各种常见的接口资源,以供
不打算自行设计CPU板的开发者进行快捷的二次开发使用。
Tiny6410SDK是采用Tiny6410核心板的一款参考设计底板,它主要帮助开发者以此为参考进行核心板的功能验证以及扩展开发。该底板具有三
LCD接口、4线电阻触摸屏接口、100M标准网络接口、标准DB9五线串口、Mini USB 2.0接口、USB Host
1.1、3.5mm音频输入输出口、标准TV-OUT接口、SD卡座、红外接收等常用接口;另外还引出4路TTL串口,另1路TV-OUT、SDIO2接
口(可接SD WiFi)接口等;在板的还有蜂鸣器、I2C-EEPROM、备份电池、AD可调电阻、8个中断式按键等。
在布局上安排上,我们尽量考虑把常用尺寸的LCD模块能够固定在底板上,比如3.5”,4.3”LCD, 7”LCD等,这样用户在使用时不至于把各种电线搅在一起,更增加了开发套件的便携性。
我们还充分地发挥了6410支持SD卡启动这一特性,使用我们精心研制的Superboot,无需连接电脑,只要把目标文件拷贝到SD卡中(可支持高达
32G的高速大容量卡),你就可以在开发板上极快极简单地自动安装各种嵌入式系统(WindowsCE6/Linux/Android/Ubuntu
/uCos2等);甚至无需烧写,就可以在SD卡上直接运行它们! 核心板说明 开发底板说明 Tiny6410的开发参考板提供如图所示,光盘中有该它的PCB文件(Allegro格式)
操作系统支持 Linux2.6.28.6 + Qtopia-2.2.0 + Qt-Extended-4.4.3 + QtE-4.7.0 WindowsCE.NET 6.0(R3) Android 2.2 Ubuntu-0910
完全开源的U-boot 三星公司为6410系统提供了带有USB下载功能的U-boot,我们在此基础上增强和改进了它的功能,并把它完全开源出来,以供广大嵌入式爱好者学习研究使用,主要特性如下: 增加了下载菜单,类似Superboot的USB下载菜单 增加了SD卡启动配置 支持直接下载烧写yaffs2文件系统映像 支持烧写WindowsCE BootLoader之Nboot 支持烧写WindowsCE映像的功能 支持烧写单文件映像文件,就是通常所说的裸机程序 支持返回原始shell 说明:大部分声称完全开源Bootloader的6410开发板,也都是三星提供的U-boot稍作改动而来的,所有开源的U-boot目前均无法烧写到SDHC卡(超过2G的大容量SD卡)中使用。
带菜单下载功能的开源U-Boot 获取U-boot源代码 附带光盘Linux目录下:u-boot-mini6410-20100730.tar.gz(请以最新日期版本为准) 编译适用于SD卡启动的U-boot 使用缺省配置文件编译适用于SD卡启动的U-boot,最后会生成U-boot.bin,它和光盘中的U-boot_sd.bin是一致的 #cd /opt/FriendlyARM/mini6410/linux/u-boot-mini6410 #make mini6410_sd_config;make
编译适用于Nand Flash启动的U-boot 使用缺省配置文件编译适用于SD卡启动的U-boot,最后会生成U-boot.bin,它和光盘中的U-boot_nand.bin是一致的 #cd /opt/FriendlyARM/mini6410/linux/u-boot-mini6410 #make mini6410_nand_config;make 适合企业批量生产的Superboot 除
了完全开源的U-boot,我们花重金为企业用户设计了功能超强的Superboot,
它支持从SD卡直接安装或运行系统,无需USB线、串口线,而且安装系统的速度极快,平均1.8Mbyte/秒,因此它十分适合于企业大批量生产使
用;Superboot可以支持普通的SD卡和高速大容量SDHC卡(最大为32G),目前通过Superboot可以安装或运行以下几种系统: Linux: 125M,烧写仅需70秒 WindowsCE6: 45M,烧写仅需25秒 Android: 80M, 烧写仅需45秒 Ubuntu: 800M,直接复制到SD即可运行 UserBin: 裸机程序,或简易的单文件系统映像,如uCos, RT-Thread等;可以烧写到Nand中,也可以在配置文件中指定加载地址直接运行。 说明:Superboot是由友善之臂精心研制开发的,并不提供源代码,任何企业或个人都可以免费使用它。 迄今最好用,功能最强的Bootloader(对比)
Bootloader for 6410对比
对比项 |
友善之臂Superboot |
友善之臂U-Boot |
其他开源的U-Boot |
简单易用的下载菜单 |
支持 |
支持 |
有的支持,但不完善 |
USB下载StepLoader,如Nboot等 |
支持 |
支持 |
支持 |
USB下载Linux内核 |
支持 |
支持 |
支持 |
USB下载Yaffs2文件系统映像 |
支持 |
支持 |
有的支持 |
USB下载UBIFS文件系统映像 (一般Android系统用) |
支持 |
不支持 |
不支持 |
USB下载EBOOT.nb0 |
不需要借助Eboot,所以不支持 |
不需要借助Eboot,所以不支持 |
支持,借助Eboot烧写WinCE的步骤很复杂 |
USB下载WindowsCE映像NK.bin |
支持 |
不支持 |
不支持 |
USB下载WindowsCE映像NK.nb0 |
不需要,所以不支持 |
支持 |
不支持 |
USB下载WindowsCE开机图片 |
支持(直接使用bmp文件,不需要转换) |
不支持 |
有的可以支持,但需要事先手工转换 |
USB下载烧写裸机程序 |
支持 |
支持 |
支持 |
Linux启动参数设置 |
支持 |
支持 |
支持 |
普通SD卡(2G以内) |
支持 |
支持 |
支持 |
高速大容量SD卡(FAT32格式) |
支持 |
不支持 |
不支持 |
SD卡脱机烧写StepLoader如Nboot等 |
支持 |
不支持 |
不支持 |
SD卡脱机烧写Linux内核 |
支持 |
不支持 |
不支持 |
SD卡脱机烧写Yaffs2映像 |
支持 |
不支持 |
不支持 |
SD卡脱机烧写UBIFS映像 (一般Android系统用) |
支持 |
不支持 |
不支持 |
SD卡脱机烧写WindowsCE映像NK.bin |
支持 |
不支持 |
不支持 |
SD卡脱机烧写WindowsCE开机图片 |
支持(直接使用bmp文件,不需要转换) |
不支持 |
不支持 |
SD卡脱机烧写裸机程序 |
支持 |
不支持 |
不支持 |
SD卡直接运行Linux全系统 |
支持 |
不支持 |
不支持 |
SD卡直接运行WindowsCE全系统 |
支持 |
不支持 |
不支持 |
SD卡直接运行Ubuntu全系统 |
支持 |
不支持 |
不支持 |
SD卡直接运行Android全系统 |
支持 |
不支持 |
不支持 |
SD卡直接运行裸机程序 |
支持 |
不支持 |
不支持 |
SD快速读取和烧写系统(见注释1) |
支持 |
不支持 |
不支持 |
注释1:因为技高一筹,我们通过SD卡烧写系统的速度无与伦比,可以达到1.8MB/s 关于SD烧写器
完全空白的SD卡是不能直接启动6410开发板的,必须先在PC上使用特殊的烧写软件把BIOS写入SD卡才可以,并且写入的这个BIOS是无法在电脑上
直接看到的。三星公司已经提供了这样烧写程序:IROM_SD_Fusing_tool.exe,你可以在光盘中找到它的源代码,该软件只是三星公司为初
期开发者提供的一个简易的烧写器,它基于属于一个实验室产品,虽然能用,但有很多局限性和不安全性,目前大部分6410开发板均直接使用这个软件,我们根
据SD卡启动6410的原理,开发了一个更强大更安全的SD-Flasher.exe,界面如有图所示,并在此和三星原始的烧写器做一个简单的对比,如下
表.
对比项 |
IROM_SD_Fusing_tool.exe |
SD-Flasher.exe |
出品 |
三星,属于实验品 |
友善之臂,免费的商业级软件 |
运行平台 |
仅支持WindowsXP |
可以支持WindowsXP/Vista/Windows7 |
支持的SD卡种类 |
针对普通卡和高速卡,分为两个版本,容易混淆,效率低下 |
同时支持普通卡和高速卡,统一,高效 |
自动扫描SD卡 |
不支持,需手工选择,容易造成误选为硬盘从而破坏主机数据 |
支持,更加安全 |
批量烧写 |
不支持,每次只能烧写一个SD卡 |
支持,通过连接读卡器,可以批量烧写 |
烧写模式 |
强制烧写 |
- 在WindowsXP下,为强制烧写
- 在Vista/Windows7下,为安全烧写(需先分割)
|
磁盘分割(见注释1) |
不支持 |
支持(需为Vista/Windows7系统) |
注释1:一般市场上买到的SD卡为全盘FAT32格式,如果卡中存放了很多数据,强制烧写就有可能会不知不觉中破坏这些
数据;基于此原因考虑,我们在Vista/Winows7中,先把SD卡自动分割为普通的FAT32格式区(自动命名卷标为“FriendlyARM)和
无格式区(占130M)两部分,烧写软件将会依据卷标名称作为标志,把bootloader烧写到无格式区,这样就不会破坏普通FAT32格式区中的数据
了。 实际上,Vista/Windows7系统本身的安全性很高,普通用户是无法在Vista/Windows7系统上强制烧写SD卡的,因此必
须要先分割才能写入;另一方面,鉴于使用WindowsXP的用户可能会嫌麻烦不想升级为Windows7,根据一些网上的调查数据,这部分人还是占很大
数量的,“嫌麻烦”也表明这部分用户凡事都希望尽快搞定,因此我们并没有在WindowsXP中采用“先分割,再烧写”这种更加安全的做法,而是根据习
惯,采用了和三星一样的“强制烧写”的模式。 快速安装或运行系统简易步骤 要使用SD卡脱机安装或者运行各种系统,需要先向已经烧好superboot的SD卡中拷贝一些必要的系统文件等,这其中包含一个名为“FriendlyARM.ini”的配置文件,通过它,你可以选择系统类型及相关文件。
下面我们就先体验一些极速安装或运行系统的简单步骤:
快速安装WindowsCE系统 说明:开发板出厂时内置的系统为Linux,为了证明我们确实更新了系统,现在特意为它安装WindowsCE 6,在后面的步骤,你还可以把它恢复到Linux,请不必担心。 Step1: 把光盘中的”images”文件夹拷贝到SD卡中,双击打开”images\FriendlyARM.ini”文件,找到”OS=Linux”,并改为”OS=CE6”,保存修改,取出SD卡插到开发板上。 Step2: 把开发板S2开关设置为”SDBOOT”,并插入SD卡 Step3: 屏住呼吸,上电开机,这时你可以听到开发板上蜂鸣器“滴”的一声,同时板上的LED4开始点亮并闪烁 Step4: 静听秒表跳动的声音,可以注意到LED3,2,1逐个开始闪烁亮起,直到听到蜂鸣器“滴滴”两声,所有LED满格亮起,随后不停的跑马跳动,就说明系统已经烧写完毕,整个过程不到20秒。 Step5: 把开发板S2开关设置为”NAND”启动,这时重启系统就可以看到WindowsCE已经被安装好了。
快速更新为Android系统 或许你对时下流行的Android更感兴趣,安装它也很容易,接上面的步骤,如下: Step1: 把SD卡插入电脑,双击打开”images\FriendlyARM.ini”文件 Step2: 找到”OS=CE6”,并改为”OS=Android”,保存修改,取出SD卡插到开发板上。 Step3: 上电开机,同样的“滴”一声开始,同样的“滴滴”两声结束,更新完毕,整个过程不到1分钟。 Step4: 把开发板S2开关设置为”NAND”启动,这时重启系统就可以看到Android已经被安装好了。
注意:如果你听到急促的“滴滴”声,或者看四个LED并行闪烁,那说明你可能拼写出错了。
快速恢复为Linux系统 或许你已经试玩了一下Android,那确实看起来很花哨,但作为学习开发,它毕竟还是以Linux为基础的,所以,我们还是先恢复到古老而传统的Linux上吧,如下: Step1: 把SD卡插入电脑,双击打开”images\FriendlyARM.ini”文件 Step2: 找到”OS=Android”,并改为”OS=Linux”,保存修改,取出SD卡插到开发板上。 Step3: 上电开机,同样的“滴”一声开始,同样的“滴滴”两声后更新完毕,因为我们制作的Linux包含了Qtopia-2.2.0和QtE-4.6.1两个系统,所以映像文件比较大,烧写时间比较长,整个过程1分钟左右。 Step4: 把开发板S2开关设置为”NAND”启动,这时重启系统就可以看到Linux已经被安装好,并且出现了校正界面。 注意:如果你听到急促的“滴滴”声,或者看四个LED并行闪烁,那说明你可能拼写出错了
在SD卡中直接运行Ubuntu系统(800M) 在这ARM盛行的时代,Ubuntu也不免来凑凑热闹,但是它太大了(500M),我们认为没有必要把它烧写到NAND中,你可以直接在SD卡上运行它,如下: Step1: 把SD卡插入电脑,双击打开”images\FriendlyARM.ini”文件 Step2: 找到”OS=Linux”,并改为”OS=Ubuntu”,;找到”Action=Install”,并改为”Action=Run”;保存修改,取出SD卡插到开发板上。 Step3: 上电开机,现在你就可以玩一玩Ubuntu了,你可以修改里面的设置并保存,它们不会丢失,除非你的卡丢失了;它们一般也不会破坏NAND里面的内容,除非有特殊的软件是专门针对NAND操作的。 注意:如果你听到急促的“滴滴”声,或者看四个LED并行闪烁,那说明你可能拼写出错了
操作系统体验篇
Linux篇 集成Qtopia-2.2.0、Qtopia-Phone-4.4.3 、QtE-4.7.0 、SMplayer硬解码播放器、3G无线上网、GPRS上网和短信群发应用!
Qtopia-2.2.0, Qtopia-Phone-4.4.3和QtE-4.7.0简介
迄今为止,友善之臂于2009.4基于
2440系统开发的Qtopia-2.2.0系统,在实用性方面,依然保持业界领先地位,无人能及。它的大部分应用已经被移植到6410系统,鉴于
4.3"LCD使用的是480x272分辨率,之前的3.5"LCD使用的是240x320分辨率,这就造成有些应用在长宽布局上无法点击到,因此我们重
新调整了几乎每个应用的界面布局,它们可以自动根据分辨率来调整布局,如下图所示:
应用程序可根据不同的分辨率自动调整布局(仅限于友善之臂自主开发的应用) 现
在,有很多人移植和使用最新的QtE-4.7.0(以下简称Qt4),但该版本并没有一个桌面管理系统,这导致每次只能启动一个Qt4应用程序,这对于开
发板产品来讲是很不方便的。目前我们可以把Qt4程序作为Qtopia桌面系统的一个应用,点击Qt4的图标就可以方便的运行它了,当Qt4程序关闭时,
又返回到Qtopia系统,通过这样的无缝切换运行,你就可以自由地开发Qt4或Qtopia2程序了。需要说明的是,通过这样的方法运行Qt4时,它和
Qtopia2是没有任何关联的,这就保证了Qt4应用的纯洁性。
另外,我们还为喜欢Qtopia
Phone版本(也就是Qt-Extended-4.4.3,我们称之为Qtopia4)的用户准备了一份快餐,无论是ARM版本还是X86版本的
Qtopia4,你都可以使用我们精心制作的一键编译脚本,轻松地把它们编译出来,而不需要上网到处扒资料;更令你无法想象的是,Qtopia4也可以和
Qtopia2互相切换运行,而无需另外重启或重烧系统。
Qtopia-2.2.0, Qtopia4和QtE-4.6.3共存的直接表现就是整个系统变得很庞大,加上一些多媒体示例,整个目标文件系统大约有210MB左右
如果你只需要Qtopia-2.2.0,只需删除目标文件系统中的/usr/local/Trolltech目录和/opt/Qtopia4.4.3目录就可以了 如果你只需开机运行Qtopia4系统,只要把/etc/init.d/rcS中的"/bin/qtopia &"改为"/bin/qtopia4 &"就可以了 如果你只需开机运行Qt4系统,只要把/etc/init.d/rcS中的"/bin/qtopia &"改为"/bin/qt4 &"就可以了 如果你只想要一个基本的无图形界面的系统,只需删除以上3种Qt图形系统所对应的目录就可以了 注:我们不抗拒任何新的系统出现,但希望找到更加简单易用的方式使用它,因为大部分技术人员最终面向的是不需要了解技术的终端用户,这就需要有比较好的用户体验,在这方面,我们需要不断的尝试摸索。 Linux内核特性 三星公司基于Linux-2.6.28.6内核对6410系统做了比较完整的移植,其中包含了最重要的多媒体驱动。我们在此基础上稍作调整,以更好的适应Mini6410。
设备或其他 驱动程序源代码在内核中的位置(以Linux-2.6.28.6为基准) 开发板上对应的设备名 说明 1 yaffs2文件系统 fs/yaffs2 默认目标文件系统采用的就是yaffs2 2 UBIFS文件系统 fs/ubifs 3 EXT3文件系统 fs/ext3 4 LCD驱动 drivers/video/samsung/s3c_mini6410.c /dev/fb0 该源代码中包含了mini6410所配各种LCD模块所需的关键参数设置 5 CMOS摄像头 drivers/media/video/samsung/fimc/ov965x.c /dev/camera 6 万能USB摄像头 drivers/media/video/gspca /dev/video0 该目录包含了大部分常见的USB摄像头驱动 7 USB转串口 drivers/usb/serial/pl2302.c /dev/ttyUSB0 同目录下还包含了其他的USB转串口驱动,用户可根据实际情况,自行配置内核以增加所需的驱动 8 USB鼠标和键盘,扫描器 drivers/hid/usbhid USB鼠标:/dev/input/mice USB键盘: /dev/input/event 目前的Qtopia尚不支持USB鼠标和触摸共存,这与内核版本有关,以后升级内核后可以解决此问题。 9 LED drivers/char/mini6410_leds.c /dev/leds 10 按键 drivers/char/mini6410_buttons.c /dev/buttons 11 I2C-EEPROM drivers/i2c /dev/i2c/0 12. PWM控制蜂鸣器 drivers/char/mini2440_pwm.c /dev/pwm 13 ADC转换 暂无 14 LCD背光 drivers/video/mini6410_backlight.c /dev/backlight 15 看门狗 drivers/watchdog/s3c2410_wdt.c /dev/watchdog S3C6410的看门狗驱动和S3C2440是通用的 16 触摸屏 drivers/input/touchscreen/s3c-ts.c /dev/input/event0 17 优盘支持 drivers/usb/storage /dev/udisk 18 MMC/SD卡 drivers/mmc/core /dev/sdcard 支持高速大容量SD卡,最大可达32G 19 NAND Flash drivers/mtd/nand /dev/mtdblock2 20 WM9714音频驱动 sound/soc/s3c64xx /dev/dsp :放音或者录音 /dev/mixer : 音量调节 WM9714驱动实际为WM9713 21 实时时钟RTC drivers/rtc/rtc-s3c.c /dev/rtc RTC是2440本身具有的功能 22 串口(含4个串口) drivers/serial/s3c6400.c /dev/ttySAC0,1,2,3 6410自带3个串口 23 USB无线网卡 drivers/net/wireless/ eth0 24 DM9000网卡驱动 drivers/net/dm9000.c wlan0 25 TV-OUT驱动 drivers/media/video/samsung/tv 26 3D图形加速驱动 drivers/media/video/samsung/g3d 27 2D图形加速驱动 drivers/media/video/samsung/g2d 28 jpeg解码驱动 drivers/media/video/samsung/jpeg 29 图像旋转翻转驱动 drivers/media/video/samsung/rotator 30 后置处理驱动 drivers/media/video/samsung/post 31 内置视频解码驱动 drivers/media/video/samsung/mfc10 32 DM9000网卡驱动 drivers/net/dm9000.c
文件系统特性 类别 说 明 备注 busybox 版本:busybox-1.13.3 集成命令集: addgroup, adduser, adjtimex, ar, arp, arping, ash, awk, basename, bbconfig, blkid, bunzip2, bzcat, bzip2, cal, cat, catv, chattr, chgrp, chmod, chown, chroot, chrt, chvt, cksum, clear, cmp, comm, cp, cpio, crond, crontab, cut, date, dc, dd, deallocvt, delgroup, deluser, depmod, df, dhcprelay, diff, dirname, dmesg, dnsd, dos2unix, du, dumpkmap, echo, ed, egrep, env, ether-wake, expand, expr, fakeidentd, false, fbset, fdflush, fgrep, find, findfs, fold, free, freeramdisk, fsck, ftpget, ftpput, fuser, getopt, getty, grep, gunzip, gzip, halt, hd, head, hexdump, hostid, hostname, httpd, hwclock, id, ifconfig, ifdown, ifup, inetd, init, insmod, install, ip, ipcalc, ipcrm, ipcs, kbd_mode, kill, killall, killall5, klogd, last, length, less, linuxrc, ln, loadfont, loadkmap, logger, login, logname, logread, losetup, ls, lsattr, lsmod, lzmacat, md5sum, mdev, mesg, microcom, mkdir, mkfifo, mknod, mktemp, modprobe, more, mount, mountpoint, mv, nameif, nc, netstat, nice, nmeter, nohup, nslookup, od, openvt, passwd, patch, pgrep, pidof, ping, pipe_progress, pivot_root, pkill, poweroff, printenv, printf, ps, pscan, pwd, rdate, rdev, readahead, readlink, readprofile, realpath, reboot, renice, reset, resize, rm, rmdir, rmmod, route, rtcwake, run-parts, runlevel, rx, script, sed, seq, setconsole, setfont, setkeycodes, setlogcons, setsid, sh, sha1sum, showkey, sleep, sort, split, start-stop-daemon, stat, strings, stty, su, sulogin, sum, switch_root, sync, sysctl, syslogd, tac, tail, tar, tcpsvd, tee, telnet, telnetd, test, tftp, tftpd, time, top, touch, tr, traceroute, true, tty, ttysize, udhcpc, udhcpd, udpsvd, umount, uname, uncompress, unexpand, uniq, unix2dos, unlzma, unzip, uptime, usleep, uudecode, uuencode, vconfig, vi, vlock, watch, wc, wget, which, who, whoami, xargs, yes, zcat, zcip 库文件 版本:glibc-2.10.1 采用arm-linux-gcc-4.4.1 with EABI编译器编译制作 三种Qt图形界面共存,无缝切换 版本:Qtopia-2.2.0 & QtE-4.6.3 经典的Qtopia-2.2.0 QtE-4..7.0 传统的Qtopia-2.2.0 硬解码播放器 说明: ■ 最好用的Qtopia系统 不仅仅是移植了Qtopia-2.2.0,我们自主开发了很多实用的小程序: * 语言设置(Qtopia-2.2.0自带的并不起作用) * 万能摄像头拍照程序 * GPRS拨号上网,短信单发,短信群发 * CMOS摄像头动态预览并拍照 * 串口助手:支持USB转串口,支持字符模式和16进制显示 * 设置开机自动运行程序:所有Qtopia用户程序均可以设置为开机自动运行 * 自动挂载MMC/SD卡和优盘 * 录音(Qtopia-2.2.0自带的不能正常使用) * AD转换、按键测试、LED测试、I2C-EEPROM读写测试等等 * 3G无线上网,GPRS上网,短信群发等等
注意:为了保持我们的竞争优势,防止抄袭,我们自主开发的图形应用不提供源代码,平台性的东西则毫无保留
■ 完全开放源代码的平台 Qtopia本身有诸多不足之处,我们为此对原始代码做了很多调整和补充,比如消除待机闪烁光标,自动调用tslib的校正程序,真正实现关机和重启功能等,还有为适应统一编译器所做的调整,所有这些都是以源代码方式提供的。 网络相关 常用命令:ifconfig, ping, telnet, ftp 网络服务:boa, ftpd, telnetd 无线网络工具命令:iwlist, iwconfig 实用测试程序 buttons : 按键测试,对应的驱动为中断方式,可同时按下多个按键 均为友善之臂原创或移植,并提供源代码 led : led测试 adc-test : 调节开发板上的W1可调电阻,可进行ad转换测试, 它连接了CPU自带的AD通道 AIN0 pwm_test :运行它可以调节控制开发板上的蜂鸣器发声频率 i2c :运行i2c -w 可以把00-FF逐字写入EEPROM,运行i2c -r可以从EEPROM读出地址00-FF中的数据 camtest : 接上CMOS 摄像头模块CAM130,可以在LCD上动态预览拍摄画面 armcomtest : 一个简易的串口终端程序,相当于简化的minicom led-player : 通过网页控制led的后台程序 madplay : 命令行的mp3播放器 sz,rz,sb,rb等工具集:通过串口和PC传送文件的标准UNIX工具 tv-test: 测试电视输出 (暂无源代码) multimedia-test : 多媒体播放测试 (暂无源代码) 演示媒体 视频:panda.mpg 10MB 演示媒体均位于开发板的“/root/Documents”目录 图片:girl.jpg free.png sunflower.bmp 分别代表三种图片格式的示例 音乐:viva-la-vida.mp3 4.8MB 目标文件系统大小 总计:120MB 制作工具 mktools:可以制作yaffs2/ubifs/ext3文件系统映像,以便烧写或运行 精彩实用的Qtopia-2.2.0, Qt-Extended-4.4.3和QtE-4.7.0 基于6410平台的Qtopia-2.2.0, Qt-Extended-4.4.3和QtE-4.6.3平台需要使用arm-linux-gcc-4.4.1编译器在Fedora 9平台下编译,源代码包中有build-all编译脚本,详见手册中的相关说明。
精彩实用的Qtopia-2.2.0, Qt-Extended-4.4.3和QtE-4.7.0
基于6410平台的Qtopia-2.2.0, Qt-Extended-4.4.3和QtE-4.6.3平台需要使用arm-linux-gcc-4.4.1编译器在Fedora 9平台下编译,源代码包中有build-all编译脚本,详见手册中的相关说明。
WindowsCE6.0篇 安装和运行WinCE从未如此简单
在配置文件中,修改"Action=Install/run","OS=CE6",即可安装或运行WinCE 快速启动,带Bootlogo和进度条,且更换相当容易 通过SD卡快速安装或更新WinCE Step1: 使用SD-Flasher.exe软件把Superboot.bin烧写到SD卡中 Step2: 把光盘中的"images"目录(连同目录名)拷贝到SD卡中,并打开该目录的配置文件FriendlyARM.ini,修改安装WindowsCE系统相关的定义(请注意红色字符部分,不要改错了地方): 定义项 修改为 Action Install OS=WindowsCE6 (也可以为”CE6”或”Wince6”) WindowsCE6-BootLogo = WindowsCE6\bootlogo.bmp (也可以使用其他24-bit的bmp图片,最大可支持1024x768) WindowsCE6-InstallImage= WindowsCE6\NK_N43.bin (或 NK_a70 或 自己编译出的内核映像) Step3: 把开发板S2开关设置为”SDBOOT”,并插入SD卡 Step4:上电开机,这时你可以听到开发板上蜂鸣器“滴”的一声,同时板上的LED4开始点亮并闪烁 Step5: 静听秒表跳动的声音,可以注意到LED3,2,1逐个开始闪烁亮起,直到听到蜂鸣器“滴滴”两声,所有LED满格亮起,随后不停的跑马跳动,就说明系统已经烧写完毕,整个过程不到30秒(视具体的烧写文件大小而定) Step6: 把开发板S2开关设置为"NAND"启动,重启即可看到WinCE已经运行起来了。 说明: 你也可以单独更新任意一项,只要把不需要更新的项目使用"#"注释掉,或者设置为空就可以了;所有字符都可以大写或小写,或混用。 通过SD卡快速启动WinCE Step1: 使用SD-Flasher.exe软件把Superboot.bin烧写到SD卡中 Step2: 把光盘中的"images"目录拷贝到SD卡中,并打开该目录的配置文件FriendlyARM.ini,修改安装WindowsCE系统相关的定义(请注意红色字符部分,不要改错了地方):
定义项 修改为 Action Run OS=WindowsCE6 (也可以为”CE6”或”Wince6”) WindowsCE6-RunImage=WindowsCE6\NK_N43.bin (或 NK_a70 或 自己编译出的内核映像) Step3: 把开发板S2开关设置为”SDBOOT”,并插入SD卡,开机启动,等大约15秒左右,就可以看到WinCE桌面了。 Bootloader及BSP特性 在6410平台中,Bootloader的部分文件和BSP是共用的,所以是放在一起编译的,你也可以单独编译Bootloader,详细步骤见用户手册说明,下面是它们的主要特性说明。 Bootloader 源代码位置 特性 支持进度条显示:用户可自由更改进度条颜色,长宽,位置 支持开机图片:用户可自由更改开机图片的显示位置,开机图片最大可支持1024x768的24-bit普通bmp文件
BSP 版本 WindowsCE6 R3 驱动 RTC NAND Flash: 可支持128M/256M/512M/1GB LCD驱动(详见下面说明) SD卡驱动: 可支持SDHC(高速大容量卡) SDIO WiFi驱动 音频驱动: 采用WM9714,基于AC97接口,可放音和录音 网卡驱动: 采用DM9000AEP,10/100M兼容 CMOS摄像头驱动: TV-OUT驱动:可同时输出至LCD和TV-OUT显示 多媒体驱动: 支持H.264解码 LED驱动: 板载4个LED的驱动程序 按键驱动: 板载8个按键驱动 PWM控制蜂鸣器驱动 串口驱动: 3个(COM2,3,4) 支持的LCD类型 统宝3.5"LCD - 分辨率: 240x320, 带触摸 NEC 4.3"LCD - 分辨率:480x272, 带触摸 群创7"LCD - 分辨率: 800x480, 带触摸 Sharp 8"LCD(或兼容) - 分辨率:640x480, 带触摸 LCD转VGA - 分辨率: 1024x768/800x600/640x480 EZVGA - 分辨率:最大为800x600 VGA显示 LCD2VGA: 采用专业的FPGA增强方案,分辨率最大可达1024x768,绝不闪屏,还可以根据用户需求设置分辨率为800x600/640x480 EZVGA: 采用简易的DA转换芯片,分辨率:800x600,适用于学习研究 USB外设 USB鼠标 USB键盘 优盘 USB Hub: 即插即用 USB接口条码扫描 USB WiFi USB蓝牙适配器 实用程序 LED测试 Buttons测试 串口助手 多媒体测试 PWM控制蜂鸣器测试 录音测试 TV输出测试 OpenGL测试 多媒体测试 WindowsCE6运行截图
Android2.2篇 领先全球的UBIFS文件系统安装方式
、
Android 2.2特性: * 采用最新的Linux-2.6.36内核,更加适合于Android 2.2 * 采用4.5.1编译器,默认armv6指令集,支持硬浮点运算 * 3G无线上网(联通,电信,移动均可), 支持100多种USB上网卡 * 支持USB蓝牙即插即用 * 优盘即插即用 * 一线精准触摸,循环校正 * 背光管理,127级可调,炫酷的渐熄效果 * 状态栏音量调节,Menu Key, Back key按钮,更方便在触摸屏上操作应用界面 * 有线以太网设置,可手工或自动分配IP地址 - SD WiFI,首家实现自动获取DNS,更方便上网 - 支持横,竖屏切换 * 首家采用ALSA接口实现音频输入与输出 - 增加对ADB的支持,支持通过USB安装Android应用程序,调试以及启动ADB Shell等 * 支持SD卡脱机快速安装Android固件(UBIFS格式), 仅需48秒
注意:以上"带*"号特性是其他大部分厂家6410开发板所不具备的。
Mini6410之Android编译和制作目标文件系统指南,十分简单! 说明:
很多人使用模拟器来提取Android文件系统,这样的步骤不仅复杂,而且不利于让你了解"Android到底是如何组成的",因此我们使用脚本,从编译
好的Android文件系统中提取所需的各个文件,让这个过程更加透明,更加灵活。(注:
使用模拟器提取的文件系统烧写到开发板上第一次运行时启动速度会快一些,因为它的第一次运行已经交给模拟器了;使用脚本生成的Android系统烧写到开
发板上第一次运行时会慢一些,这是真正的第一次。) 编译、提取和制作目标文件系统都很简单,把有效的时间花在更加价值的地方! 1. 解压Andoid 2.2文件系统源代码包,你可以看到目录中有2个脚本:build-andoid和genrootfs.sh 解压命令为: tar xvzf android-2.2-fs-20101230.tar.gz 2. 运行build-android,开始编译,整个过程会需要很久时间,使用虚拟机大概2-3hour,建议使用真机Linux系统 3. 编译完毕,执行genrootfs.sh脚本,可以在当前目录生成rootfs_dir,它就是我们所需的Android原始固件包了 4. 使用mkubimage命令把原始包目录压制为供烧写的固件: mkubimage rootfs_dir rootfs_android.ubi 5. 把生成的rootfs_android.ubi文件替换"SD卡\images\Android"目录中的同名文件就可以了 当然,要在开发板上运行Android系统,还需要有Bootloader和内核,关于它们的编制详细步骤,请参考用户手册。 Android 2.2运行时照片
ARM-Ubuntu篇 最新版的ARM-Ubuntu,最简单的运行方式
把光盘中Ubuntu系统文件直接拷贝到普通的FAT32格式SD卡运行,就是这么简单. 简介 本
开发板所用的Ubuntu 为0910 版本,它是使用ARMV6 指令编译器编译的最终版本, 也就是说,2010 年以后发布的ARM
版Ubuntu 都是ARMV7 指令编译器,它们是不能在6410 上运行使用的;因为S3C6410 最高支持ARMV6 指令集。 Ubuntu
系统比较大(600M 多),一般不把它烧写到Nand Flash 中使用,而是通过SD 卡运行;大部分人的做法是先在Linux下把SD
卡格式化为ext2/3 格式,再把系统文件拷贝 到SD 卡中,并修改相应的内核启动参数,从而实现从SD
卡运行Ubuntu;其中的很多步骤对于初学者来讲比较难以理解,而且不易操作;我们的做法是在Linux 下使用一个命令把 Ubuntu
系统制作成EXT3 映像文件,然后把它复制到普通的FAT32/FAT 格式的SD 卡就可以 了,并且光盘中已经有做好的映像文件。 运行Ubuntu简易步骤 Step1 使用SD-Flasher把Superboot烧写到SD卡中,推荐使用4G以上的SD卡
Step2 把光盘中的"images"目录连同目录名一起拷贝至SD卡中
Step3 修改"images\FriendlyARM.ini"文件中的定义如下: Action=run OS=Ubuntu
Step4 把开发板S2设置为SDBOOT,把SD卡插入开发板,开机运行Ubuntu
注: 在Step2中,也可以自行在SD卡中创建"images"目录,只把光盘\images\目录下的"Ubuntu"文件夹复制到"SD卡\images"目录下;也可以下载下面的链接文件解压获取。 配货清单 1. Tiny6410学习开发板一块(核心板+底板,128M内存/256M NandFlash) 2. 电源适配器一个(+5V) 3. DB9交叉串口线一条 4. 交叉网线一条 5. USB线一条 6. 带触摸的4.3寸触摸屏一个(配精致触屏面板,赠触摸笔) 7. DVD开发光盘两张(A和B) 8. 精美包装盒一个(为方便运输和维修,请妥善保管) 9. 购买本商品所得赠品
Mini6410 和 Tiny6410 的软硬件资源对比 |
序号 |
|
Mini6410 |
Tiny6410(含底板) |
1 |
简要描述 |
Mini6410 是一体化的单板机,引出更加丰富的管脚资源,因在板资源丰富,体积小,不少用户直接用其做为控制主板,嵌入式到产品中使用。 |
Tiny6410 为核心板+底板方式,核心板通过2.0mm 间距的120 pin双排插针引出常见的接口资源,用户可灵活设计底板; 注意:以下对比项包含Tiny6410 底板在内 |
2 |
板层及尺寸 |
6层,沉金工艺 尺寸: 110 x 110 mm |
核心板为6层,沉金工艺; 参考开发底板为2层,喷锡工艺 核心板尺寸: 64 x 50mm 开发底板: 180 x 130mm
|
3 |
CPU |
Samsung S3C6410,运行主频533M |
4 |
RAM |
256M(早期为128M) |
目前只有128M 版本, 以后会增加256M 版本 |
5 |
JTAG |
有,二者的定义完全相同,可使用Jlink 等仿真器进行单步调试 |
6 |
以太网卡 |
DM9000AEP, 带RJ‐45 接口 |
7 |
串口 |
4 个: TTL 电平: CON1,2,3,4, 从CPU 直接引出 RS232: COM0,为DB9 串口座 |
4 个: TTL 电平: CON1,2,3,4, 从CPU 直接引出 RS232: COM0, 1,2,3, 为DB9 串口座 |
8 |
LCD |
双LCD 接口: LCD2: 0.5mm 间距的41pin 贴片座,与Mini2440/micro2440 通用 LCD3: 2.0mm 间距的40pin 插针座 |
|