|
本站推出该开发板的团购活动,欢迎大家参加!
友善之臂是国内众开发板厂商中Linux软件研发实力最强的公司,技术水平远超其他任何公司。目前我 们提供了最新的Linux内核2.6.29,它带有完整的BSP(各种驱动),并且100%源代码开放;我们还移植并完善了适用于通用开发板系统的 Qtopia-2.2.0 PDA终结版本,该图形系统平台代码也是100%开放的。源源不断的开发创新以及应用开发已经逐渐成为友善之臂新的核心竞争力,我们得以让每一位嵌入式爱 好者都能分享我们的开放性开发平台。
下面是mini2440开发板的Linux系统详细特性介绍,它们也适用于本公司已经停产的QQ2440(详见mini2440手册),为了方便浏览本页面的每一位网友需要,每个特性部分基本都提供了下载地址。
注意:在此提供的Linux软件系统可以完美的运行于本公司设计生产的mini2440, micro2440以及QQ2440,但对于在其他2440开发板上运行不承担任何风险。
mini2440之Linux软件系统特性
交叉编译器 : arm-linux-gcc-4.3.2.tgz 86MB
简介 | 交 叉编译器在编译的时候,对于浮点运行会预设硬浮点运算FPA(Float Point Architecture),而没有FPA的CPU,比如SAMSUNG S3C2410/S3C2440,会使用FPE(Float Point Emulation 即软浮点),这样在速度上就会遇到极大的限制,使用EABI(Embedded Application Binary Interface)则可以对此改善处理,ARM EABI有许多革新之处,其中最突出的改进就是Float Point Performance,它使用Vector Float Point(矢量浮点),因此可以极大提高涉及到浮点运算的程序 |
版本 | 4.3.2 |
为你带来的好处 | 使用同一个编译器,你可以编译: * linux内核(linux-2.6.29) * qtopia-2.2.0图形系统 * busybox * vivi(开源的bootloader) * u-boot(开源的bootloader) * 其他很多linux应用程序(如web server, boa, madplay等程序) 优势: * 可以提高程序的浮点运算性能 * 可以提高工作效率,不必把时间花费在切换不同的编译器上 |
Linux内核特性 : Linux-2.6.29-mini2440-20090429.tgz 73MB
mini2440采用最新的内核版本Linux-2.6.29,并提供最齐全的Linux BSP(100%源代码)
设备或其他
|
驱动程序源代码在内核中的位置
|
开发板上对应的设备名
|
备注
|
|
1
|
yaffs2文件系统 | Linux-2.6.29/fs/yaffs2 |
开发板根文件系统采用的就是yaffs2,它使用mkyaffs2image工具制作 | |
2
|
LCD FrameBuffer | Linux-2.6.29/drivers/video/s3c2410fb.c |
/dev/fb0 | |
3
|
CMOS摄像头 | Linux-2.6.29/drivers/media/video/s3c2440camif.c | /dev/camera | |
4
|
万能USB摄像头 | Linux-2.6.29/drivers/media/video/gspca |
/dev/video0 | |
5
|
USB转串口 | Linux-2.6.29/drivers/usb/serial/pl2302.c | /dev/ttyUSB0 | |
6
|
USB鼠标和键盘,扫描器 | Linux-2.6.29/drivers/usb/hid |
USB鼠标:/dev/input/mice USB键盘:/dev/input/ |
|
7
|
LED | Linux-2.6.29/drivers/char/mini2440_leds.c |
/dev/leds | |
8
|
按键 | Linux-2.6.29/drivers/char/mini2440_buttons.c |
/dev/buttons | |
9
|
I2C-EEPROM | Linux-2.6.29/drivers/i2c |
/dev/i2c/0 | |
10.
|
PWM控制蜂鸣器 | Linux-2.6.29/drivers/char/mini2440_pwm.c |
/dev/pwm | |
11
|
ADC转换 | Linux-2.6.29/drivers/char/mini2440_ad.c |
/dev/adc | |
12
|
LCD背光 | Linux-2.6.29/drivers/char/mini2440_backlight.c | /dev/backlight | |
13
|
看门狗 | Linux-2.6.29/drivers/watchdog/s3c2410_wdt.c | /dev/watchdog | |
12
|
触摸屏 | linux-2.6.29/drivers/input/touchscreen/s3c2410_ts.c |
/dev/input/event0 | |
15
|
优盘支持 | Linux-2.6.29/drivers/usb/storage | /dev/udisk | |
16
|
MMC/SD卡 | Linux-2.6.29/drivers/mmc目录 | /dev/sdcard | 支持高速大容量SD卡,最大可达32G |
17
|
NAND Flash | Linux-2.6.29/drivers/mtd/nand | /dev/mtdblock2 | |
18
|
UDA1341音频驱动 | Linux-2.6.29/sound/soc/s3c24xx |
/dev/dsp :放音或者录音 /dev/mixer : 音量调节 |
ALSA接口,并兼容OSS,带录音功能 |
19
|
实时时钟RTC | Linux-2.6.29/drivers/rtc/rtc-s3c.c |
/dev/rtc | RTC是2440本身具有的功能 |
20
|
串口(含3个串口) | Linux-2.6.29/drivers/serial/s3c2440.c |
/dev/ttySAC0,1,2 | 2440自带3个串口 |
21
|
USB无线网卡 | Linux-2.6.29/drivers/net/wireless/rt2x00 | 网络设备无设备文件名称 | USB无线网卡型号:TL-WN321G+ |
22
|
DM9000网卡驱动 | Llinux-2.6.29/drivers/net/dm9000.c |
网络设备无设备文件名称 |
文件系统内容特性 : root_qtopia.tgz 27MB
项目
|
友善之臂
|
其他厂家开发板
|
说明
|
基本库
|
支持带矢量浮点运算,符合EABI标准 | 不支持浮点运算,或为软浮点运算,采用老式的ABI标准 | 符合EABI标准的编译器可以编译出执行速度更快的可执行程序 |
图形界面Qtopia
|
版本:2.2.0 | 版本:1.7.0 | Qtopia-2.2.0是终极版的Qtopia PDA系统,拥有更多的类 |
统一性
|
采用统一的目标文件系统,支持: 自动检测NFS启动 USB鼠标和触摸屏共存 自动检测触摸屏驱动支持 |
采用多个文件系统,有诸如 root_qtopia_mouse root_qtopia_tp root_qtopia_nfs 等多个版本,根据不同的情况烧写不同的文件系统,浪费时间,降低效率 |
大部分开发板都抄袭友善之臂早期的目标文件系统分类方法,甚至连名字都没有改变 |
USB鼠标和触摸屏共存
|
支持:无缝切换使用,便于演示 | 不支持:要么只能用鼠标,要么只能用触摸屏 | 有的厂家也做到了“共存”,但需要重新启动系统,这不是真正的共存,重启之后依然只能选择其中一种 |
USB鼠标和键盘热插拔
|
支持:任何时候都可以拔插使用USB鼠标和键盘 | 不支持:需要重新开机才能使用 | |
优盘和SD卡自动挂载
|
支持:无需连接电脑即可使用,最大支持32G | 不支持:必须连接电脑输入繁杂的命令才可使用 | |
Qtopia自动检测触摸屏驱动
|
支持:Qtopia启动时若检测到触摸屏驱动支持,自动启动触摸校正程序,否则直接进入系统 | 不支持:必须烧写不同的系统映象才可以 | |
实用测试程序
|
全部图形化操作,只需连接电源,开机后通过触摸笔操作即可测试开发板各项外设资源 | 均为命令行程序,必须连接电脑通过串口输入繁杂的命令才可以操作 | 当今很多开发板厂商以前为友善之臂代理,他们直接抄袭了友善的测试代码和手册,大都不具备软件研发能力,因此软件升级改进的能力有限,大都是在网上找别人的资料东拼西凑的东西,不具有系统完善性。 |
文件系统内容
类别
|
说 明
|
备注
|
|||||||||||||||
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.8 | 采用arm-linux-gcc-4.3.2 with EABI编译器编译制作 | |||||||||||||||
Qtopia
|
版本:Qtopia-2.2.0 | ||||||||||||||||
|
|||||||||||||||||
说明: | |||||||||||||||||
■ 最好用的Qtopia系统 ■ 完全开放源代码的平台 ■ 为何不选用Qtopia手机版本 |
|||||||||||||||||
网络相关
|
常用命令: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工具 | |||||||||||||||||
演示媒体
|
视频:panda.mpg 10MB | 演示媒体均位于开发板的“/root/Documents”目录 | |||||||||||||||
图片:girl.jpg mini2440.png sunflower.bmp 分别代表三种图片格式的示例 | |||||||||||||||||
音乐:New Soul.mp3 1.8MB | |||||||||||||||||
目标文件系统大小
|
总计:49.2MB | ||||||||||||||||
制作工具
|
mkyaffs2image |
基于Linux的bootloader : bootloader.tgz 9.2MB
名称
|
功能特性
|
备注
|
supervivi
|
支持yaffs文件系统 | supervivi基于三星的vivi而来,由友善之臂发展并维护,不提供源代码 |
支持USB下载烧写Linux系统 | ||
支持USB下载烧写WindowsCE 5.0 | ||
支持USB下载烧写“绝对”用户程序到Nand Flash,比如带有Nand启动功能的uCos2 | ||
支持USB下载Linux内核到内存中运行 | ||
支持USB下载WindowsCE内核到内存中运行 | ||
支持USB下载“裸机”程序到内存中运行 | ||
支持自动分区 | ||
自动识别NOR/NAND启动(根据开发板的S2拨动开关设置) | ||
支持整片NAND Flash备份和恢复(需配合友善改进的dnw下载软件),此功能特别适合量产 | ||
可设置Linux启动参数并保存,比如可设置为NFS启动系统 | ||
可手动设置Linux内核Machine ID | ||
支持串口X-modem协议下载Linux系统(因串口速度慢,不推荐使用) | ||
vivi
|
仅支持Nand Flash启动 | 三星公司提供的原始vivi,经友善之臂修改,以适用于mini2440,提供源代码 |
可设置Linux启动参数并保存,比如可设置为NFS启动系统 | ||
支持串口X-modem协议下载Linux系统 | ||
u-boot
|
本u-boot源代码由网友提供,我们公司没有人使用u-boot,对其特性不甚了解,并且不提供关于u-boot的技术支持 |
Linux编程示例 : examples.tgz 11KB
有很多书籍介绍Linux编程,大部分都可以直接应用于嵌入式Linux,但涉及到嵌入式硬件操作,就可能有所不同了;另外有些嵌入式系统提供的库也并非 齐全,这导致同样的程序在PC Linux上可以正常使用,但在目标板上就不行了,在此我们提供了几个典型的嵌入式Linux编程示例,以供参考。它们分别有:
示例程序名称
|
说明
|
备注
|
hello | 每个程序员的第一次编程都会经历的Hello,World | 解压examples.tgz可以得到这些测试程序的源代码 |
Hello, C++ | Hello,World的C++版本 | |
math | 数学函数调用示例 | |
pthread | 线程编程示例 | |
udptalk | 网络编程示例 | |
leds | 嵌入式Linux设备应用编程:操作控制开发板LED的示例 | |
led-player | 嵌入式Linux设备应用编程:通过管道共享LED资源的例子 | |
buttons | 嵌入式Linux设备应用编程:典型的如何使用中断方式驱动的设备 | |
pwm | 嵌入式Linux设备应用编程:通过PC键盘调节PWM输出控制蜂鸣器 | |
adc-test | 嵌入式Linux设备应用编程:测试开发板上可调电阻,实现ADC转换 | |
i2c | 嵌入式Linux设备应用编程:读写开发板上I2C-EEPROM的编程示例 | |
comtest | 嵌入式Linux设备应用编程:串口编程示例,在此实现了一个简易的串口终端程序 | |
camtest | 嵌入式Linux设备应用编程:CMOS摄像头编程示例,可以在LCD上动态预览CMOS摄像 |
Qtopia-2.2.0精彩展示(图片) : 下载地址http://www.arm9.net/download-qtopia-2.2.0.asp
我 们提供的Qtopia-2.2.0需要使用arm-linux-gcc-4.3.2 with EABI编译器在Fedora 9平台下编译,源代码包中有build-all编译脚本,详见手册中的相关说明。 以下图片所展示的Qtopia-2.2.0应用程序大都使用Qt Designer 2.0开发,以下图片均使用命令行工具snapshot命令实时截取
Linux Logo制作工具 : LogoMaker.tgz 4.7MB
LogoMakers 可以让你十分方便地制作linux logo文件,它基于Fedora 9平台开发并使用。其使用方法十分简单,打开一个图形文件(Jpeg, bmp或者png格式),然后点转换按钮就可以了;它会固定输出文件名:logo_linux_clut224.ppm,该文件一般位于内核源代码目录 kernel-src/drivers/video/logo中,替换之后再重新编译一下内核就可以看到你所喜爱的linux logo了。
注意:LogoMaker程序实际调用了netpbm工具组,因此要确保你的PC Linux系统安装了此工具,方可转换成功。
打开一幅图片
|
转换
|
替换后重新编译内核, 并下载到开发板 |