当前位置:文档之家› TKStudio_EasyARM2103_book

TKStudio_EasyARM2103_book

TKStudio_EasyARM2103_book
TKStudio_EasyARM2103_book

目录

第1章LPC2103与EasyARM2103简介 (1)

1.1概述 (1)

1.2LPC2103特性 (1)

1.3EasyARM2103简介 (1)

第2章TKStudio与EasyARM2103快速入门 (3)

2.1TKStudio集成开发环境简介 (3)

2.2工程的编辑 (4)

2.2.1建立工程 (4)

2.2.2使用直接新建工程方式建立工程 (5)

2.2.3使用从工程模板新建工程方式建立工程 (6)

2.2.4建立文件 (6)

2.2.5添加文件到工程 (7)

2.2.6编译连接工程 (8)

2.2.7打开旧工程 (10)

2.2.8工程的调试 (11)

2.3使用GNU ARM LPC2103工程模板 (15)

2.3.1使用GNU ARM LPC2103工程模板建立工程 (15)

2.3.2GNU ARM LPC2103工程模板适用范围 (16)

2.4EasyJTAG-H简介 (16)

2.4.1EasyJTAG-H安装 (16)

2.4.2H-JTAG配置 (17)

2.5在TKStudio中使用EasyJTAG-H仿真器 (20)

第3章实验例程 (24)

3.1TKStudio应用示例 (24)

3.1.1实验目的 (24)

3.1.2实验内容 (24)

3.1.3实验步骤 (24)

3.1.4出现的问题与解决方法 (31)

3.2GPIO实验 (32)

3.2.1普通低速GPIO实验 (32)

3.2.2高速GPIO实验 (33)

3.3外部中断实验 (35)

3.3.1实验目的 (35)

3.3.2实验内容 (35)

3.3.3实验要求 (35)

3.3.4实验思路 (35)

3.3.5实验步骤 (35)

3.3.6GCC中断服务程序编写说明 (35)

3.3.7实验参考程序 (37)

3.4定时器实验 (38)

3.4.1定时器实验1 (38)

3.4.2定时器实验2 (40)

3.4.3定时器实验3 (42)

3.4.4定时器实验4 (43)

3.5UART实验 (45)

3.5.1UART实验1 (45)

3.5.2UART实验2 (48)

3.6I2C接口实验 (52)

3.6.1实验目的 (52)

3.6.2实验内容 (52)

3.6.3实验要求 (52)

3.6.4实验思路 (53)

3.6.5实验步骤 (53)

3.6.6实验参考程序 (53)

3.7SPI接口实验 (54)

3.7.1实验目的 (54)

3.7.2实验要求 (54)

3.7.3实验思路 (54)

3.7.4实验步骤 (54)

3.7.5实验参考程序 (54)

3.8SSP实验 (55)

3.9RTC实验 (55)

3.9.1RTC实验1 (55)

3.9.2RTC实验2 (60)

3.10模数转换器实验 (61)

3.10.1实验目的 (61)

3.10.2实验内容 (61)

3.10.3实验要求 (61)

3.10.4实验思路 (61)

3.10.5实验步骤 (62)

3.10.6实验参考程序 (62)

3.11WDT实验 (64)

3.11.1实验目的 (64)

3.11.2实验内容 (64)

3.11.3实验要求 (64)

3.11.4实验思路 (64)

3.11.5实验步骤 (64)

3.11.6烧写目标文件到FLASH步骤 (64)

3.11.7实验参考程序 (66)

3.12PLL设置实验 (67)

3.12.1实验目的 (67)

3.12.2实验内容 (67)

3.12.3实验要求 (68)

3.12.4实验思路 (68)

3.12.5实验步骤 (68)

3.12.6实验参考程序 (68)

第1章LPC2103与EasyARM2103简介

1.1 概述

LPC2103是一个基于支持实时仿真的16/32位ARM7TDMI-S CPU的微控制器,并带有32KB的嵌入高速Flash存储器,128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。

