基本信息
文件名称:NXP 系列:LPC1700 系列 (基于 Cortex-M3)_22. LPC1700系列编程基础.docx
文件大小:26.06 KB
总页数:25 页
更新时间:2025-06-14
总字数:约1.33万字
文档摘要

PAGE1

PAGE1

22.LPC1700系列编程基础

22.1引言

LPC1700系列是NXP公司基于ARMCortex-M3内核的高性能微控制器。该系列微控制器具有丰富的外设和强大的处理能力,适用于各种嵌入式应用。本节将介绍LPC1700系列的基本编程概念和常用开发工具,为后续深入学习打下基础。

22.2开发环境搭建

22.2.1安装开发工具

LPC1700系列常用的开发工具有KeiluVision和IAREmbeddedWorkbench。以下是安装KeiluVision的步骤:

下载KeiluVision:

访问Keil官网,下载最新版本的KeiluVisionIDE。

选择适合您操作系统的版本进行下载。

安装KeiluVision:

双击下载的安装文件,按照提示完成安装过程。

在安装过程中,选择LPC1700系列的包进行安装。

22.2.2配置开发环境

创建新项目:

打开KeiluVision,选择“File”-“NewProject”。

选择项目保存路径,点击“Save”。

选择“ARM”-“NXP”-“LPC1768”,点击“OK”。

添加源文件:

在项目管理器中,右键点击“SourceGroup1”,选择“AddNewItemtoGroup”。

选择需要添加的C文件或头文件,点击“Add”。

配置项目选项:

选择“Project”-“OptionsforTarget”-“Target”。

在“Device”选项中,选择LPC1768。

在“Clock”选项中,配置系统时钟频率(例如12MHz)。

在“Debug”选项中,选择合适的调试接口(例如JTAG或SWD)。

22.2.3下载和调试工具

LPC1700系列常用的下载和调试工具有LPC-Link2和CMSIS-DAP。以下是配置LPC-Link2的步骤:

连接LPC-Link2:

将LPC-Link2通过USB接口连接到电脑。

确保驱动程序已正确安装。

配置调试接口:

在KeiluVision中,选择“Project”-“OptionsforTarget”-“Debug”。

选择“CMSIS-DAP”作为调试接口。

确认LPC-Link2已正确连接并识别。

22.3基本编程概念

22.3.1ARMCortex-M3架构

ARMCortex-M3内核是一种高性能、低功耗的32位RISC处理器。它具有以下特点:

哈佛架构:独立的数据和指令总线,提高并行处理能力。

单周期乘法:支持单周期32位乘法运算。

嵌套向量中断控制器(NVIC):支持高效的中断处理。

Thumb-2指令集:结合16位和32位指令,提高代码密度和性能。

22.3.2编程语言和工具链

LPC1700系列主要使用C语言进行编程。常用的工具链包括:

GCC:GNUCompilerCollection,支持Linux和Windows平台。

ARMCompiler:由ARM公司提供的编译器,支持KeiluVision和IAREmbeddedWorkbench。

22.3.3项目结构

一个典型的LPC1700项目结构包括以下文件和目录:

src:源代码文件。

inc:头文件。

lib:库文件。

obj:编译生成的中间文件。

list:编译生成的列表文件。

hex:编译生成的HEX文件,用于烧录到微控制器。

22.3.4初始化代码

初始化代码是项目启动时运行的第一段代码,通常包括系统时钟配置、GPIO初始化等。以下是一个简单的初始化代码示例:

#includeLPC17xx.h//LPC17xx系列头文件

//系统时钟初始化

voidSystemInit(void){

//配置外部晶振频率

LPC_SC-XTALOSCCTRL=0//12MHz晶振

//配置PLL

LPC_SC-PLL0CON=0x01;//启用PLL0

LPC_SC-PLL0CFG=0//M=50,N=15

LPC_SC-PLL0STAT=0//同步PLL0

LPC_SC-PLL0FEED=0xAA;//喂狗

LPC_SC-PLL0FEED=0x55;//喂狗

LPC_SC-PLL0CON=0x03;//启用PLL0并使其输出时钟

LPC_SC-PLL0FEED=0xAA;//喂狗

LPC_SC-PLL0FEED=