如何使用开发板.doc
文本预览下载声明
哪些器件是嵌入式系统?
答:有处理器工作,不类似于PC机;
专用机系统的发展:
串口(RS—232)—— 以太网(Ethernet)
字符液晶———— 大规模LCD驱动
单片机(8位)——— 微处理器(32位)
ARM+Linux 嵌入式系统: 硬件——驱动程序——操作系统——应用软件
单片机系统: 应用软件
框架:
Bootloader (上电后第一个要执行的代码)
执行的操作:初始化硬件后,把操作系统从flash拷贝到内存中运行;
内核(如Linux的zlmage,是操作系统的执行代码)
文件系统 ??
三个主要的芯片:
处理器
内存(SDRAM) 速度快,掉电丢失数据;
Flash(Bootloader,操作系统,文件系统) 速度慢,掉电不丢失;
学习的硬件基础:
每种单片机都有自己对应的指令系统;
程序就是这些指令的堆砌;
中断系统; ??
MMU(Memory management unit)内存管理单元
判断是否是高端处理器的重要标志;
没有MMU的处理器,如ARM7,只能跑ucLinux,而不是完整的Linux;
完成了从虚拟地址到物理地址的转换;
JTAG
高端电子器件,单片机比较少见;
四根线:TMS 、TCK、 TDI 、TDO
实现对芯片内部的寄存器进行读写;
间接的就可以实现对芯片外围设备的控制;
最终实现对开发板上硬件的调试,并能烧写程序;
需要的软硬件资源:
串口:必不可少;
对于没有串口的电脑,可用USB转串口的模块;
并口:主要用于JTAG下载和调试;
可以用J—link仿真器(USB接口)来代替;
Bootloader的复杂性:
需要包含整套Flash驱动的源码;
包含网络协议栈TCP/IP;
USB通讯协议;
用户交互的界面;
【映像】:泛指可执行的操作系统程序,就是操作系统的源码编译以后生成的可执行的文件;
知识点:
32位系统的寻址空间为:2^32 == 4G;
流水线级数越多,主频会更快;
【ARM工作模式】:
用户模式(USER),运行应用的保护模式;
管理模式(SVC),操作系统的保护模式(超级用户模式);
中断模式(IRD),用于普通中断处理;
快速中断模式(FIQ)支持数据传输或通道处理;
数据访问中断模式(ABT)指令预取或读数据错误时;
系统模式(SYS),操作系统使用的特有的用户模式;
未定义指令终止模式,即无定义模式(UND),执行了未定义指令时进入;
飞凌嵌入式:
尚观嵌入式研究室
MD官方网站
ARM在中国的合资公司
万利电子
《ARM开发工具MDK使用指南》
《使用RealviewMDK开发cortex-M3软件》
【开发板就是微型计算机】:
交换线路:串口(RS—232)—仿真器(USB转串口功能、仿真的功能)—PC机;
在PC机上编译好后,再通过网线或串口传给开发板,开发板直接执行就行了;
芯片(SOC片上系统):ARM(CPU)+内置的外设;
ARM (全球微控制器领域的顶尖水平)
Applications Processor Market
Real—Time Embedded Market
Microcontroller Market
KEIL
国际微控制器开发工具领域的顶尖水平
EMBEST (英贝特)
中国嵌入式开发工具领域的顶尖水平;
【MDK安装后的文件】
Keil--ARM---Bin(动态链接文件)、Bin31(编译器、链接器)、Boards(知名厂商设计 的开发板自带的例子)、Examples(大众化的一些例子)、flash(flash芯 片烧写时用到的驱动算法)、Help(中文的帮助文档)、Inc(芯片厂商做 出来的一些库文件);
【嵌入式软件开发流程】:
工程建立源文件 ==(汇编源程序*.s 、C语言程序*.c)== 编译(生成目标文件,链接脚本文件) == 调试(命令脚本文件、存储区映像文件) == 固化;
【启动代码说明】:
启动代码是用来初始化电路以及未来为高级语言写的软件做还运行准备的一小段汇编语言,是任何处理器上电复位时的程序运行入口点。
功能:初始化电路;
为高级语言编写的软件运行做准备(初始化堆栈、高级语言入口函数调用);
【固件函数库】
该函数库
显示全部