LPC1114_1MHz功耗测试报告

合集下载

LPC1114自学教程_完整(下)

LPC1114自学教程_完整(下)

第二部分新建工程与下载程序LPC1114的开发环境有很多种如keil4、IAR、NXP公司的LPCXpresso,也包括周立功公司的TKStudio。

本教程就以最常用的Keil4.11开发环境的使用、新建工程、仿真设置及程序下载作介绍。

八、安装Keil4.11软件1.打开keil4.11的安装程序,点击"Next",出现如下图所示:十一、选择同意打勾,点击"Next"如下图所示3.点击"Next"后出现如下图所示,选择需要的安装路径4.点击"Next"直到安装结束5.使用MDK411注册机破解Keil4,破解方法请参考网络二、设置keil与仿真器的连接在安装完keil4后,下面就介绍怎样新建工程,方法其实大家都很熟悉的,和51单片机一样。

四、打开keil4,选择"project->CreateNewproject",并输入文件名,选择保存路径。

五、我们这里使用的是LPC1114芯片,在这里选择NXP的芯片"LPC1114x301",选择正确的芯片后,点击确定。

如下图所示:2 3.在确认后出现如下提示框,是否加载LPC11xx的启动文件,在这里我们点击“是”。

1 4.在Target1->SourceGroup中添加main.c文件,右击Source,点击"AddFilestoGroup",也可以添加Group进行代码分组管理,使代码结构更有条理。

2 5.对keil文件输出及仿真设置,点击来对keil进行设置,通过设置,keil在编译后可以输出hex文件,用于下载到MCU。

在LPC1343芯片中,可以需要通过设置输出bin文件用于USBISP下载,在此不作介绍。

6.Jlink 在keil4中的设置,首先需要在电脑上安装Jlink的驱动软件V4.14版本,安装方法,在这里省略。

LPC1114自学教程_完整(上)

LPC1114自学教程_完整(上)

PC1114 实验教程来自NXP的ARMCortex-M0内核MCU;贞明电子实验板和ZLG教程全程助学;主频50MHz的32位微处理器让你更好的完成应用;32KFlash8KRAM以及全方位的片上外设让你的系统更简洁;良好的下载和调试方式和堪比8位MCU的价格让你使用更方便;电子让生活更美好!天下的人&&贞明电子2011年1月16日写在前面自从LPC1768教程推出以来,受到不少网友的鼓励和支持。

因此,本人再次决定参照我设计的ARMCortex-M0实验板写一个教程,实验板采用底板+小板的方式,使得系统支持LPC1100系列,新塘M051系列和LPC1300系列的MCU。

由于支持型号众多,在此统一以LPC1114为基础撰写,有不同的地方随时指出来,以便区分。

虽然本教程是配套实验板写的,但是在本教程以及其他地方都会公布原理图,这样不但让大家知其然还要知其所以然。

因此不拥有开发板自己搭建系统同样能够好好的学习!这样方便了一些囊中羞涩的学生朋友。

如果你有足够的精力和时间完全可以自制一套LPC1114系统板,我在这里先鼓励辛苦的你了!下面介绍一下我们的主角吧,请我们的LPC1114隆重登场,LPC1114拥有领先的ARMCortex-M0内核,以及NXP公司先进的制造工艺和强悍的外设,当然也少不了一条超低的价格哟(小声的说----目前的价格貌似在12RMB哟)!LPC1100系列Cortex-M0微控制器是为嵌入式系统应用而设计的高性能、低功耗的32位微处理器。

它是市场上定价最低的32位微控制器解决方案。

主频高达50MHz,支持睡眠、深度睡眠和深度掉电3种低功耗模式。

同样还拥有丰富的外设,高达32KB片内flash,8KB片内ram,一路IIC、一路RS485、8通道10位ADC、两路SSP、4个通用定时器、多达42个IO口。

好了、LPC1114就介绍这么多,下面介绍一下开发板支持的LPC1343,其实LPC1343和LPC1114的封装和管脚以及片内的外设都兼容,所以说如果会了LPC1114几乎也就会了LPC1343,LPC1343是ARMCortex-M3内核,主频72MHz,除了拥有LPC1114有的所有片内外设以外,LPC1343还拥有USB接口,而且这个USB接口内置固化驱动,号称是业界最简单的MCU内置USB。

LPC1114-LPC11U14和LPC1343对比学习(三)SysTick

LPC1114-LPC11U14和LPC1343对比学习(三)SysTick

