在PC上可以开发Linux驱动,重新编译成ARM架构的Linux驱动模块,但最后还是要在开发板上进行测试。目前最流行的是基于三星S3C6410 ARM11架构的开发板,很多厂商在其基础上进行了扩展,开发了扩展板。
下面对S3C6410开发板进行简单的介绍:三星S3C6410是一款低功耗、高性价比的RISC精简指令集系统的处理器,基于ARM11内核,可用于移动电话和通用处理等领域。它为通信服务提供了优化的硬件性能,内置强大的硬件加速器,有运动视频处理、音频处理、2D加速、显示处理和缩放等,还集成了一个MFC多格式视频码,支持MPEG4 /H.263/H.264编解码和VC1解码,能提供实时的视频会议以及NRSC和PAL制式的TV输出。处理器还内置了一个非常先进的3D加速器,支持OpenGL ES 1.1/2.0和D3DM API,实现4M triangles/s的3D加速。开发板还包含了优化的外部存储接口,能够满足在高端通信服务中的数据宽带要求。
只用一块S3C6410 ARM11的处理器芯片无法测试Linux驱动,还必须在处理器的基础上进行一系列的扩展,加上适当的接口,以便和PC连接进行调试。典型的是飞凌OK6410开发板,它拥有强大的内部资源和视频处理能力,支持Mobile DDR和多种NAND Flash,集成了多种高端接口,如复合视频信号、摄像头、USB、SD卡、液晶屏、以太网,配备温度传感器和红外接收头等。这些接口可作为应用参考帮助用户实现高端产品级设计。本开发板采用“核心板+底板”结构,核心板与底板之间采用4组高质量进口连接器,320个引脚,方便用户进行二次开发,进行各种形式的扩展应用。在OK6410开发板上安装WinCE6.0、WinCE7.0、Linux2.6.28等版本。
开发板调试环境的搭建,那么如何将Android系统安装在开发板上。烧写Android系统:OK6410开发板原本装的是WinCE 6.0,为了安装Android需要先把WinCE 6.0卸载,再安装Android。在烧写Android之前,需启动Eboot擦除NandFlash,因为微软在设计WinCE时将前4块即bootloader分区都标记成坏块,为了防止bootloader被WinCE应用程序擦掉,需在将开发板换成Android系统时把这几个坏块恢复。使用Eboot擦除NandFlash步骤如下:1.用串口线或USB转串口线连接开发板和PC,并启动minicom 2.打开OK6410的电源开关,等待5秒然后按空格键使开发板停留在Eboot状态 3.进入Eboot状态后,输入“A”即可擦除NandFlash。
烧写Android的步骤如下:1.准备一个2GB或4GB的SD卡,要求FAT32分区格式,插入读卡器并连接PC 2.在Windows XP下完成向SD卡写入mmc.bin和zImage-sd.bin。运行SD_Writer,操作系统类型选择Android,并在Select Root和Select Kernel中分别选择mmc.bin和zImage-sd.bin。单击“Scan”,若SD卡成功连接PC,SD卡会被自动扫描到。单击“Program”将mmc.bin和zImage-sd.bin文件写入SD卡,出现对话框“It's ok”表明写入成功 3.先将android_fs.tar、mmc.bin和zImage复制到SD卡,然后按规则设置开发板上的启动开关,开发板电池上方有8个可以拨动的开关,最靠近电池的是Pin8,依次递减。向左拨动为off,向右为on。OK6410烧写Android比较简单,但需要使用SD卡启动,烧写完成后再用NandFlash启动Android,用SD卡启动需要将Pin4至Pin8都向右拨动。烧写完成后,再将Pin6和Pin7向左拨动,需注意的是,在拨动开关之前要关闭开发板,拨完之后再打开开发板 4.将SD卡插入开发板的插槽,并设置成SD卡启动,打开开发板开始从SD卡烧写Android。首先向开发板内存写入一些用于启动Android的数据,相当于将boot.img刷到手机上。写完启动数据后,会进行系列的检测,然后出现#提示符,输入.yjsx命令后开始复制SD卡中的数据。出现信息“great!!! all jobs is over”,说明已成功将Android安装到开发板上 5.安装完Android后一定要关了开发板,然后将开关恢复到NandFlash启动状态,否则启动后会再安装一遍。重新启动开发板,Android系统会在第一次启动时要求校准屏幕,校准后Android会继续启动。