EasyARM嵌入式系统集成开发环境

  • 格式:doc
  • 大小:2.04 MB
  • 文档页数:33

第一章EasyARM2100 开发实验板硬件结构一、概述EasyARM2100 开发实验板是一款简单的32 位ARM 单片机实验板,采用的是PHILIPS的ARM7TDMI-S 核单片机LPC2114,具有JTAG 调试,ISP 编程等功能。

板上提供了一些键盘、LED、RS232 等常用功能部件,帮助用户学习32 位单片机从简单的开始,一步一步的过渡到32 位ARM 嵌入式系统开发领域。

LPC2114/2124/2119/2129/2194 是世界首款可加密的ARM 芯片,具有零等待128K/256K字节的片内FLASH,16K 的SRAM,无需扩展存储器,使系统更为简单、可靠;内部具有UART、硬件I2C、SPI、PWM、ADC、定时器、CAN(LPC2119/2129/2194)等众多外围部件,功能更强大;64 管脚LQFP 封装,体积更小;3.3V 和1.8V 系统电源,内部PLL 时钟调整,功耗更低。

功能特点:(1)使用CPU PACK,可以使用多种兼容芯片(LPC2114/2124/2119/2129/2194 等);(2)标配PHILIPS 的LPC2114,可进行JTAG 仿真调试,支持ADS1.2 集成开发环境;(3)完全自主设计的软硬件、拥有自主版权的JTAG 仿真技术,用户使用没有后顾之忧;(4)可选CAN 接口板,方便组装现场总线(5)所有I/O 全部引出,可以和用户的外部电路连接搭配;(6)4 个独立LED、6 个独立键盘控制;(7)具有RS232 转换电路,可与上位机进行通讯;(8)可以与标准串行MODEM 直接接口,方便远程通讯(9)具有I2C 器件、SPI 器件接口器件;(10)具有滤波电路,PWM 输出可实DAC 转换功能;(11)板上的功能部件可使用跳线器连接或断开连接;(12)提供基于PC 的人机界面,方便调试实时时钟、串口通信等功能;(13)提供详细的使用教材,实验例程。

(14)可进行GPIO 的控制实验,如LED 控制、键盘输入、蜂鸣器控制、模拟SPI 等;(15)可进行外部中断实验,学习向量中断控制器(VIC);(16)定时器控制实验,如定时控制LED、匹配比较输出等;(17)使用RS232 转换电路,完成UART 通讯实验;(18)使用板内的CAT24WC02,完成I2C 总线的实验;(19)使用74HC595 芯片,实现SPI 接口数据发送、接收实验;(20)具有PWM 输出测试点及滤波电路,实现PWM 输出、PWM DAC 实验;(21)实时时钟控制实验;(22)WDT 及低功耗控制实验;(23)ADC 数据采集实验。

二、硬件原理1. 原理图EasyARM2100 开发实验板电路原理图如图1 所示。

图 1 EasyARM2100开发实验板电路原理图2. 原理说明(1) 电源电路LPC2114/2124/2119/2129/2194 要使用两组电源,I/O 口供电电源为3.3V,内核及片内外设供电电源为1.8V,所以系统设计为3.3V 应用系统。

首先,由CZ1 电源接口输入9V 直流电源,二极管D2 防止电源反接,经过C1、C3 滤波,然后通过78M05 将电源稳压至5V,再使用LDO 芯片(低压差电源芯片)稳压输出3.3V 及1.8V 电压。

LDO 芯片采用了LM1117MPX-1.8 和LM1117MPX-3.3,其特点为输出电流大,输出电压精度高,稳定性高。

系统电源电路如图2 所示。

图2 系统电源电路LM1117系列LDO芯片输出电流可达800mA,输出电压的精度在±1%以内,还具有电流限制和热保护功能,广泛用户在手持式仪表、数字家电、工业控制等领域。

使用时,其输出端需要一个至少10uF的钽电容来改善瞬态响应和稳定性。

注意:EasyARM2100开发实验板使用的电源是9V直流电源,由CZ1电源接口输入,接头上的电源极性为外正内负。

(2) 复位电路由于ARM 芯片的高速、低功耗、低工作电压导致其噪声容限低,对电源的纹波、瞬态响应性能、时钟源的稳定性、电源监控可靠性等诸多方面也提出了更高的要求。

本实验板的复位电路使用了专用微处理器电源监控芯片MAX708SD,提高系统的可靠性。

由于在进行JTAG调试时,nRST、TRST是可由JTAG仿真器控制复位的,所以使用了三态缓冲门74HC125 进行驱动,电路如图3 所示。

图 3 系统复位电路如图3,信号nRST 连接到LPC2114 芯片的复位脚RESET,信号nTRST 连接到LPC2114芯片内部JTAG 接口电路复位脚TRST。

当复位按键RST 按下时,MAX708SD 立即输出复位信号,其引脚RST输出低电平导致74HC125C、74HC125D 导通,信号nRST、nTRST 将输出低电平使系统复位。

平时MAX708SD 的RST输出高电平,74HC125C、74HC125D 截止,由上拉电阻R4、R5 将信号nRST、nTRST 上拉为高电平,系统可正常运行或JTAG 仿真调试。

(3) 系统时钟电路LPC2114/2124/2119/2129/2194 可使用外部晶振或外部时钟源,内部PLL 电路可调整系统时钟,使系统运行速度更快(CPU 最大操作时钟为60MHz)。