LPC1114/LPC11U14和LPC1343对比学习(三)
SysTick
从Cortex 开始ARM 公司在内核中添加SysTick,为系统运行提供了便捷。

通过学习这三种处理器的结构和寄存器可知,这三种SysTick 的结构和寄存器都是一样的完全兼容,SysTick 的结构如下:SysTick 寄存器如下:对于SysTick 的控制有两种方法,由于SysTick 是内核的一部分,所以在ARM 公司推出的Cmsis 文件中已经提供了对SysTick 控制的API 函数。

为了方便可以直接调用此函数;当然我们也可以直接控制寄存器,两种控制的代码如下:
通过上面的初始化SysTickInit()函数后,24 位的SysTick 定时时间到后,就会跳转到SysTick 中断服务函数。

我们只有通过计数器判断次数就可以实现精确延时了。

实现精确延时:
tips:感谢大家的阅读,本文由我司收集整编。

仅供参阅!。

LPC1114-LPC11U14和LPC1343对比学习(四)定时器

LPC1114-LPC11U14和LPC1343对比学习(四)定时器

LPC1114/LPC11U14和LPC1343对比学习(四)定时器
这三种芯片都有2 个16 位的定时器和2 个32 位的定时器。

这4 个定时器的功能都非常强大,不在是像8051 一样,只有定时与计数功能。

除了这两个
强大的功能外,还添加了匹配输出,捕获输入,PWM 输出等。

在这里我们只
学习它们最基本的定时功能,对于其他功能就不作介绍。

在PWM 模式下,2
个32 位可编程定时器/计数器均有3 个匹配寄存器用于提供单边沿的PWM 输出,剩下的那个匹配寄存器则用于控制PWM 周期长度。

在PWM 模式下,16 位定时器0(CT16B0)与32 位定时器相同,而16 位定时器1(CT16B1)只有其中的两个匹配可用于向匹配输出管脚提供单边沿的PWM 输出。

在这4 个定时器中,基本操作是一模一样的,所以在下面我们只拿一个定时
器作为实例进行说明,对于其他定时器,只需要把寄存器名称改成相应的寄存
器就可以了。

1.32 位定时器/计数器特性两个32 位的定时器/计数器,各带有一个可编程的32 位预分频器;
计数器或定时器操作;
一个32 位的捕获通道可在输入信号跳变时捕捉定时器的瞬时值。

捕获事件
也可以产生中断;
4 个32 位匹配寄存器,允许执行以下操作:
-匹配时连续工作,在匹配时可选择产生中断;
-在匹配时停止定时器运行,可选择产生中断;
-在匹配时复位定时器,可选择产生中断。

有4 个与匹配寄存器相对应的外部输出,这些输出具有以下功能:
-匹配时设为低电平;。

LPC1114IAP在线升级的研究

LPC1114IAP在线升级的研究

LPC1114 IAP在线升级IAP(In Application Program),即在应用中可编程。

顾名思义,就是在系统运行的过程中动态编程,这种编程是对程序执行代码的动态修改,而且毋须借助于任何外部力量,也毋须进行任何机械操作。

这一点有别于ISP(In System Programming),即在系统可编程。

一般来说,ISP 在进行加载程序以前,需要设置某些功能引脚,而IAP则不需要作硬件上的任何动作,只要有合法的数据来源。

LPC11XX支持ISP和IAP升级程序,当采用RS485通信时候的,由于ISP升级程序受条件限制,只能采用IAP升级程序。

IAP原理以及如何调用IAP函数是固化在微处理器内部flash上的一些函数代码,最终的用户程序可以直接通过调用这些函数来对内部flash进行擦除和编程操作。

对于在应用编程来说,应当通过寄存器r0 中的字指针指向存储器(RAM)包含的命令代码和参数来调用IAP 程序。

IAP 命令的结果返回到寄存器r1 所指向的返回表。

用户可通过传递寄存器r0 和r1 中的相同指针重用命令表来得到结果。

参数表应当大到足够保存所有的结果以防结果的数目大于参数的数目。

参数传递见图2-1。

参数和结果的数目根据IAP命令而有所不同。

参数的最大数目为5,由“将RAM 内容复制到Flash”命令传递。

结果的最大数目为2,由“扇区查空”命令返回。

命令处理程序在接收到一个未定义的命令时发送状态代码INVALID_COMMAND。

IAP 程序是thumb 代码,位于地址0x7FFFFFF0。

图2-1 IAP的参数传递表2-1描述了IAP的命令。

