1、X210开发板和光盘资料
1.1、配置信息
CPU:三星S5PV210
内存:512M DDR2 SDRAM
Flash:4GB iBand
LCD:7寸,分辨率800x480
触摸屏:电容触摸屏
2、X210开发板硬件手册
3、X210开发板刷系统
3.1、什么是刷系统
刷系统就是利用刷机工具,向开发板中烧录预先编译好的系统镜像,使之在开发板上运行起来。
3.2、串口输出的意义(做系统控制台)
串口是一种硬件通信口,很多年前的时候串口是CPU之间进行通信的主要接口。但是现在因为串口通信的速度很低,所以现在串口主要是用来做程序输出监控、调试。嵌入式系统一般是用串口来做控制台的,用一根串口线连接开发板的串口和我们笔记本的串口,然后在电脑上打开一个串口监视,这样开发板上的串口输出内容就可以在电脑上看到。还可以通过监视终端向开发板输入一些控制命令由开发板执行。
3.3、安装USB转串口线的驱动
这种线传入电脑后需要安装驱动,安装驱动后在电脑上会形成一个串口 (叫usb转串口),这样就相当于你电脑有了一个串口,可以通过这个串口来监视开发板的串口输出。
注意:
(1)windows对USB设备的管理是和USB口有关的,你每次把usb转串口线插到同一个口中,这样得到的COM口号码是不变的,方便我们后期使用。如果每次胡乱更换插口,可能得到的COM口会变。
(2)COM口号码是可以改的,还可以强制占用显示“已使用”的COM号,一般改成COM4以内的就可以了。
3.4、使用SecureCRT
从网盘下载SecureCRT.rar,解压后直接使用。注册时参考解压包中的说明.txt。
打开SecureCRT.exe后,建立一个Serial连接,开始监视串口,注意留控一定要去掉,不然什么都看不到。
开发板这边串口一定要接串口2(官方出厂默认的是烧录镜像都是串口2的),然后开机,就可以看到串口信息了。
3.5、破坏iNand中的bootloader以从SD2启动
看x210v3s开发板SD卡烧写教程,输入命令:
//进入 android 系统控制台,执行如下指令:
busybox dd if=/dev/zero of=/dev/block/mmcblk0 bs=512 seek=1 count=1 conv=sync
//为了确保执行数据有效,再执行 sync 同步一下,即可破坏掉前一个块的数据。
sync
解释:这句话的意思就是说把板载的iNand的第一个扇区用全0来填充,其实就是擦除它,这样我们板载的iNand的bootloader的开始第1个扇区就被破坏了。将来启动时iROM还是会先从iNand中读取前16KB,然后计算校验和。这时候因为有1个区被擦掉了所以校验和不通过,所以启动失败 (会从SD2去执行2nd启动)。
注意:破坏板载iNand的bootloader后,不插外部SD卡,启动时串口得到: SD checksum Error
3.6、制作启动SD卡(其实就是烧录uboot到SD卡中)
有两种烧写方法:一种是在Windows中用刷卡工具去制作启动SD卡;另一种是在linux中用dd命令。
这里介绍的是第一种(比较简单)。刷卡工具用的是x210_Fusing_Tool。
制作完SD后将SD卡插入开发板SD2通道(注意不是SD3),然后开机就可以进入uboot界面了。在uboot开机自动启动倒数3秒之内迅速按下电脑回车键,打断自动启动。 (否则会自动启动iNand中的android)
3.7、fastboot介绍
fastboot是uboot中用来快速下载镜像的一个命令,fastboot同时还是一个windows上的软件。
3.7.1、fastboot下载时要注意
(1)fastboot是使用USB线进行数据传输的,所以fastboot执行之前要先连接开发板和主机之间的usb线(usb-otg那根)。
(2)需要安装驱动。dnw_driver
3.7.2、fastboot常用命令
fastboot devices //命令用来查看当前连接的设备(我们开发板看到的是:SMDKC110-01)
fastboot flash xxx //命令用来烧录的
fastboot reboot //命令用来重启系统
3.7.3、使用fastboot烧录android4.0.4镜像
在cmd下使用以下三个命令来完成烧录
fastboot flash bootloader android4.0/uboot.bin //烧uboot
fastboot flash bootloader android4.0/zImage-android //烧linux kernel
fastboot flash bootloader android4.0/x210.img //烧android rom
//在这里是把uboot.bin、zImage-android、x210.img都放在了bootloader的根目录下的android4.0文件夹中
3.7.3、使用fastboot烧录linux+QT
fastboot flash bootloader linuxQT/uboot_iland.bin //烧uboot
fastboot flash bootloader linuxQT/zImage-qt //烧linux kernel
fastboot flash bootloader linuxQT/rootfs_qt4.ext3 //烧rootfs
uboot的参数不用特意设置(因为我们刷了转为linux+QT定制的uboot,这个uboot中估计已经预制好了所有的启动参数)
4、X210核心板、底板原理图
写代码时需要查阅和参考的资料有:核心板原理图、底板原理图、相应硬件的数据手册、S5PV210数据手册
4.1、原理图、PCB图、丝印图各自是什么
原理图是电路原理设计图,各个电路中的部件的逻辑连接图。
PCB图是我们用来制作电路板,并且用电路板进行原件焊接,做成最终产品的生产性图纸。先有原理图设计,然后根据原理图来设计PCB图。PCB图是对原理图的一种实现。原理图和PCB图一般都由硬件工程师负责,但是原理图设计时软件工程师会一定程度参与。PCB的设计就完全是硬件工程师的事情了,与软件工程师无任何关系。
丝印图是PCB图设计中,所有原件的外框的框图。丝印图其实就是整个电路板的实体的位置图纸,与软件和功能无关,与生产制造有关。对软件工程师来说,丝印图可以不理会。
4.2、原理图对嵌入式软件工程师的意义
原理图是电路的逻辑连接,对于可编程器件来说,不同的电路连接可能意味着不同的编程参数,因此底层软件工程师会需要查阅原理图的接法,从而决定自己的软件怎么写才能正确和硬件通信。
4.3、嵌入式软件开发人员对硬件掌握程度的要求
软件工程师分应用开发和底层开发两大块。对于应用开发工程师(直接基于操作系统来开发程序,调用操作系统的API和库函数等写代码)来说,硬件完全被操作系统屏蔽了,可以完全不关心硬件,但是对于底层软件工程师(驱动开发的、单片机的、移相操作系统的)来说,看懂原理图和数据手册是非常有必要的,PCB图就没必要会了。
注意:一般来说,总工程师都是软硬都会的,这个人一般软件硬件都做过。
5、数据手册
5.1、datasheet(数据手册)的作用
数据手册一般就是产品(一般是芯片)厂家编写的,对这个产品的所有功能和用法的描述统一说明的文档。
5.2、数据手册的正确读法
先通读概览,然后根据需要去查阅
学会利用文档目录
利用好pdf阅读器的搜索功能
6、usb启动配合dnw工具下载
6.1、背景知识
回顾S5PV210的启动方式,必须将OM5打到VCC,才能从USB启动。
S5PV210的启动过程,开机时先执行内部的iROM中的BL0,然后BL0做了一系列的初始化后,再读取外部OMpin的设置来确定用户择了从哪里启动。当检测到我们设置的是USB启动时,S5PV210就会从USB OTG接口试图连接主机进行下载启动。
6.2、dnw工具介绍
dnw是一个软件,是三星公司编写的,这个软件的功能是通过USB线连接开发板和电脑主机,然后从主机下载文件镜像到开发板中去烧录系统。
dnw软件使用注意1:dnw是需要usb驱动的,驱动在"X210光盘资料\A盘\tools\USB驱动”目录中
dnw软件使用注意2:dnw使用时通过usb线下载,所以一定要插USB线。
dnw软件使用注意3:dnw下载时需要设置dnw下载内存地址。在dnw软件的菜单"Confiquration"中设置Download Address为0xd0020010,确认即可。
6.3、dnw驱动安装
X210开发板使用了软开关,但是我们这里还没到操作系统没去处理开关,所以在整个裸机实验中必须手工按下POWER键才能保持开机,只要手一抬起来就关机了...
dnw驱动装好的标志是:开发板开机从usb启动后,设备管理器中显示已经安装的设备,并且关键是dnw工具中USB:OK
从usb启动做裸机实验时,因为不需要16字节的校验头,所以直接下载到0xd0020010
usb启动方式主要是用来调试程序的,其实分析S5PV210即可知道,我们这里是把裸机程序当作BL1来使用了。
文章来源地址https://www.toymoban.com/news/detail-621333.html文章来源:https://www.toymoban.com/news/detail-621333.html
到了这里,关于ARM裸机-10的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!