倘若不使用片内PLL 功能及ISP 下载功能,则外部晶振频率范围是1MHz~30MHz,外部时钟频率范围是1MHz~50MHz;若使用了片内PLL 功能或ISP 下载功能,则外部晶振频率范围是10MHz~25MHz,外部时钟频率范围是10MHz~25MHz。

EasyARM2100 开发实验板使用了外部11.0592MHz 晶振,电路如图4 所示,用1MΩ电阻R6 并接到晶振的两端,使系统更容易起振。

用11.0592MHz 晶振的原因是使串口波特率更精确,同时能够支持LPC2114/2124/2119/2129/2194 芯片内部PLL 功能及ISP 功能。

图4 系统时钟电路(4) JTAG 接口电路采用ARM 公司提出的标准20 脚JTAG 仿真调试接口,JTAG 信号的定义及与LPC2114的连接如图5 所示。

图中,JTAG 接口上的信号nRST、nTRST 与开发实验板的复位电路连接(参考图3),形成线与的关系,达到共同控制系统复位的目的。

根据LPC2114 的应用手册说明,在RTCK 引脚接一个4.7KΩ的下拉电阻,使系统复位后LPC2114 内部JTAG 接口使能,这样就可以直接进行JTAG 仿真调试了。

如果用户需要使用P1.26~P1.31 作I/O,不进行JTAG 仿真调试,则可以在用户程序中通过设置PINSEL2寄存器来使LPC2114 内部JTAG 接口禁能。

另外,在TRACESYNC 引脚通过跳线器JP12接一个4.7K Ω的下拉电阻,可以在系统复位时使能/禁能跟踪调试端口,禁能时(JP12 断开)方可使用P1.16~P1.25 作I/O。

图5 JTAG 接口电路(5) 串口及 MODEM 接口电路由于系统是3.3V 系统,所以使用了MAX3232 进行RS232 电平转换,MAX3232 是3V工作电源的RS232 转换芯片。

另外,LPC2114/2124/2119/2129/2194 的UART1 带有完整的调制解调器(MODEM) 接口,所以要使用8 路的RS232 转换芯片SP3243ECA ( 或MAX3243ECA)。

如图6 所示,JP5、JP6 分别为UART0、UART1 口线连接跳线,当把它们断开时,这些口线保留给用户作为其它功能使用。

图6 串口及MODEM 接口电路当要使用ISP 功能时,请把JP5 短接,然后将PC 的串口(如COM1)与开发实验板的CZ2相连,使用UART0 进行通讯。

同时还要把JP8 短接,使ISP 的硬件条件得到满足。

用户通过CZ3 直接连接MODEOM,由LPC2114/2124/2119/2129/2194 的UART1 控制MODEM 拔号、通讯等等。

需要注意的是,LPC2114/2124/2119/2129/2194 的ISP 使能管脚(P0.14 口)与DCD1 功能脚复用,在系统复位时若P0.14 口为低电平,则进入ISP 状态;同样,在程序仿真调试过程中,若把JP8 短接,则DCD1 保持为低电平,影响MODEM 接口正确使用。

(6) 键盘电路EasyARM2100 开发实验板具有6 个独立按键,分别为KEY1~KEY6,如图7 所示。

由于GPIO 作为输入时,内部无上拉电阻,所以要使用R17~R22 等6 个上拉电阻,当没有按键时,口线值为1,当按键按下时为0;而R11~R16 为口线保护电阻,即当连接按键的I/O设置为输出时,这几个电阻保证了输出口不会直接对地短路。

其中,KEY1、KEY5 所连接的口线为P0.16、P0.20,这两个口分别与外部中断EINT0、EINT3 复用,所以可用这两个按键进行外部中断的实验、唤醒掉电CPU 的实验。

图7 键盘电路(7) LED 显示电路在显示方面,EasyARM2100 开发实验板采用了一片74HC595 驱动一位静态共阳LED数码管,如图8 所示,其时钟(SCK)、数据(SI)分别接到LPC2114 的SPI 接口的SCLK0、MOSI0,这样就可以发送数据到74HC595;片选(RCK,即74HC595 输出触发端)与P0.29口连接,由P0.29 控制74HC595 数据锁存输出;而最高位输出(SQH)连接到LPC2114 的SPI接口的MISO0,可用来读回数据。

这样连接就可以进行SPI 接口控制实验,并能把74HC595的移位输出读回来(由MISO0 读回)。

这一部份电路可用JP3 跳开。

在使用硬件SPI 接口主方式时,要把SPI0/1 的4 个I/O 口均设置为SPI 功能,如P0.4、P0.5、P0.6、P0.7,而且SSEL0/1 引脚不能为低电平,一般要接一个10KΩ的上拉电阻。

图8 SPI 驱动显示电路另外,EasyARM2100 开发实验板还具有4 个独立的发光二极管LED1~LED4,分别由P0.22~P0.25 输出控制,输出1 时对应的LED 熄灭,输出0 时对应的LED 点亮,电路如图9 所示。

这一部份电路可用JP4 跳开。

电路采用了 I/O 口灌电流的驱动方式来驱动LED ,这样做主要是因为I/O 口能提供的灌电流大于其拉电流,保证了LED 的显示亮度。

如图9,限流电阻为470Ω,则当I/O 输出0时,流过LED 的电流计算公式如公式1 所示。

图9 LED 控制电路3.3ledled V I R-=(公式1) 其中, V led 为发光二极管的导通压降值,一般为1.7V 。