表2-1 IAP 命令汇总2.3 IAP 编程函数接口IAP 功能可用下面的C 代码来调用。

定义IAP 程序的入口地址。

由于IAP 地址的第0 位是1,因此,当程序计数器转移到该地址时会引起Thumb 指令集的变化。

#define IAP_LOCATION 0x7ffffff1定义数据结构或指针,将IAP 命令表和结果表传递给IAP 函数unsigned long command[5];unsigned long result[2];定义函数类型指针,函数包含2 个参数,无返回值。

LPC1114系统板入门手册

LPC1114系统板入门手册

LPC1114系统板入门手册作者:风子芯日期:2011.07.02一、LPC1114系统板简介1、2.5mm电源插座电源极性:内芯为正极,外圆为地线输入电压:DC,范围4.5V~7V注意事项:一定不要超过7V,否则会损坏板子2、串口引脚定义:RXD、GND、TXD(从上往下)电平标准:RS-232电平,可以直连PC机串口的2、5、3引脚3、复位按钮按下按钮2秒以上,LPC1114复位;释放按钮,LPC1114运行程序4、ISP模式选择跳线插上跳线帽,将两个引脚短路,LPC1114进入ISP模式;拔掉跳线帽,然后按下复位按钮2秒后释放,LPC1114进入正常模式5、SWD调试接口引脚定义:+3.3V、nRST、SWDIO、SWCLK、GND(从上往下)二、使用FlashMagic下载LPC1114固件即使没有硬件仿真器,LPC1114也可以使用一款免费软件FlashMagic通过简易串口下载程序。

您可以在/网站上下载到FlashMagic的最新版本。

1、制作串口下载线如上图所示,将PC机串口的2、5、3分别与LPC1114系统板串口的1、2、3连接起来。

如果您的电脑没有串口,买一个现成的USB转串口的转接头,即可。

LPC1114系统板已经提供了MAX3232电平转换芯片,将RS-232电平转换为3.3V电平。

2、安装FlashMagic双击图标,按照提示,选择默认方式,即可。

风子芯电脑上安装的FlashMagic版本是V5.84.2259。

3、进入ISP模式A、连接好串口线和电源线,使LPC1114系统板上电;B、插上ISP跳线帽C、按下复位按钮2秒以上,释放按钮,即可4、配置FlashMagicA、双击桌面上的快捷方式,打开FlashMagic软件(如下图所示)B、如上图所示,选择下载程序使用的串口及其波特率,建议选择57600bps。

波特率越高,下载程序速度越快。

C、单击“Select Device”按钮,在弹出的对话框中选择LPC1114/301D、单击“Browse”按钮,选择需要下载的HEX固件程序(如下图所示)D、单击“Start”按钮,开始给LPC1114系统板下载固件程序FlashMagic界面的下方会提示下载程序的进度,下载完成后,会提示“Finished”。

LPC11C14F

LPC11C14F

一、总体描述:LPC11C12 / C14的基础,是一只臂Cortex-M0 32位MCU的家庭,低成本的设计8/16-bit单片机应用,为提供性能、低功率、简单指令集和内存寻址一起代码大小相比,减少了现有的8/16-bit体系结构的实现。

LPC11C12 / C14的运转在CPU频率达到50赫兹。

周边补充C14的LPC11C12包括16/32 kB的/快闪记忆体,8 kB的数据存储器,一个C_CAN控制器,一个界面,再加上我C-bus而RS-485 UART / EIA-485 SPI 接口与SSP,两个特点,四个通用的计数器/定时器,数位ADC,40通用I / O大头针。

二、特点和优点系统:手臂Cortex-M0处理器,运行在频率达到50赫兹。

手臂Cortex-M0内置嵌套NVIC中断控制器(矢量)。

串行线调试。

系统嘀哒计数器。

记忆:32溯因LPC11C14)或16溯因LPC11C12)样品的闪光程序内存存储器数据存储器。

8(kB)。

In-System编程(ISP)和In-Application编程(IAP)通过单片引导加载程序软件。

闪光的ISP的命令可以通过UART发行或C_CAN。

数码外设:40通用I / O(GPIO)别针与配置拉/拉电阻器。

GPIO大头针可作为边缘和水平敏感中断源。

支大电流输出驱动(20个硕士),在一根大头针上。

2支大电流沉驱动(20个硕士),在两个我C-bus针而言优先。

四个通用计数器/定时器,共四个捕获输入和13岁比赛的产出。

