ARM嵌入式接口技术应用》第一章ARM实验板硬件结构与参考PPT_第1页
ARM嵌入式接口技术应用》第一章ARM实验板硬件结构与参考PPT_第2页
ARM嵌入式接口技术应用》第一章ARM实验板硬件结构与参考PPT_第3页
ARM嵌入式接口技术应用》第一章ARM实验板硬件结构与参考PPT_第4页
ARM嵌入式接口技术应用》第一章ARM实验板硬件结构与参考PPT_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,ARM嵌入式接口技术应用 -提高篇,长沙市元享电子 制作,2,内容简介,本套教材构成: 入门篇ARM嵌入式应用技术基础 提高篇 ARM嵌入式接口技术应用 实战篇ARM嵌入式应用实战 ARM嵌入式接口技术应用涉及到众多应用领域: 1 、工业控制领域 2 、无线通讯领域 3 、成像和安全产品 4 、网络应用 5 、消费类电子产品,3,众多领域中抽象出六大常见应用模块,最后对嵌入式实时操作系统COS-II作了重点阐述,并对独自研发的操作系统移植代码作了重点剖析,4,章节目录,第一章ARM实验板硬件结构与开发环境 第二章串行通信 第三章存储器件 第四章时钟控制模块 第五章人机交互输出接口 第六章人

2、机交互输入接口 第七章模/数与数/模转换 第八章C/OS-嵌入式操作系统的移植 第九章 电机控制,5,第一章 ARM实验板硬件结构与开发环境,一、 硬件平台功能模块介绍 二、 ADS1.2开发环境与JTAG下载环境介绍 三、 蜂鸣器范例程序的烧写与调试 四、 附录-LPC2220的简要介绍,6,一、硬件平台部分功能模块,1、串行通信:SPI、I2C、UART、RS232、RS485,2、存储器操作:EEPROM、SRAM、Nor-FLASH、Nand-FLASH,3、片内功能模块:定时器、计数器、看门狗、PWM、实时时钟、低功耗,4、人机交互:矩阵式键盘、触摸屏、声音电路、数码管、显示屏、蜂鸣

