19537|40

4996

帖子

19

TA的资源

裸片初长成(初级)

楼主
 

LPC1114 MDK工程模块下载及注意事项。 [复制链接]

       最近准备用LPC1114做《智能能家居系统》的分控部分,很多人多提出问题,感觉用LPC1114还不如用51做。我想可能是大家对LPC1114不熟悉,所以有点畏惧,其实个人认为,LPC1114比51更方便,不需要编程器或仿真,更方便开发调试。在使用LPC1114时,最麻烦的一点就是启动代码和时钟的设置可能让新手害怕。其实没什么可怕的,NXP的例程中这些代码已经写好了,只要你能看懂和移植就可以了。

 

       对于移植应该没什么难度,因为这些代码都是用标准的C语言编写的。至于启动代码就更是没有什么好担心的了,MDK会自动生成启动代码。下面是注意的内容:

 

1. 对于LPC1114来说,工程的建立关键是时钟的设置。其时钟的设置非常复杂,需要设置大量的寄存器,而且每个给外设都有相应的时钟分频寄存器和时钟控制寄存器。要设置相应的外设就必须正确的设置好这些寄存器。

AHBCLKCTRL 寄存器控制系统和外设寄存器接口时钟的使能。系统时(sys_ahb_clk[0]AHBCLKCTRL 寄存器的位0)为AHB APB 桥、AHB 矩阵、ARM Cortex-M0Syscon块和PMU 提供时钟,不可以禁止。在外设的相应寄存器中写入“0是禁止4,写入“1是使能。

如:LPC_SYSCON->SYSAHBCLKCTRL |= (1<<6);      // 使能AHB时钟到GPIO

2LPC1100系列Cortex-M0含有3个独立的振荡器:系统振荡器(外部晶体振荡器,在10MHz25MHz内)、内部RC振荡器(IRC 12MHz)和看门狗振荡器(500KHz ~ 3.4MHz),每个振荡器可根据不同应用要求选择使用。可以选择这三者之一为主频时钟。复位后,LPC1100系列Cortex-M0自动选择内部RC振荡器作为系统的时钟源,这使得系统能在没有外部晶振的情况下运行。如果需要外部晶振为系统提供时钟,需要通过软件进行切换。

①.用户可以通过设置时钟源选择寄存器,在主振荡器和内部RC振荡器二者间选择一个作为PLL时钟源。

 注:只有在PLL断开连接时,才可更换PLL输入时钟源。在更换完时钟源后必须在系统时钟源更新使能寄存器先写0然后再写1

 

②.可用来驱动系统的时钟源包括IRC振荡器、输入时钟到系统PLLWDT振荡器和系统PLL时钟输出。

注:在更换完主时钟源后必须在主时钟源更新使能寄存器先写0,然后再写1

3. PLL频率计算中的参数:

FCLKOUT = M×FCLKIN FCCO /2×P

为了选择合适的MP值,推荐如下步骤:

① 指定输入时钟频率FCLKIN

计算M值以获得所需的输出频率FCLKOUTM FCLKOUT / FCLKIN

找出一个值使得FCCO2×P×FCLKOUT

检查所有的频率和分频器值设置,是否符合“系统PLL控制寄存器(SYSPLLCTRL)位功能描述”内的限定。

PLL的输入时钟频率范围为10MHz~25MHz内,允许M值的范围为1~32,这是支持主振荡器和IRC操作的整个M值的范围。

 

[ 本帖最后由 zhaojun_xf 于 2010-8-2 07:09 编辑 ]
此帖出自NXP MCU论坛

最新回复

good     详情 回复 发表于 2022-5-15 22:36
点赞 关注
个人签名我的博客
 

回复
举报

4996

帖子

19

TA的资源

裸片初长成(初级)

沙发
 

再次谢谢网友送的开发板,本工程在此开发板中调试通过,大家可以直接使用。

 

LPC1114 MDK工程模块.rar

271.53 KB, 下载次数: 499

售价: 1 分芯积分  [记录]

此帖出自NXP MCU论坛

点评

你好,正在看你的书,用的都是MDK,但是我在NXP上申请的LPC1114上带的LPC-link仿真器用的是M-link驱动,只支持IAR.我仿照网上改TOOLS都没有用,我在别的帖子上看到你回复MDK一定可以,是怎么实现的,都说明一下吗?谢谢  详情 回复 发表于 2013-11-13 23:35
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

板凳
 