可编程的看门狗定时器(WDT)。

ADC与数位模拟外设:输入复用中8大头针。

串行接口:UART波特率代,以分数,并RS-485内部“先进先出”的支持。

两个SPI控制和SSP特点及与FIFO 和多协议能力。

2我C-bus接口支持满时,我C-bus加上与规格、而言数据速率Mbit / s与1多址识别和监控模式。

C_CAN控制器。

片上可以和CANopen司机包括在内。

LPC1114_12MHz功耗测试报告

LPC1114_12MHz功耗测试报告

程序清单 3.5 深度掉电模式宏配置
#define MAINCLK_EN
0
/* 主时钟禁能
*/
技术测试报告
©2010 Guangzhou ZLGMCU Development Co., Ltd 4
#define MAIN_PLL_SETUP
0
/* 主 PLL 禁能
*/
#define TEST_MODE
周立功单片机
技术测试报告
测试目的
ZLG 测试报告 ID:10042801
1. 测量标准测试条件下 M0 芯片在正常运行模式、普通睡眠模式、深度睡眠模式和深 度掉电模式下的功耗;
2. 测量标准测试条件下的深度睡眠模式和深度掉电模式下的 PLL 唤醒锁定时间。
测试信息
测试人/电话 -/22644384
测试日期
1. 向 ARM Cortex-M0 SCR 寄存器的 SLEEPDEEP 位写 0; 2. 使用 ARM Cortex-M0 等待中断(WFI)指令进入睡眠模式。 当中断到达时处理器自动退出睡眠模式。
在睡眠模式下外设的功能继续运行,并可能产生中断使处理器重新运行。睡眠模式不使 用处理器自身的动态电源,存储器系统和相关控制器和内部总线。
给 WAKEUP 引脚一个脉冲信号就可以使 LPC111x 从深度掉电模式中唤醒。从唤醒源动 作到 PLL 频率锁定所需时间如图 5 所示。在深度掉电模式期间,SRAM 中的内容不会被保 留,然而 4 个通用寄存器的数据将被保留。
将系统时钟配置为 12MHz,关闭所有外设时钟,系统进入深度掉电模式,即可测试 LPC1114 芯片在深度掉电模式下的功耗。具体宏配置操作如程序清单 3.5 所示。
*/
2. 低速运行状态
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

技术测试报告ZLG测试报告ID:10052601测试目的1、LPC1114使用IRC或WDT OSC作为时钟振荡器实现低功耗1.30mA以下。

测试信息测试人/电话 -/22644384 测试日期 2010-05-26芯片型号 LPC1114FBD48/301 批次ZSD09/470AY(样片)测试芯片数量抽样测试1片测试环境EasyCortex-M3-1300开发板(核心芯片1114)、环境温度25°C、软件环境TKStudio2008测试方式由LPC1114芯片数据手册可得:芯片内部IRC精度±1%,作为主时钟可满足串口波特率对时钟精度的要求,而看门狗振荡器精度为±25%,误差较大不能满足串口对于时钟精度的要求。

但是看门狗振荡器的功耗比内部RC振荡器的功耗低。

因此设定以下2种测试方案:测试方法1:LPC1114进行A/D转换时使用看门狗振荡器作为主时钟源,时钟频率为1MHz,串口通信时将主时钟源切换到内部RC振荡器输出,时钟频率为1MHz,完成串口通信后时钟再次切换到看门狗振荡器输出,如此循环执行;测试方法2:LPC1114只使用IRC振荡器作为时钟源,时钟频率为1MHz。

按以上2种测试方法编写功耗测试程序烧写到LPC1114片内,脱机运行。

使用安捷伦6位半万用表34401A测试得到芯片功耗数据。

测试结果通过测试可得:在测试方法1条件下,LPC1114最高功耗为1.10mA,最低功耗为0.83mA;在测试方法2条件下,LPC1114最高功耗为1.41mA,最低功耗为1.38mA。

可见,使用方法1的情况下,LPC1114可满足低功耗<1.30mA的要求。

详细测试结果见附件B。

改进建议1、芯片的功耗与芯片使用的外设和外部连接器件密切相关,请注意外部器件功耗情况;2、芯片Mark为AY表示工程样片,因此芯片本身参数存在一定不完善型。

正式批量化芯片的参数将比样片的参数误差小。

备注测试程序见附录A。

附录A测试流程1. 测试方法1本测试程序是建立在LPC1100工程模板基础上,与测试之外的代码在此不作列举。