较小的封装和极低的功耗使LPC2103适用于访问控制器和POS机等小型应用系统中;由于内置了宽范围的串行通信接口(2个UART、SPI、SSP和2个I2C)和8KB的片内SRAM,LPC2103也适合用在通信网关和协议转换器中。32/16位定时器、增强型10位ADC、定时器输出匹配PWM特性、多达13个边沿、电平触发的外部中断、32条高速GPIO,使得LPC2103微控制器特别使用于工业控制和医疗系统中。

1.2 LPC2103特性

●16/32位ARM7TDMI-S微控制器,超小LQFP48封装;

●8KB的片内静态RAM和32KB的片内Flash程序存储器。128位宽度接口/加速器

可实现高达70MHz工作频率;

●通过片内boot装载程序实现在系统/在应用编程(ISP/IAP)。单个Flash扇区或整

片擦除时间为100ms,256字节编程时间为1ms;

●嵌入式ICE RT通过片内RealMonitor软件提供实时调试;

●10位A/D转换器提供8路模拟输入(每个通道的转换时间低至2.44us),以及特定

的结果寄存器来最大限度地减少中断开销;

●2个32位定时器/外部事件计数器(带7路捕获和7路比较通道);

●2个16位定时器/外部事件计数器(带3路捕获和7路比较通道);

●低功耗实时时钟(RTC)具有独立的电源和特定的32KHz时钟输入;

●多个串行接口,包括2个UART(16C550协议标准)、2个高速I2C总线(400Kbit/s)、

SPI和具有缓冲作用和数据长度可变功能的SSP;

●向量中断控制器(VIC),可配置优先级和向量地址;

●多达32个通用I/O口(可承受5V电压);

●多达13个边沿、电平触发的外部中断管脚;

●通过一个可编程的片内PLL(100us的设置时间)可实现最大为70MHz的CPU操

作频率,其具有10MHz~25MHz的输入频率;

●片内集成振荡器与外部晶体的操作频率范围为1~25MHz;

●低功耗模式包括空闲模式、带RTC的睡眠模式和掉电模式;

●可通过个别使能/禁止外围功能和外围时钟分频来优化额外功耗;

●通过外部中断或RTC将处理器从掉电模式中唤醒。

1.3 EasyARM2103简介

EasyARM2103开发板是广州周立功单片机发展有限公司设计的EasyARM系列开发套件之一,它采用了NXP公司基于ARM7TDMI-S核、LQFP48封装的LPC2103芯片,具有JTAG仿真调试和ISP编程功能。

EasyARM2103开发板上提供了按键、发光二极管等常用的功能器件,具有RS-232接口电路和I2C存储器电路。用户可以更换兼容的CPU进行仿真调试,如LPC2101和LPC2102芯片等。开发板上所有的I/O口全部引出,灵活的跳线组合,极大的方便用户进行32位ARM 嵌入式系统的开发实验。

功能特点:

●采用“底板+PACK板”的形式构成EasyARM2103开发套件,PACK板的主芯片为

LPC2103;

●板上所有的功能器件与LPC2103的引脚可通过跳线来连接;

●配套有详细的开发板实验教程;

●I/O口全部引出,方便用户连接外部电路进行开发;

●可进行GPIO的输入输出实验,如按键输入、发光二极管输出等;

●按键、发光二极管分别可用于外部中断、GPIO输出等;

●具有RS-232转换电路,可与上位机进行通信,完成UART通信实验;

●具有I2C接口和SPI/SSP接口输出;

●提供基于PC的人机界面,方便调试实时时钟和串口通信等;

●可进行外部中断实验,学习向量中断控制器(VIC);

●定时器实验,如定时器输出和定时器捕获等;

●复位芯片CA T1025,完成I2C总线实验;

●A/D转换实验;

●实时时钟控制实验;

●WDT看门狗实验;

●详细的实验教程和实验例程完整地验证了芯片的所有功能外设。

第2章TKStudio与EasyARM2103快速入门

2.1 TKStudio集成开发环境简介

TKStudio IDE 集成开发环境是广州致远电子有限公司开发的一个微处理软件开发平台,它是一款具有强大内置编辑器的多内核编译/调试环境,支持8051、ARM v4/v5/v7、AVR 等内核,可以完成从工程建立和管理、编译、链接、目标代码的生成,到软件仿真,硬件仿真(挂接TKS系列仿真器的硬件)等完整的开发流程。