GPIO端口控制的各类函数已经编写,可以直接使用里边的函数控制GPIO.
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

4
 
注意事项:LPC1100支持什么方式调试要注意开发板的原理图,现在的开发板大多没有将内核的JTAG调试端口引出,因此只支持SWD串行调试。

[ 本帖最后由 zhaojun_xf 于 2010-8-2 07:08 编辑 ]
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

2641

帖子

0

TA的资源

五彩晶圆(中级)

5
 
不错,谢谢分享
此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

6
 
自己顶一下
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

2955

帖子

0

TA的资源

纯净的硅(初级)

7
 
楼主辛苦,谢谢分享 ...
此帖出自NXP MCU论坛
 
个人签名不断地学习,才会有创新!
淘宝小店:手机、qq点卡、游戏点卡自动充值 http://shop63727265.taobao.com/
 
 

回复

790

帖子

66

TA的资源

五彩晶圆(初级)

8
 
学习了!!!!
此帖出自NXP MCU论坛
 
个人签名行动才有结果,知识并非力量 !
 
 

回复

52

帖子

0

TA的资源

一粒金砂(中级)

9
 

谢谢分享

 
此帖出自NXP MCU论坛
 
 
 

回复

51

帖子

0

TA的资源

一粒金砂(初级)

10
 
谢谢分享啦!
此帖出自NXP MCU论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

11
 
thank you
谢谢
此帖出自NXP MCU论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(初级)

12
 
顶LZ!
此帖出自NXP MCU论坛

点评

太简单了,没什么使用的价值。  详情 回复 发表于 2015-6-18 18:41
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

13
 
先顶一下,不过只懂C#,C在N年以前用过,我可以做什么呢?
此帖出自NXP MCU论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

14
 
非常好!特别适合初学者。
此帖出自NXP MCU论坛
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

15
 

timer 捕获中断问题

我是想用定时器捕获功能,如能赐教不胜感激。

调试中发现在捕获脚上输入脉冲信号,程序就进入DefualtVectorHandle();函数中。可是关闭了中断注册函数zyIsrSet(NVIC_TIMER32B0, (uint32)TIMER32_0_IRQ_Handler, PRIO_TWO);程序就能正常运行。

推断应该是中断了,可没进入(uint32)TIMER32_0_IRQ_Handler(void)中断;

void TIMER32B0_Init(void)
{
    SYSAHBCLKCTRL |= (1 << 9);     /* 打开定时器模块 */
    IOCON_PIO1_5 |= 0x02;          /* 配置P1.5为CT32B0_CAP0输入引脚*/
    TMR32B0TCR = 0x02;             /*reset timer*/
    TMR32B0PR = 0;                /* 设置分频系数 */
    TMR32B0CCR = 1 << 1;           /* 设置CAP0下降沿捕获 */
    TMR32B0CCR = 1 << 0;           /* 设置CAP0上升沿捕获 */
    TMR32B0TC = 0;                 /*定时器清零*/
    zyIsrSet(NVIC_TIMER32B0, (uint32)TIMER32_0_IRQ_Handler, PRIO_TWO);
    //TMR32B0IR = 0xff;              /*reset all timer interrupts*/
    TMR32B0IR  = 1 << 4;
    TMR32B0CCR |= 1 << 2;          /*捕获装载产生中断*/
    TMR32B0TCR = 0x01;             /* 启动定时器*/
    //zyIsrSet(NVIC_TIMER32B0, (uint32)TIMER32_0_IRQ_Handler, PRIO_TWO);
}

unsigned long TIMER32_0_IRQ_Handler (void)
{
uint32 t;
  flag = 1;
temp = TMR32B0CR0;  
TMR32B0IR = 1<<4;


}
此帖出自NXP MCU论坛
 
 
 

回复

25

帖子

0

TA的资源

一粒金砂(中级)

16
 

thks

此帖出自NXP MCU论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

17
 

謝謝分享

謝謝分享喔~
此帖出自NXP MCU论坛
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(中级)

18
 
请教一个问题,在周立功官网上下的TKStudio在建立工程的时候没有LPC111X系列的工程模板,的打开一个例程修改。可以自己建立工程模板吗,如何建?
此帖出自NXP MCU论坛
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

19
 
谢谢
此帖出自NXP MCU论坛
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(初级)

20
 
谢谢分享
此帖出自NXP MCU论坛
 
个人签名没有不可能的事
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表