与测试相关主要部分见程序清单1~4所示。

程序清单1 功耗控制寄存器位宏定义/*功耗控制寄存器位宏定义 */#define IRC_OUT_PD (0x1 << 0)#define IRC_PD (0x1 << 1)#define FLASH_PD (0x1 << 2)#define BOD_PD (0x1 << 3)#define ADC_PD (0x1 << 4)#define SYS_OSC_PD (0x1 << 5)#define WDT_OSC_PD (0x1 << 6)#define SYS_PLL_PD (0x1 << 7)程序清单2 主时钟切换到WDT OSC/******************************************************************************************* ** 函数名称: WDTOSCCLKMODE** 功能描述: 将主时钟源切换到看门狗振荡器** 输入参数: 无** 输出参数: 无** 返回值: 无*******************************************************************************************/ void WDTOSCCLKMODE (void){/*看门狗振荡器上电**/PDRUNCFG &= ~(1ul << 6);WDTOSCCTRL = (7ul << 5);MAINCLKSEL = 0x02; /* 选择WDT OSC输出*/ MAINCLKUEN = 0x01; /* 更新MCLK时钟源选择*/ MAINCLKUEN = 0x00; /* 翻转更新寄存器*/ MAINCLKUEN = 0x01;while (!(MAINCLKUEN & 0x01)) { /* 等待更新完成*/ }SYSAHBCLKDIV = 1; /* SYStem AHB时钟分频*/ /*内部RC振荡器掉电控制*/IRC_OUT_PD|IRC_PD|BOD_PD|SYS_OSC_PD|SYS_PLL_PD;PDRUNCFG|=CLK *//*关UARTSYSAHBCLKCTRL &= ~(1 << 12); /* Close UART功能部件时钟*/ }程序清单3 主时钟切换到IRC振荡器/******************************************************************************************* ** 函数功能: IRCCLKMODE** 功能描述: 将主时钟切换到内部RC振荡器** 输入参数: 无** 输出参数: 无** 返回值: 无*******************************************************************************************/ void IRCCLKMODE (void){PDRUNCFG &= ~(0x03 << 0);MAINCLKSEL = 0x00; /* 选择IRC输出*/ MAINCLKUEN = 0x01; /* 更新MCLK时钟源选择*/ MAINCLKUEN = 0x00; /* 翻转更新寄存器*/ MAINCLKUEN = 0x01;while (!(MAINCLKUEN & 0x01)) { /* 等待更新完成*/ }SYSAHBCLKDIV = 16; /* SYStem AHB时钟分频*/ ADC\看门狗振荡器掉电控制 *//*PDRUNCFG |= BOD_PD|ADC_PD|SYS_OSC_PD|SYS_PLL_PD|WDT_OSC_PD;ADC模块时钟关闭*//*SYSAHBCLKCTRL &= ~(0x01 << 13); /* 使能ADC模块时钟*/ }程序清单4 主函数/******************************************************************************************* ** 函数名称: main** 功能描述: LPC1114使用WDT OSC输出作为时钟进行AD转换,IRC输出作为时钟进行UART通信** 输入参数: 无** 输出参数: 无** 返回值: 无*******************************************************************************************/ int main(void){INT32U i, ulADCData, ulADCBuf;targetInit(); /* 初始化目标板,切勿删除*/ SYSAHBCLKCTRL = 0x1F|(1 << 12)|(1 << 13)|(1 << 16);/*UART引脚配置*/IOCON_PIO1_6 &= ~0x07;IOCON_PIO1_6 |= (1 << 0); /* 配置P1.6为RXD */IOCON_PIO1_7 &= ~0x07;IOCON_PIO1_7 |= (1 << 0); /* 配置P1.7为TXD */ /*ADC引脚配置 */IOCON_PIO0_11 &= ~0xBF; /* 配置PIO0_11为AD输入 */ IOCON_PIO0_11 |= 0x02; /* PIO0_11模拟输入通道0 */ SYSAHBCLKCTRL &= ~(1 << 16);while (1) {WDTOSCCLKMODE();ADCInit(); /* ADC模块初始化*/ =0;ulADCDatafor (i = 0; i < 10; i++) {AD0CR |= (1 << 24); /* 立即转换*/while ((AD0DR0 & 0x80000000) == 0){ /* 读取AD0DR0的Done */}AD0CR |= (1 << 24); /* 第一次转换结果丢弃*/while ((AD0DR0 & 0x80000000) == 0){ /* 读取AD0DR0的Done */}ulADCBuf = AD0DR0; /* 读取结果寄存器*/ulADCBuf = (ulADCBuf >> 6) & 0x3ff;ulADCBuf;+=ulADCData}AD0CR &= ~(1 << 24);ulADCData = ulADCData / 10; /* 采样10次进行虑波处理*/ulADCData = (ulADCData * 3300) / 1024;sprintf(GcRcvBuf, "VIN0 = %4d mv\r\n", ulADCData); /* 将数据发送到串口进行显示 */ myDelay(50);IRCCLKMODE();uartInit(); /* 串口初始化*/*)GcRcvBuf);INT8UuartSendStr((const}}2. 测试方法2本测试程序是建立在LPC1100工程模板基础上,与测试之外的代码在此不作列举。

