已阅读5页,还剩57页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ARM嵌入式系统设计初步 一 嵌入式系统体系结构概述二 嵌入式系统主要功能部件的工作原理三 micro2440系统的开发和调试 一 嵌入式系统体系结构概述 1 1嵌入式系统的概念 以上定义包含如下含义 它必然是一个技术密集 不断创新的知识集成系统 它是一个面向用户 面向产品的专用系统它是一个根据应用需求进行硬件和软件裁剪的计算机应用系统 它需要一套开发工具和环境进行应用系统的开发和调试 硬件以高性能处理器为基础 软件以多任务操作系统为基础的综合平台 微处理器MPU 外围电路 电源模块 时钟电路 复位电路 flash RAM ROM USB LCD 键盘 其它 外设 一 嵌入式系统体系结构概述 应用程序 操作系统 软件 1 2ARM微处理器 1 2 1ARM的含义 ARM是一个公司的名 它于1991年成立在英国剑桥 是专门从事基于RISC技术芯片设计开发的公司 其全称是 AdvancedRISCMachines 1 何为RISC RISC即ReducedInstructionSetComputer精简指令集计算机 它于CISC对应 2 何为CISC 即ComplexInstructionSetComputer复杂指令集计算机 1 2 2ARM处理器的特点 体积小 功耗低 成本低 性能高 具有双指令集处理功能 即Thumb 16位 和ARM 32位 指令集 内含大量寄存器 使指令执行速度快 指令长度统一 便于指令处理 采用流水线方式处理指令 具有7中工作模式内含存储器管理部件 MMU 内含高速存储器 cache 内含大量接口电路和功能部件 工作频率高 400Mhz以上 ARM处理器系列有 ARM7 ARM9 ARM10和ARM11 关于指令执行方式 如果一条指令执行完了以后 再执行下一条指令 这种执行指令的方式称为串行方式 指令流水线执行方式 如果第一条指令在完成取指令第一步骤以后 控制器就取第二条指令 取完了第二条指令就取第三条指令 以此类推 这种指令执行的方式称为并行方式 或称为流水线方式 关于ARM指令集和Thumb指令集 ARM指令集是32位指令集 指令是用32位二进制数进行编码 数据也是用32位二进制数来编码 地址信号也是32位 使得内存寻址空间达4GB Thumb指令集是16位指令集 指令是用16位二进制数进行编码 同样数据也是用16位二进制数来编码 它是ARM指令集的子集 它的优点是 指令密度高 改变了32位二进制数编码浪费的问题 使得生成的程序代码少 节省存储器空间 ARM系统在执行程序时 可以方便地在两个指令集之间切换 采用伪指令CODE16和CODE32 这体现了ARM系统可裁剪的特点 关于处理器的工作模式 这是一种只为用户程序提供有限硬件资源的运行模式 1 用户模式 USR 2 快速中断模式 FIQ 当需要与外设进行高速数据传输时的运行模式 3 中断模式 IRQ 用于普通中断处理的运行模式 计算机为了有效处理各种异常情况和支持操作系统软件 处理器将工作模式分为七种模式 处理器的工作模式续 操作系统保护时的运行模式 4 管理模式 SVC 5 中止模式 ABT 当数据或指令预取出错时的运行模式 6 系统模式 SYS 具有特权的操作系统任务的运行模式 7 未定义指令中止模式 UND 当处理器试图执行未定义指令时的运行模式 1 2 3ARM920T处理器 1 ARM920T的内核结构 ARM920T的内核结构说明 处理器内核采用哈佛体系结构 实现了5级流水线的指令操作 即取指令 指令译码 指令执行 数据存储器访问和寄存器回写 处理器内核采用哈佛体系结构 分别构建了指令高速RAM存贮器和数据高速RAM存储器 处理器内核中的CPU是ARM9TDMI 支持32位ARM指令集和16位Thumb指令集 处理器内核采用标准的总线结构 如AMBA ASB AHB 处理器内核支持ARM的调试体系 S3C2440ARM结构 2 AHB总线模块 AHB总线模块说明 1 LCD控制器 LCDDMA 液晶显示器的数据传送及其控制器 2 NAND控制器 NAND是一种大容量FLASH存储器 3 SRAM NOR SDRAM存储器控制电路 4 总线控制器 用于管理总线资源的使用 AHB AdvancedHigh performanceBus 3 APB总线和时钟模块 APB总线模块说明 APB是AdancedPeripheralBus高级外围总线 1 GPIO GeneralPurposeI O 3 RTC RealTimeClock 产生具有日历功能的时钟信号 5 SD MMC存储卡控制器 6 通过软件可以有选择地为各功能模块提供时钟信号 MPLL是产生MCU的时钟 2 UART SPI USB I2C I2S 均为不同标准的串行口 4 定时器 PWM 定时 脉冲宽度调制信号发生器 1 3嵌入式操作系统 1 3 1什么是操作系统 操作系统OS OperationSystem 是计算机的系统软件 其作用是 有效地控制和管理计算机的硬件资源和软件资源 为用户提供方便的操作界面和应用接口 操作系统有顺序执行系统 分时操作系统和实时操作系统 1 3 2实时操作系统 实时操作系统RTOS RealTimeOperatingSystem 是支持用户按时完成任务 程序 的一个系统软件 实时系统是一个能够在指定的时间内完成系统功能 是一个能够对内部或外部事件在规定时间内作出反应的系统 实时系统还具有以下特点 并行性 在宏观上能够同时处理多个工作 可靠性 当系统出现了错误 系统仍然可以处在可预测状态 仍可以安全带错运行 1 3 3嵌入式操作系统的作用 能保证嵌入式系统安全有效地运行 能方便开发人员进行裁剪操作系统 并把用户程序融入进来 1 3 4常用的嵌入式实时操作系统 1 Linux操作系统的优点是 源代码开放 可以定制 2 WinCE操作系统的特点 继承了Windows界面 软件移植性好 3 C OS II操作系统的特点 结构简单 功能完备 实时性强 二 嵌入式系统主要功能部件的工作原理 2 1通用输入输出口 GPIO ARM的通用输入输出口 GPIO 一般都要多种功能 它不仅是输入输出信号的通道 而且是ARM芯片内各种功能部件与外界联系的通道 不同型号的ARM 其通用输入输出口 GPIO 的数量是不一样的 如s3c2410芯片具有117个多功能GPIO端口 它们分别是 多功能GPIO端口 PortA GPA 23线输出口PortB GPB 11线输入 输出口PortC GPC 16线输入 输出口PortD GPD 16线输入 输出口PortE GPE 16线输入 输出口PortF GPF 8线输入 输出口PortG GPG 16线输入 输出口PortH GPH 11线输入 输出口 2 1 1通用I O口相关寄存器 1 端口控制寄存器 端口控制寄存器用于设置各端口线位的功能 端口控制寄存的符号为GPnCON n A H 各端口控制寄存的地址 通用I O口相关寄存器续 2 端口数据寄存器 端口数据寄存器用于输入 输出传递数据 端口数据寄存的符号为GPnDAT n A H 各端口数据寄存的地址 通用I O口相关寄存器续 3 端口上拉寄存器 端口上拉寄存器用于设置各端口线位上拉电阻的功能 端口上拉寄存的符号为GPnUP n B H 各端口上拉寄存的地址 2 1 2通用I O口应用举例 GPF端口有8根线 每一根线的工作模式都可以通过对GPFCON的编程来配置 GPF端口有8根线的工作模式 输入 INPUT 输出 OUTPUT 功能引脚 中断信号输入 GPF端口控制寄存器中控制位的配置 D1D0控制GPF0线 D3D2控制GPF1线 以此类推 D15D14控制GPF7 具体控制编码是 00为输入 01为输出 10为功能引脚 中断信号输入 11为保留 1 GPF端口连接LED及其控制编程 GPF端口连接LED及其控制编程续 GPF端口与LED连接电路 ARM处理器 GPF4 VDD3 3V GPF4采用灌电流驱动LED GPF4 0 LED亮 GPF4 1 LED暗 R0 R0是限流电阻 防止电流太大 损坏接口 GPF端口连接LED及其控制编程续 控制编程如下 definerGPFCON volatileunsigned 0 x56000050 PortFcontrol definerGPFDAT volatileunsigned 0 x56000054 PortFdata definerGPFUP volatileunsigned 0 x56000058 Pull upcontrolF rGPFCON rGPFCON 0 x00000100 GPF4为输出模式rGPFUP rGPFUP 0 x10 GPF4线禁止接上拉电阻 rGPFDAT rGPF4DAT 0 x10 GPF4输出1rGPFDAT rGPFDAT GPF4输出0 GPC端口连接键钮及其控制编程 GPC端口与键钮的连接电路 ARM处理器 GPC1 VDD3 3V R1 R1是外接的上拉电阻 其功能是当键钮未按下时 GPC1线输入是高电平 GPC端口连接键钮及其控制编程续 控制编程如下 definerGPCCON volatileunsigned 0 x56000020 PortFcontrol definerGPCDAT volatileunsigned 0 x56000024 PortFdata definerGPCUP volatileunsigned 0 x56000028 Pull upcontrolF rGPCCON rGPCCON GPC1线允许接上拉电阻 rGPCDAT rGPCDAT GPC1输入0 则rGPCDAT 0 x0000 2 2ARM系统中的存储器结构 2 2 1多层次的存储器结构 在PC中 存储器系统是由硬盘 内存条和CPU中的Cache组成 构成了多层次的存储器结构 与此类似 ARM微机中的存储器也是多层次的存储器结构 由NANDFLASH NORFLASH 主存储器和CPU中的Cache组成 为什么计算机中采用不同类型的存储器来构造存储器系统呢 主要是鉴于速度和成本的考虑 2 2 2NANDFLASH存储器 NANDFLASH是一种非易失性的半导体存储器 具有以下特点 1 以页为单位进行读和编程操作 故CPU不能直接读取指令和数据 其中的程序代码和数据代码只能先装载到主存中 然后再执行 2 数据和地址采用同一总线 实现串行读取 3 芯片尺寸小 引脚少 成本低 4 启动时 NandFlash控制器将NandFlash中的最先4KB代码装载到控制器的SRAM中 然后执行这个启动程序 在执行启动程序中将NandFlash中的内容复制到主存中 接着CPU再执行主程序 2 2 3NorFLASH存储器 NorFLASH是一种非易失性的半导体存储器 具有以下特点 1 拥有独立的数据总线和数据总线 使CPU能快速地 直接地从中读取指令执行指令 2 芯片尺寸大 引脚多 集成度低 成本高 3 如果程序被固化在NorFlash 启动时 CPU直接从NorFlash中取指令 执行主程序 2 2 4DMA控制器 1 何为DMA DMA DirectMemoryAcess 即直接存储器存取 它是一种外围设备与内存之间数据传递的方式 该数据传递方式有以下优点 数据传送无需CPU介入 从而提高了CPU的工作效率 消除了因CPU与外围设备速度不匹配引起的数据丢失问题 2 DMA控制器 DMA控制器是实现外围设备与内存之间直接数据传送的电路部件 DMA操作的主要过程如下 外围设备向DMA控制器发出DMA请求 DMA控制器向CPU发出总线请求 CPU响应DMA请求 将总线控制权出让给DMA控制器 DMA控制器向外围设备发DMA响应信号 准备开始数据传送 进行DMA数据传送 数据传送完毕 DMA控制器向CPU发中断申请信号 CPU在接收到此信号后 转入中断处理程序进行DMA后续工作的处理 CPU执行完该中断子程序后 返回到被中断的程序继续执行 CPU重新获得总线控制权 三 micro2440系统的开发和调试 3 1micro2440开发板的简介3 2采用ADS集成开发环境对嵌入式系统的开发和调试3 3采用Linux开发环境对嵌入式系统的开发和调试 3 1micro2440开发板的简介 Micro2440嵌入式系统的结构是采用核心板 底板方式 3 1 1Micro2440嵌入式系统的核心板 Micro2440核心板配置 Micro2440核心板其实是一个最小系统板 它具有最基本的系统配置 CPU 三星S3C2440 运行于400Mhz NORFLASH 2M NANDFLASH 64M 可升级到128M 1G SDRAM 64M SDRAM地址空间 0 x30000000 0 x34000000 1个电源指示灯和4个用户指示灯 专业复位芯片 在板JTAG 专业电压调节芯片 3 1 2Micro2440嵌入式系统的底板 Micro2440SDK底板资源特点 Micro2440SDK参考底板除了常见的标准接口 音频输入和输出 DB9串口COM0 COM1 COM2 USBHost和USBSlave RJ 45网络接口 SD卡座等 为了方便学习开发 还引出了其他GPIO 系统总线接口等外设和接口 1 用户LED LED是开发中最常用的状态指示设备 Micro2440具有4个用户可编程LED 它们直接与CPU的GPIO相连接 低电平有效 点亮 详细的资源占用如下表 LED电路 2 用户按键 A D输入测试 本开发板总共可以引出3路A D 模数转换 转换通道 它们位于板上的CON6接口 为了方便测试 其中AIN0连接到了开发板上的可调电阻W1 原理图如下所示 3 1 3Micro2440开发板使用说明 1 启动模式选择 S2接到NorFlash标识一侧时 系统将从NorFlash启动 S2接到NandFlash标识一侧时 系统将从NandFlash启动 2 外部接口连接 请使用直连串口线连接开发板的串口0和PC机的串口 用交叉网线将开发板的网络接口与PC相连 用5V电源适配器连接到板上的5V输入插座 用USB电缆连接开发板和PC 使用说明续 3 设置超级终端 超级终端是micro2440系统中软件BIOS的操作平台 为了通过串口连接开发板 必须使用一个模拟终端程序 几乎所有的类似软件都可以使用 4 安装USB下载驱动 安装的USB驱动是在BIOS模式下 配合dnw exe软件将程序下载到micro2440的SDRAM中执行 非操作系统下的外围资源测试 1 下载运行测试程序 2440test是一个裸机测试程序 在images 2440test 目录中找到2440test bin文件 通过BIOS下载运行该测试程序 步骤如下 1 连接好开发板电源 串口线 USB线 并设置拨动开关S2为NorFlash启动系统 分别打开串口超级终端和DNW 上电启动开发板 2 保证USB驱动已经安装好 前面已经详细介绍了USB驱动的安装方法 这时可以看到DNW的标题栏显示 USB OK 如果没有安装好驱动会显示 USB x 下载运行测试程序续 在windows平台工具文件夹中执行DNW EXE程序 PC机屏幕上出现以下窗口 下载运行测试程序续 3 点DNW菜单Configuration 设置USB下载运行地址为0 x30000000 下载运行测试程序续 4 这时在超级终端的BIOS功能菜单中选择功能号 d 出现USB下载等待提示信息 下载运行测试程序续 5 点击DNW程序的 USBPort Transmit 选择2440test bin这个映象文件 在光盘的images 2440test 目录下面 接着点 打开 这样就开始下载了 下载运行测试程序续 6 下载结束后 会自动运行 出现如下界面 同时在micro2440系统的LCD上会出现一副 向日葵 画面 2 外围资源测试 1 蜂鸣器测试 TestPWM 在主菜单中 输入 1 再按 回车 键 即Enter键 将开始进行蜂鸣器测试 蜂鸣器测试运行起来后 将会听到蜂鸣器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 应急警务保障工作制度
- 廉政风险防控工作制度
- 建立健全政治工作制度
- 开展领导接访工作制度
- 志愿者注册工作制度
- 悠然牧业工作制度汇编
- 扫黄打非九大工作制度
- 2026年隔离技术规范准入测试题(含答案)
- 2026年委托代理采购合同(1篇)
- 2026年巨额赔偿合同(1篇)
- 多媒体一体机使用管理制度
- 临床科室每月运营分析报告
- 教师培训的课堂管理与纪律管理
- 毛泽东思想和中国特色社会主义理论体系概论(大连海事大学)智慧树知到课后章节答案2023年下大连海事大学
- 保洁服务投标方案
- 学位外语(本23春)形成性考核3试题答案
- 暖通专业主要设备材料技术要求
- 综合高级中学国文课程纲要
- 医学影像学课件 第五章 循环系统
- 2023大学英语六级考试词汇表完整版(复习必背)
- 神奇的动物世界课件
评论
0/150
提交评论