3、器,5、数模和模数转换、数字电位器,7、嵌入式操作系统uCOS-II平台上的相关实验,等等更多实验,6、步进电机和直流电机(实验箱上完成,可开展的实验,7,8,1.1 RS232和RS485串行通信接口,LPC2220内部的UART0模块与SP3232E芯片构成RS232通信模块; SP3232E芯片是RS232通信转换芯片; UART1模块与MAX483芯片构成RS485通信模块。 MAX483是5V工作电源的半双工的RS485通信转换芯片,9,1.2流水灯接口,74HC164是一款串/并转换芯片,ARM可以通过串行通信方式把数据发送到74HC164芯片中,然后74HC164把接收到的数据输

4、出到并行端口QAQH上。每个输出端都连接了一个LED灯,10,1.3 LCM接口,液晶显示器件具有显示信息量大、低压、低功耗、长寿命、无辐射、无污染的优异特性,在显示领域占据了重要地位,LPC2220采用间接访问方式连接LM2068图形液晶模块,该液晶模块没有地址总线,显示地址和显示数据均通过Q1Q8共8根I/O线传送,11,1.4EEPROM接口电路,EEPROM是一种价格便宜、接口简单、应用广泛的存储器件,主要应用于保存关键数据且数据量不大的场合。本系统采用的是CAT24WC16芯片,ARM芯片提供的是漏极开路的I2C总线 ,时钟线和数据线上都要接一个上拉电阻,12,1.5存储器接口,核心

5、板上扩展了16 Mbit FLASH(SST39VF1601)和4 Mbit SRAM,其中FLASH用来保存用户的程序代码,SRAM用来存储程序运行时的数据,13,1.6 Nand-Flash接口,K9F6408U0C是三星公司生产的与非型64 Mbit FLASH存储器,它具有工作电压低、擦写速度快、体积小等优点,正成为大型数据如语音、数字图像、文件等系统数据的载体,14,1.7 ADC接口,LPC2220系列ARM具有8路10位 ADC转换器,其参考电压为3.3V。 本实验板提供了两路电压信号测量输入通道ADC1和ADC2,其中每1个通道又有两个可选择的信号输入源,15,1.8 DAC接

6、口,DAC7512N是一款35V电源供电的DAC芯片,通过SPI接口接收数字量数据,再将数字量数据转换成相对应的电压模拟量输出,16,1.9 数码管接口,本实验板采用了4位1体的共阳极数码管,4位1体的数码管总共需要12个I/O控制端口,其中4个I/O口用于控制数码管的位选端,另外8个I/O口用于控制数码管的段选端,74HC595芯片把从ARM接收到的串行数据并行输出到QAQH端口上,进而控制数码管的段选端(A1A4)输入数据,17,2.0 蜂鸣器和喇叭接口,在发声电路设计上,本实验板准备了两路发声电路:蜂鸣器、喇叭。两路发声电路分别通过两路I/O口SPK、BEE进行控制,18,2.1 键盘接

7、口,键盘按照结构形式可分两大类:编码键盘和非编码键盘。本实验板具有16个按键,采用非编码式,4行4列矩阵式排列,19,2.2 触摸屏接口,本实验板采用电阻四线式触摸屏,触摸屏采用ADS7843芯片进行控制,ADS7843芯片的通信引脚和控制引脚连接LPC2220处理器的I/O口上,20,2.3 计数接口,本实验板设计了两路计数接口电路,外部脉冲信号可以连接Count接头的1、2脚或者3、4脚,JS1和JS2两个端口连接LPC2220的捕获引脚,实现对外部脉冲计数,21,2.4 PWM接口,PWM输出电路可以输出一个PWM波形,匹配输出电路也可以产生一个脉冲波形。在PWM和MAT都各自连接了一个

8、集成运算放大电路,放大倍数由RP1、RP2电位计调节,信号放大之后再由4线接口输出,22,2.5 实验板结构,电源插座 2. 外部电压测试端口 3. 按键区域(17个按键) 4. RS232接口 5. 4位数码管 6. 触摸屏接口 7. 液晶屏接口 8. 液晶屏亮度调节旋钮 9. 8个LED灯 10.核心板插座 11.喇叭接口 12.LED灯外部测试端口 13.蜂鸣器 14.电位器区域 15.AD采样源设置跳线 16.外部端口连接区域,23,二、开发环境,ADS集成开发环境,其成熟版本为ADS1.2。支持软件调试及JTAG硬件仿真调试,支持汇编、C和C+源程序,具有编译效率高,系统库功能强等特

9、点,ADS1.2集成开发环境的组成,24,1.1 Code Warrior IDE 简介,ADS1.2使用了Code Warrior IDE集成开发环境,用户在这个IDE集成开发环境下可以方便的编写程序并管理好整个工程项目,25,1.2 AXD调试器简介,ADX调试器为ARM扩展调试器。AXD能够装载映像文件到目标内存,具有单步、全速和断点等调试功能,可以观察变量、寄存器和内存的数据等等,26,三、 蜂鸣器程序范例,实验目的:通过编写一个简单的程序,熟悉ADS1.2的开发环境和调试环境,掌握如何通过JTAG接口把程序烧写到实验板上。有关ARM汇编指令和ADS1.2软件的详细介绍请参考本套书中的

10、第一本“入门篇”。 实验内容:编写一个简单的程序,控制蜂鸣器间断地产生蜂鸣声。实验电路如图1.15,蜂鸣器的控制引脚BEE连接ARM芯片的P1.24。当P1.24为高电平时,三极管Q7导通,蜂鸣器蜂鸣;当P1.24为低电平时,三极管Q7截止,蜂鸣器停止蜂鸣,27,1.1 蜂鸣器程序,include “whole.h”/包含所有的头文件定义 /* * 名称:DelayMS() * 功能:软件延时 * 入口参数:dly延时参数,大约延时dly毫秒 */ void DelayMS(uint32 dly) uint32 i; for(; dly0; dly-) for(i=0; i5000; i+);

11、 /* * 名称:main() * 功能:控制蜂鸣器蜂鸣。 */ int main(void) IO1DIR = IO1DIR | (124); / 设置控制蜂鸣器引脚P1.24为I/O输出 while(1) IO1CLR = (124);/ P1.24 = 0, 关闭蜂鸣器 DelayMS(100); IO1SET = (124);/ P1.24 = 1, 打开蜂鸣器 DelayMS(100);,28,1.2 建立工程,选择Windows操作系统的“开始”“所有程序”“ARM Developer Suite v1.2”“CodeWarrior for ARM Developer Suite”

12、 命令启动Metrowerks CodeWarrior或双击CodeWarrior for ARM Developer Suite快捷方式启动,29,选择“QuickStart_ARM”工程模板;在“Project name:”中输入工程文件名,例如命名为BEE,点击“Location:”文本框的“Set”按钮,浏览选择想要将该工程保存的路径(注意:路径名最好是英文的),将这些设置好后,点击“确定”,即可建立一个新的名为BEE.mcp的工程,30,1.3 编辑程序,新建的工程项目BEE.Mcp已经包含了一些基本的程序文件(启动代码文件Start.s和target.c,在“*.h”组中有所需的头

13、文件,主程序文件main.c),31,我们在user组中双击main.c,打开main文件,然后输入程序清单1.1所示的程序,32,在工程项目视图中单击“Make”图标对工程进行编译链接,(或者按快捷键F7)。编译后,将会弹出一个“Errors & Warnings”对话框,报告编译信息,33,1.4 程序下载,当工程编译链接通过后,会在相应的工程目录(如“E:testBEEBEE_DataFlash”)生成一个可执行映象文件BEE.axf和二进制可执行文件BEE.bin 。二进制可执行文件是用来程序下载的,而可执行映像文件是用来程序调试的。 接下来我们的工作是先把二进制可执行文件下载到ARM

14、实验板上,下载步骤如下,34,首先将JTAG仿真器的25针接口通过并口延长线与PC机的并口连接,将JTAG仿真器的另外一头连接到实验板的下载口上,再使用配套USB线(5V)给实验板供电。 打开H-JTAG Server软件,单击菜单“Settings”“Jtag Settings” 。弹出Jtag Settings对话框,选择Wiggler下载器,35,单击菜单“Operations”“Detect Target”,此时H-JTAG软件进行目标板的连接,如果检测到目标板,会在在主界面的中央部分会显示芯片的类型和其 32 位芯片ID。如果检测失败,或者芯片无法识别,H-JTAG将会显示UNKNO

15、WN,提示用户 H-JTAG无法检测/识别目标开放板,36,单击菜单“Flasher”“Start H-Flasher”,弹出H-Flasher烧写向导。二进制文件的烧写一共分为4步,即Flash选择存储器配置初始化芯片脚本编程下载,37,在向导第一步当中,选择Flash芯片型号。根据实验板的具体情况,我们选择SST厂商,在SST厂商芯片中选择具体型号为SST39VF1601。 在向导的第二步,是对存储器进行配置。 SST39VF1601只支持 16-BIT 模式,所以位宽采用默认设置,38,根据 LPC2220的数据手册,我们需要对三个寄存器进行设置: PINSEL20 xE002C014

16、BCFG0 0 xFFE00000 BCFG10 xFFE00004,39,在配置好后,在编程向导的第四步中,就可以对 FLASH 执行不同的操作了。选择文件格式为二进制(Plain Binary Format),烧写的目的地址为 0 x80000000,设置如图所示。然后开始烧写。烧写完成后,H-FLASHER 会提示烧写并验证成功,40,1.5 程序的调试,启动AXD调试环境后,单击菜单“Options”“Configure Target”,弹出“Choose Target”对话框在图所示的配置窗口中,点击 Add 按钮添加驱动程序,用户会看到选择 DLL 文件的对话框。 在对话框里选择

17、H-JTAG 安装目录下的 H-JTAG.DLL,然后点击确定,41,添加“H-JTAG.dll”文件后,“Choose Target”对话框中会多一个“H-JTAG”选项,选中“H-JTAG”选项。如图,点击 OK,AXD的配置就全部完成了,42,打开“Load Image”对话框,在该对话框中找到刚刚生成的可执行映象文件“BEE.axf”,如图所示。单击“打开”按钮后,AXD调试环境就装载了可执行映像文件。 程序下载完毕后,程序运行指针会自动跳到第一条语句(启动代码) 。单击AXD调试环境工具条中得运行键即可运行,43,四、附录 - LPC2220简要介绍,LPC2220是基于一个支持实时

18、仿真和跟踪的32位ARM7TDMI-S核,QFP144封装的芯片。 LPC2220芯片内部功能模块包括: 1) 8路10位A/D转换器,转换时间低至2.44s。 2) 2个32位定时器、PWM单元、实时时钟和看门狗。 3) 多个串行接口,包括2 个16C550工业标准 UART、高速I2C接口和2个SPI接口。 4) 一个向量中断控制器,可程序配置优先级和向量地址。 5) 多达76个通用I/O口,9个边沿或电平触发的外部中断引脚。 6) 通过外部存储器接口可将存储器配置成4组,每组的容量高达16Mb,数据宽度为8/16/32位。 7) EmbeddedICE-RT和嵌入式跟踪接口使用片内Rea