TKStudio集成开发环境特点:

●支持众多主流内核,全部操作界面高度统一,免除开发环境熟悉周期;

●傻瓜式的成员提示及代码模板功能,提升编码速度及准确度;

●智能的代码导航系统,方便阅读和分析代码;

●方便的原型对比功能,快速追踪分析代码结构;

●专业的文件比较/差异合并功能,显示处理不同版本的细微差别;

●支持超大文件及十六进制编辑功能;

●完善的工程管理,多目标模式,多工具链编译;

●强大的专业编辑器,可配置语法高亮,独立元素颜色、大小突出显示,代码智能格

式化和折叠,列编辑功能等;

●完美的兼容性,支持uV2、uV3、ADS1.2工程导入;

●支持系统级调试,配备大量调试工具。

TKStudio主窗口如图2.1所示。

图2.1 TKStudio集成开发环境

2.2 工程的编辑

2.2.1 建立工程

在TKStudio集成开发环境中,可以通过两种方式建立工程:直接新建工程和从工程模板新建工程。采用直接新建工程方式建立工程,要选择相应的编译工具链和目标设备;采用从工程模板新建工程方式建立工程,则不需要选择编译工具链和目标设备,直接采用相应工程模板中的配置。

选择Windows操作系统的“开始”→“程序”→“TKStudi o”→“TKStudio”命令,启动TKStudio集成开发环境,或双击TKStudio快捷方式启动。启动TKStudio如图2.2所

示。

图2.2 启动TKStudio

2.2.2 使用直接新建工程方式建立工程

单击“工程”菜单,选择“新建工程”菜单项即弹出<新建工程>对话框。如图 2.3所示。

图2.3 新建工程

在“保存在”项中选择工程存放路径,并在“文件名”项中输入工程名称,并单击【保存】按钮,将弹出<选择目标CPU>对话框。如图2.4所示。

图2.4 选择目标CPU

在“器件家族”项中选择器件类型,在“选择编译工具”项选择编译工具链,并在“器件库内容”项中选择具体芯片,然后单击“确定”按钮即可建立相应工程,工程文件名后缀

为.xmp。

2.2.3 使用从工程模板新建工程方式建立工程

单击“工程”菜单,选择“从工程模板新建工程”菜单项即弹出<新建>对话框。如图2.5所示。

图2.5 从模板新建工程

在左边工程模板中,展开对应的工具链项,选择对应的工程模板,在“工程名”项中输入工程名称,然后在“位置”项中选择工程存放路径,单击“确定”按钮即可建立相应工程,工程后缀名为.xmp。

2.2.4 建立文件

建立一个文本文件,以便输入用户程序。点击“新文件”图标按钮,如图2.6所示。

图2.6 新文件图标按钮

然后在新建的文件中编写程序,单击保存图标按钮将文件存盘(或在“文件”菜单中执行保存命令),输入文件全名,如Test.c。注意,请将文件保存到相应工程目录下,以便于管理和查找。

您也可以通过选择“文件”→“新建”命令或点击“新建”图标按钮弹出<新建>对话框建立文件。如图 2.7所示。

图2.7 新建文件

在左边文件类型列表中,选择所要建立的文件类型,如要将新建的文件添加到工程中,选中“追加到工程”复选框,然后选择对应的工程和文件组。在“文件”项中输入文件名,可以不包含文件后缀,然后在“位置”项中选择文件存放路径,单击“确定”按钮即可。

2.2.5 添加文件到工程

如图 2.8所示,在工程窗口中,选择对应的文件组,右键单击,弹出浮动菜单,选择“追加文件到文件组”命令即可弹出打开对话框。如图 2.9所示。

图 2.8 添加文件菜单

图 2.9 选择源文件

在打开对话框中,选择要添加的文件,然后单击“打开”按钮即完成文件添加操作。

2.2.6 编译连接工程

1.编译工具配置

在进行编译、构建工程或重新构建工程之前,需要进行编译工具链的配置工作。若已进行编译工具配置,则不再需要进行重复的配置工作。

如图 2.10所示,选择“工程”→“编译工具设置”命令即弹出<编译工具设置>对话框。如图 2.11所示。

