版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,怎样学习ARM嵌入式开发?,Jack技术收集 硅谷芯微技术学院 http:/www.threeway.cc,2,开场介绍,本次课程讲什么? How to , not What is 本次课程谁来讲? jackthreeway.cc 本次课程适合的听众是哪些人? 已经知道,了解嵌入式开发的人 已经接触并有所实践,但还没摸到门道的人 不包括已经从事ARM开发一年以上的熟手 本次课程听完后会有什么收获? Know a shortcut(捷径) from a newbie(菜鸟) to a nb(牛人),3,今日主题,ARM嵌入式开发领域 包括什么? 软件开发 操作系统以下的底层偏硬件驱动 在简单
2、操作系统如uC/OS-II之上的程序开发 不包括什么? 硬件设计 类似Linux这样操作系统以上的纯应用开发,4,首要问题,怎样学习ARM嵌入式开发? 掌握这个领域的知识全景图 然后结合项目开始修炼 怎样进入一个陌生的村庄? 拿到这个村庄的地图 并找到一条进入村庄路线,5,ARM嵌入式开发,专业词汇和所属主题领域 ARM内核领域(10个细分领域) ARM芯片领域(5个细分领域) ARM工具平台领域(2个细分领域) ARM软件开发领域(3个细分领域) 专业词汇举例 SVC JTAG Jazelle MDK fromelf,6,ARM内核领域,ARM体系结构 Load/Store体系,Big/Li
3、ttle Endian大小端格式,RISC/CISC指令集,Pipeline流水线 ARM工作模式 7种工作模式:USR,SYS,SVC,IRQ,FIQ,UND,ABT;其中5种异常模式 ARM寄存器 37个寄存器:R0-R12, R13(SP),R14(LR),R15(PC),CPSR(SPSR) ARM异常 7种异常,异常向量表,异常优先级,异常处理程序,处理器现场,现场的保存和恢复 AMBA总线 AHB(高性能总线),ASB(系统总线),APB(外设总线),7,ARM内核领域,ARM内核技术 TrustZone,Jazelle,NEON,Thumb-2,SIMD,MMU,MPU JTAG
4、标准 IEEE1149.1,TDI,TDO,TCK,TMS,TRST,边界扫描链,H-jtag,Banyan,GiveIO ARM内核分类 ARM7TDMI,ARM926,StrongARM/XScale,ARM10,ARM11,Cortex-(A/R/M),SecurCore ARM汇编指令 mov,add,sub,b,bl,ldr,str,ldmfd,stmfd,mrs,msr,swi,mrc,mcr MMU内存管理单元 VA/PA,I-Cache/D-Cache,Write Buffer,Context Switch,CP15,TLB,AP,Domain Access Control,C
5、ache Coherence,8,ARM芯片领域,ARM芯片外设控制器 Memory Controller(内存控制器),WatchDog(看门狗),GPIO(通用IO),UART(串口),Timer(定时器),Interrupt Controller(中断控制器),Nand Flash Controller,Clock & Power Management(时钟和电源管理),DMA(直接存储访问),USB Controller,LCD controller,ADC,IIC,IIS,SPI,AC97,Camera,MMC/SD 最小系统 处理器,时钟,电源,PLL锁相环,存储器,通讯端口,外设
6、接口 存储器件 SRAM,SDRAM,Nor Flash,Nand Flash ARM处理器 Samsung: S3C4510,S3C44B0,S3C2410,S3C2440,S3C6410, SoC设计 FPGA,CPLD,VHDL,Verilog,9,ARM工具平台领域,ARM开发调试工具 SDT,ADS1.2,AXD,RealView,KEIL MDK 4.11 (RVMDK4.11) make,hypertrm(超级终端),minicom ARM命令行工具 armcc,armasm,armlink,fromelf,10,ARM软件开发领域,嵌入式操作系统 VxWorks,RTLinux
7、,uC/OS-II,WinCE/WM 外设驱动程序 volatile关键字,位操作bit,时序图Timing,管脚功能Pin function,外设控制/数据/状态寄存器 程序的存储,加载和运行 RO段,RW段,ZI段,ro-base/rw-base,栈空间,堆空间,位置无关代码PIC,启动搬移代码,11,细分领域的自我认知,人类对于外部世界的认识 在舒适区我们得心应手, 但学到的东西很少 。 在恐慌区我们感到忧虑, 恐惧,不堪重负 。 在学习区我们可以充分 锻炼自我,挑战自我。 只有持续留在“学习区”内,人才会进步。,12,课堂讨论,以上提到的20个细分知识领域,请您画一张图来表示目前你的掌
8、握了解程度。 Panic Zone(恐慌区) 完全陌生(从来没有听过,也没有看过) Learning Zone(学习区) 了解(自己看过,听别人说过) 熟悉(自己做过,但还不能指导别人) Comfort Zone(舒适区) 掌握(能够指导别人,讲述给别人),13,第二个问题,从哪里入手? 重视并深刻掌握其中的核心概念 寄存器 地址 异常和中断,14,核心概念之一,寄存器 ARM内核寄存器 R0-R12 R13(sp) R14(lr) R15(pc) CPSR, SPSR ARM SoC 特殊功能寄存器 SFR(Special Function Register),15,核心概念之二,地址 C程
9、序中变量的“地址” :&a SoC 特殊功能寄存器的“地址” :0 x48000000 寻址方式里面的“地址” :ldr r0, r1 二进制指令里面的“地址” :0 xE59FF018 存储芯片内部的“地址” :0 x4h 操作系统之上应用程序的“(虚)地址” CPLD器件对应的“(假)地址”,16,核心概念之三,异常和中断 异常是属于ARM内核体系结构的概念 中断是属于ARM SoC处理器的概念 了解软件中断(SWI)是实现操作系统提供系统调用的重要手段 了解硬件中断(例如Timer定时器)是实现操作系统时间片的重要手段,17,行胜于言,如何实践?如何修炼? 第一重 找一块开发板,自己动手
10、,给它编写一个可以实用的Bootloader,能够实现外部程序的下载,执行和固化。 第二重 在自己能够完整实现一个Bootloader的基础上,移植一个开源的操作系统(如uC/OS-II,或者Linux) 第三重 基于或不基于这个操作系统,实现一个面向用户的应用。(如一个音频播放器,或者一个U盘),18,自我修炼之第一重境界,为什么要编写一个Bootloader? 从根本上掌握一个嵌入式开发板底层的软硬件系统是怎样运转起来的 时钟频率如何设置 看门狗所起作用 串口如何工作 通讯协议如何实现 库函数 反汇编 函数栈空间,19,自我修炼之第二重境界,为什么要移植一个操作系统? 了解操作系统和底层硬
11、件之间的依赖关系,知道哪些是移植相关的部分(即接口) 定时器中断(时钟节拍) 异常处理和现场保存恢复 进程,进程控制块 处理器现场 进程的上下文切换 中断级别的进程切换,20,自我修炼之第三重境界,为什么要实现一个用户应用? 一个音频播放器 DMA控制器,Interrupt中断控制器 IIS 总线 UDA1341声卡芯片驱动 WAV/Mp3 音频文件格式 LCD液晶显示驱动 一个U盘 USB协议 FAT文件系统格式 SCSI命令集 NandFlash存储芯片驱动,21,推荐参考资料,ARM Architecture Reference Manual PDF,Part A ARM体系结构与编程 清华大学出版社,杜春雷著 源码开放的嵌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江大学高等代数期末试卷|2022考研(权威解析版)
- 2023考研数学二期末试卷|附解析版
- 四川省南充市营山县城区片区学校2026-2027学年六年级数学第一学期期末统考试题含解析
- 2026年中职计算机应用(程序设计基础)试题及答案
- 木结构考试题及答案
- 统计指数考试题及答案
- 机电保护考试题及答案大全
- 速成电工考试题及答案
- 会计初级考试题及答案2025
- 2026年大学素描(静物写生与造型基础)试题及答案
- 修理组管理办法
- 精神病人健康指导
- 华为流程管理实践
- CJ/T 3041-1995水处理用天然锰砂滤料
- 学生骑自行车上学协议书
- 科普创意美术课件
- 医院感染暴发识别与报告处置流程
- 设备损坏更换协议书
- 科学(3-6年级)课程标准解读
- Tesseral-中文-用户手册
- 互联网护理服务典型案例
评论
0/150
提交评论