与测试相关主要部分见程序清单5~6所示。

程序清单5 主函数/******************************************************************************************* ** 函数名称: main** 功能描述: 使用IRC时钟作为主时钟进行ADC,并通过串口输出数据,时钟频率为1MHz** 输入参数: 无** 输出参数: 无**返回值: 无*******************************************************************************************/ int main(void){INT32U I, ulADCData, ulADCBuf;targetInit(); /* 初始化目标板,切勿删除*/ SYSAHBCLKCTRL = 0x1F|(1 << 12)|(1 << 13)|(1 << 16);/* UART PIN */IOCON_PIO1_6 &= ~0x07;IOCON_PIO1_6 |= (1 << 0); /* 配置P1.6为RXD */ IOCON_PIO1_7 &= ~0x07;IOCON_PIO1_7 |= (1 << 0); /* 配置P1.7为TXD */ */PIN/*ADCIOCON_PIO0_11 &= ~0xBF; /* 配置PIO0_11为模拟输入模式*/ IOCON_PIO0_11 |= 0x02; /* PIO0_11模拟输入通道0 */ SYSAHBCLKCTRL &= ~(1 << 16);while (1) {*//*PDRUNCFGBOD_PD|SYS_OSC_PD|SYS_PLL_PD|WDT_OSC_PD;PDRUNCFG|=/* 关UART CLK */SYSAHBCLKCTRL &= ~(1 << 12); /* Close UART功能部件时钟*/ADCInit(); /* ADC模块初始化*/ =0;ulADCDatafor (i = 0; i < 10; i++) {AD0CR |= (1 << 24); /* 立即转换*/while((AD0DR0 & 0x80000000) == 0){ /* 读取AD0DR0的Done */}AD0CR |= (1 << 24); /* 第一次转换结果丢弃*/while((AD0DR0 & 0x80000000) == 0){ /* 读取AD0DR0的Done */}ulADCBuf = AD0DR0; /* 读取结果寄存器*/ulADCBuf = (ulADCBuf >> 6) & 0x3ff;ulADCData += ulADCBuf;}AD0CR &= ~(1 << 24);ulADCData = ulADCData / 10; /* 采样10次进行虑波处理*/ulADCData = (ulADCData * 3300) / 1024;sprintf(GcRcvBuf, "VIN0 = %4d mv\r\n", ulADCData); /* 将数据发送到串口进行显示*//*注意:延时函数需加在低功耗部分**/myDelay(50);*/DOWN/*POWERADCBOD_PD|SYS_OSC_PD|SYS_PLL_PD|WDT_OSC_PD|ADC_PD;PDRUNCFG|=/* 关ADC*/CLKSYSAHBCLKCTRL &= ~(0x01 << 13);uartInit(); /* 串口初始化*/INT8U*)GcRcvBuf);uartSendStr((const}}程序清单6 目标板初始化/******************************************************************************************* ** 函数名称: targetInit** 功能描述: 目标板初始化** 输入参数: 无** 输出参数: 无** 返回值: 无*******************************************************************************************/ void targetInit (void){extern void *__GpvVectorTable[];zyIrqDisable();SYSMEMREMAP = 0x02; /* 异常向量表重映射*/ VTOR = (unsigned long)__GpvVectorTable;SYSAHBCLKDIV = 12; /* SYStem AHB时钟分频*/ SYSAHBCLKCTRL |= (1ul << 16); /* 使能AHB总线时钟*//* 否则无法配置ICON */ zyIrqEnable();zyIfInit();return;}附录B 测试结果1.测试结果1使用测试方法1进行编程,LPC1114可正常实现A/D转换和串口通信功能,如图1所示。

相关文档
最新文档