图 2.10 编译工具设置菜单

图2.11 编译工具设置

在“选择编译工具”项中选择使用的编译工具,并在“工具安装目录”项中选择编译工具所在目录(一般为bin文件夹),单击“确定”按钮即完成编译工具设置。

TKStudio中已自带了GNU ARM的编译工具,若选择“GNU Tools for ARM”编译工具,则不需要另外安装GNU ARM工具链。

2.编译连接

如图 2.12所示为TKStudio的图标按钮,通过这些图标按钮,您可以快速的进行工程配置、编译和连接。它们从左到右分别为:

●编译当前文件:只对当前文件进行编译,不进行连接;

●构建:对所有的目标文件进行连接,不进行编译;

●重建所有工程文件:对所有工程文件进行编译,然后进行连接;

●停止构建:中止正在执行构建操作;

●工程配置:如地址设置、输出文件设置和编译选项等。其中,DebugRel 为当前工

程配置名。

图 2.12 编译连接图标按钮

单击工程配置图标按钮,即可进行工程的地址设置、输出文件设置和编译项设置等。选择不同的编译工具,会弹出不同的工程配置对话框。若选择“GNU Tools for ARM”编译工具,则工程配置对话框如图 2.13所示。

图2.13 GNU ARM工程配置

在工程配置对话框中,设置好编译选项后,点击编译图标按钮或构建工程按钮即可对工程进行编译或连接。若编译出错,会有相应的出错提示,双击出错提示行信息,编译窗口即

会定位到当前出错的源代码行,编译连接输出窗口如图 2.14所示。

图 2.14 编译窗口

2.2.7 打开旧工程

单击“工程”菜单,选择“打开工程”命令即可弹出<打开>对话框,找到相应的工程

文件(*.xmp),单击“打开”按钮即可。

如果您想打开最近打开的工程,单击“工程”菜单,在菜单下面的最近打开工程中选择

即可。如图2.15所示。

图2.15 打开最近工程

2.2.8 工程的调试

1.选择调试目标

调试主要有两种方式:软件仿真和硬件调试。在TKStudio中,通过工程配置对话框可选择不同的调试方式,并设置调试参数。不同的工具链下会有不同的工程配置对话框。如选择“GNU Tools for ARM”编译工具时,调试设置界面如图 2.16所示。

图2.16 调试方式设置

2.调试参数设置

调试参数主要包括:运行到main函数、加载调试信息、初始化脚本文件、存储器配置(软件仿真)、调试之前更新目标(硬件调试)和仿真器驱动设置(硬件调试)。各参数说明如下:

●运行到main:软件仿真开始后运行到main函数后暂停,等待用户操作;

●加载调试信息:启动调试后,加载调试信息。在调试过程中,用户须将此项选上,

否则不能进行正常的调试;

●初始化脚本文件:设置调试时连接的初始化脚本文件;

●存储器配置:配置存储器的类型、开始地址、大小和加载文件;

●调试之前更新目标:调试之前,将代码重新加载到目标板上,刷新存储器的内容;

●仿真器驱动:设置仿真器驱动。硬件调试时,TKStudio调用该驱动,通过仿真器

与设备进行通讯,仿真调试。

选择“GNU Tools for ARM”编译工具时,软件仿真调试设置界面如图 2.17图 2.18所示,硬件调试设置如图 2.18所示。

图 2.17 GNU软件仿真设置

图 2.18 GNU硬件调试设置

当工程编译连接通过后,单击“启动/停止调试”图标按钮,即可启动TKStudio进行调试。TKStudio启动调试和断点操作工具条如图 2.19所示,调试工具条如图 2.20所示。

图 2.19 启动调试和断点操作工具条

启动/停止调试。

插入/移除断点。

启用/禁止断点。

禁止所有断点。

清除所有断点。

图2.20 调试工具条

复位。

运行。

忽略断点运行。

停止运行。

步进-单步运行,进入调用函数。

步越-单步运行,调用函数作为一条语句执行。

步出,执行完当前被调用的函数,停止在函数调用的下一条语句。

运行到光标所在行,运行程序直到当前光标所在行时停止。

显示下一个即将执行的指令行。

