在线时间102 小时
UID3338547
注册时间2017-1-28
NXP金币49
TA的每日心情 | 无聊 2021-12-29 19:06 |
---|
签到天数: 47 天 [LV.5]常住居民I
金牌会员
- 积分
- 1371
- 最后登录
- 2024-3-21
|
(一)LPC4330启动方式
这大概是我点灯点得最懵的一次了,从拿到这块板子开始到成功点灯大概过去了大半个月。这个过程中我不断地修改代码,怀疑自己是不是看错三色灯的引脚编号而一遍又一遍地检查,最后才发现原来是系统启动的问题……
1-这片LPC4330是没有片上falsh的……只有一个ROM,用于引导,还有一个OTP……OTP啊,上次接触OTP还是在某国产1毛钱一颗的8051单片机上……我愣是没想到堂堂M4f内核的单片机竟然是这种配置……也许是出于安全考虑吧
2-可以通过跳线下列电阻和跳线码配置启动方式
另一个坑出现了,我们拿到板子时,默认R41、R12都焊好,这里没问题,可是JP5和JP3都没跳,如果我们要从板载SPI flash启动需要额外跳JP5!
(二)LPC4330工程
LPC4330属于LPC43XX系列,这个系列都没有适配MCUXpresso SDK,因此只能用回原始的LPCopen库,库函数:
[url=http://www.nxp.com.cn/design/microcontrollers-developer-resources/lpcopen-libraries-and-examples/lpcopen-software-development-platform-lpc43xxPCOPEN-SOFTWARE-FOR-LPC43XX]LPCopen库[/url]
把 lpc_board_ngx_xplorer_4330 和 lpc_chip_43xx 拷贝进工程,前者是面对官方板件的驱动,后者是芯片的函数库。
(三)点灯
初始化蓝色灯的GPIO引脚,注意GPIO的定义和PIN定义不一样:
- /* P2.11 : LED D3 as output */
- Chip_GPIO_SetPinDIROutput(LPC_GPIO_PORT, 3, 5);
- /* Set initial states to off (true to disable) */
- Chip_GPIO_SetPinState(LPC_GPIO_PORT, 3, 5, (bool) FALSE );
复制代码
主循环内延时翻转:
- delay_ms(1000);
- Chip_GPIO_SetPinToggle(LPC_GPIO_PORT, 3, 5);
复制代码
注意,要注释掉__WFI();
否则会进入睡眠,,需要额外配置引脚中断唤醒
|
|