NXP

LPCOpen_LPC5411x学习笔记 ch1 + ch2

2019-07-12 12:00发布

LPCOpen_LPC5411x学习笔记 文档编号 TN_AAAA_0000 关键字 LPCOpen, LPC5411x, MCU, ARM 摘要 本技术笔记对LPCOpen_LPC5411x学习笔记进行说明 Mars4zhu
目 录 1 LPCOpen_LPC5411x概述 1 2 工程项目的打开、设置、编译、下载与调试 1 2.1 使用IAR开发LPCOpen_lpc5411x例程 1 2.2 使用Keil开发LPCOpen_lpc5411x例程 3 2.3 使用Eclipse+GCC开发LPCOpen_lpc5411x例程 4 2.4 使用LPCXpresso开发LPCOpen_lpc5411x例程 4 2.5 各IDE的对比 4 3 版本历史(Revision History) 5
插图索引 图 11   LPCOpen_lpc5411x的目录结构 1 图 21   LPCOpen_lpc5411x的板级支持包IAR代码修改与编译 2 图 22   Blinky例程的IAR调试界面 3 图 22   Blinky例程的Keil调试界面 4
表格索引 错误!未找到目录项。

1 LPCOpen_LPC5411x概述

LPCOpen是NXP推出的适用LPC系列MCU的芯片驱动代码与嵌入式软件包,包括了芯片驱动支持包lib_chip,板级支持包lib_board以及可选的低功耗支持包lib_power,同时还包含有中间件如fatfs、freertos、usb、ip等嵌入式中间件。 截止目前(2017-04-15)最新的LPCOpen_LPC5411x版本是v3.00c.001_42,解压后得到目录lpc5411x_xpresso54114,其目录结构如下: wps77F8.tmp 11  LPCOpen_lpc5411x的目录结构

2 工程项目的打开、设置、编译、下载与调试

2.1 使用IAR开发LPCOpen_lpc5411x例程

安装当前(2017-05-02)最新版本IAR for ARM(8.11.1.13272),并在File->Open Workspace中打开lpc5411x_xpresso54114lpc5411xprj_xpresso54114iarexamples_periph.eww文件,可见该例程工程包含多个项目。 首先选择第一个lib_chip_5411x(芯片驱动支持包),右键后选择Set As Active,然后菜单选择Projecct->Make(快捷键F7),即可完成芯片驱动支持包的编译。 然后选择第二个lib_board_lpcxpresso_54114,同样右键后选择Set As Active,然后菜单选择Projecct->Make(快捷键F7),此时编译过程中报错提示 Error[Pe020]: identifier "_STD_BEGIN" is undefined lpc5411x_xpresso54114lpc5411xrd_xpresso54114inc etarget.h 158,可能是新版本编译器对_STD_BEGIN的宏定义的未定义造成的,找到retarget.h的第158行,注释掉_STD_BEGIN,同时注释掉197行的“_STD_END”,再次编译无误,即可完成板级支持包的编译。 wps7837.tmp 21  LPCOpen_lpc5411x的板级支持包IAR代码修改与编译 再选择periph-blinky项目,同样的右键后选择Set As Active,然后菜单选择Projecct->Make(快捷键F7),即可完成blinky例程的编译。 在菜单栏选择Project->Download and Debug(快捷键Ctrl+D),即可下载编译好的程序到开发板并启动调试,默认在main函数停止,可以在菜单栏的Debug->中或者工具栏的wps7838.tmp进行单步跨越、单步进入、单步跳出、持续运行、中断暂停等调试操作,以及在源代码窗口左边行号上双击设置断点,本例程设置在SysTick_Handler的里面,则每次Systick延时中断发生时调试器暂停程序运行,再点击单步跨越后完成LED的亮灭闪烁操作。完成调试后可以点击停止。 wps7839.tmp 22  Blinky例程的IAR调试界面

2.2 使用Keil开发LPCOpen_lpc5411x例程

安装当前(2017-05-02)最新版本Keil for ARM/MDK(8.11.1.13272),并在File->Open 中打开lpc5411x_xpresso54114lpc5411xprj_xpresso54114keilexamples_periph.uvmpw文件,可见该例程工程包含多个项目。 首先选择第一个Project:lib_chip_5411x(芯片驱动支持包),右键后选择Set As Active Project,然后菜单选择Projecct->Build(快捷键F7),即可完成芯片驱动支持包的编译。 然后选择第二个Project:lib_board_lpcxpresso_54114,同样右键后选择Set As Active Project,然后菜单选择Projecct->Build(快捷键F7), 再选择Project:periph-blinky项目,同样的右键后选择Set As Active Project,然后菜单选择Projecct->Build(快捷键F7),即可完成blinky例程的编译。 在菜单栏选择Debug->Start/Stop Debug Session(快捷键Ctrl+F5),即可下载编译好的程序到开发板并启动调试,默认在main函数停止,可以在菜单栏的Debug->中或者工具栏的wps784A.tmp进行单步跨越、单步进入、单步跳出、持续运行、中断暂停等调试操作,以及在源代码窗口左边行号上单击设置断点,本例程设置在SysTick_Handler的里面,则每次Systick延时中断发生时调试器暂停程序运行,再点击单步跨越后完成LED的亮灭闪烁操作。完成调试后可以点击停止。 wps784B.tmp 23  Blinky例程的Keil调试界面

2.3 使用Eclipse+GCC开发LPCOpen_lpc5411x例程

TODO

2.4 使用LPCXpresso开发LPCOpen_lpc5411x例程

TODO

2.5 各IDE的对比

相比Keil,IAR在调试的时候可以在整个workspace搜索变量和函数的名称符号,可以直接从应用代码切换到调用的芯片驱动支持包或者板级支持包的源代码,而Keil则不能跨项目切换源代码,因此调试的时候遇到调用支持包库函数的源代码时,无法正确的切换到对应的函数。 LPCXpresso是基于GCC编译器的开发IDE,由于专用于LPC系列的MCU,适用面较窄,不如Keil、IAR、Eclipse+GCC等应用广泛,因此推荐使用Keil、IAR或者Eclipse+GCC。

3 版本历史(Revision History)

版本号 发布时间 内容 A0 2017-05-02 初次编写