显示或隐藏反汇编窗口。

显示或隐藏观察窗口。

显示或隐藏串行监视窗口。

显示或隐藏存储器窗口。

显示或隐藏寄存器窗口。

显示或隐藏特殊功能寄存器(SFR)窗口。

显示或隐藏跟踪窗口。

2.3 使用GNU ARM LPC2103工程模板

在介绍如何新建工程时,我们已经接触了TKStudio集成开发环境提供的几个工具链下的工程模板,如ADS ARM工具链的LPC2103工程模板、LPC21xx工程模板,GNU ARM 工具链的LPC2000CAN工程模板、LPC2103工程模板等等。在本教程中,所有实验例程基于TKStudio中的GNU ARM工具链的LPC2103工程模板创建。

2.3.1 使用GNU ARM LPC2103工程模板建立工程

启动TKStudio集成开发环境,选择“工程”→“从工程模板新建工程”命令,即弹出<新建>对话框,如图2.21所示。

图 2.21 使用GNU ARM LPC2103工程模板

在工程模板列表中,展开GNU ARM工具链项,选择“LPC2103”工程模板,输入工程名,并选择工程存放路径,单击【确定】按钮即完成新工程的建立。使用GNU ARM LPC2103

工程建立新工程如图2.22所示。

图2.22 LPC2103工程模板新工程

GNU ARM LPC2103工程模板包含了LPC2200系列的ARM7微控制器的启动文件,包括startup.s和target.c;还包含了LPC2200系列的ARM7微控制器的头文件(LPC2294.h,LPC2294的寄存器是向下兼容的),连接脚本文件等等。采用该模板建立工程后,这些文件自动被添加到工程目录中。

2.3.2 GNU ARM LPC2103工程模板适用范围

GNU ARM LPC2103工程模板采用GNU ARM编译工具链的默认编译连接参数,连接文件使用lpc2103.ld连接脚本文件,调试入口为0x00000000,即片内Flash调试。若用户需要更改调试方式,须更改lpc2103.ld连接脚本文件,GNU连接脚本知识参看相关说明文档。

2.4 EasyJTAG-H简介

EasyJTAG-H仿真器是一款新型的仿真器。目前,可以支持ARM7微控制器和部分ARM9芯片,支持TKStudio集成开发环境,支持单步、全速及断点等调试功能,支持下载程序到片内FLASH和特定型号的片外FLASH,采用ARM公司提出的标准20脚JTAG仿真器调试接口。这款仿真器需要H-JTAG软件(调试代理)的支持。

2.4.1 EasyJTAG-H安装

将EasyJTAG-H仿真器的25针接口通过并口延长线与PC机的并口连接,将EasyJTAG-H 仿真器的20针接口通过20 PIN连接电缆接到EasyARM2103教学平台的JTAG接口上,再使用配套的变压器(9V)给开发板供电。

由于EasyJTAG-H仿真器需要H-JTAG软件的支持,所以使用EasyJTAG-H之前,必须要先安装H-JTAG。将H-JTAG压缩包解压,然后运行安装文件H-JTAG.exe,如图 2.23所示,根据安装提示完成安装即可。

图2.23 H-JTAG安装界面

安装好的H-JTAG软件包含有H-JTAG Server(下文简称为H-JTAG)和H-Flasher,在桌面上有它们的快捷图示,如图 2.24所示。

图2.24 H-JTAG快捷图示

2.4.2 H-JTAG配置

H-JTAG设置较简单,只要进行以下两步操作,其它采用默认设置即可。

(1)单击任务栏的H提示图标,将看见H-JTAG的主窗口,如图 2.25所示。单击“放大镜”图标按钮后,能看见调试代理搜索到ARM7处理器。

图 2.25 H-JTAG Server检测到芯片内核

(2)选择【Flasher】->【Auto Download】选择自动下载项。

注意,在Flash中调试时必须要选择“Auto Download”,而在RAM中调试可以不选择。

H-Flasher主要用来完成Flash的烧写。如果需要手动下载hex/bin文件,需要按照下面的步骤进行操作:

在1 Flash Selection中选择CPU的型号。如图2.26所示;

相关主题
文本预览
相关文档 最新文档