19、lMonitor软件对任务进行实时调试并支持对执行代码进行无干扰的高速实时跟踪。 8) 双电源环境下工作,CPU内核工作电压范围:1.651.95 V(1.8 V0.15 V) ;I/O操作电压范围:3.03.6 V(3.3 V10%),可承受5V电压,44,1.1 LPC2220引脚描述,LPC2220的芯片引脚与LPC221X(如LPC2220、LPC2214)系列的芯片引脚是兼容的。除电源引脚(如V18、V3、Vs等)、晶振引脚(XTAL1、XTAL2)和复位引脚(RESET)外,其他的引脚都具备多种功能,通过寄存器的配置可以让其工作在某种功能下,45,1.2 LPC2220的引脚功能的设置,ARM芯片中往往一个引脚可以具有多个功能,即引脚复用。通过配置相关寄存器来选择引脚具体的功能。在LPC2220芯片中,有一个引脚连接模块专门管理引脚的功能选择。这个引脚连接模块包含3个寄存器:PINSEL0、PINSEL1、PINSEL2,46,1.3 引脚功能选择寄存器0,47,1.4 引脚功能选择寄存器1,48,1.5 LPC2220 GPIO相关寄存器介绍,1. GPIO方向寄存器 当引脚配置为GPIO模式时,可使用该寄存器控制引脚的方向。任意引脚的方向位的设置必须与引脚功能一致,2. GPIO输出置位

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论