前言
上一篇笔记学习了CoIDE,这一篇笔记讲讲LoRaWan协议栈默认支持的另一个IDE工具。
本文作者twowinter,转载请注明作者:http://blog.youkuaiyun.com/iotisan/
如何在MDK Keil uv4上编译
由于LoRaMac-node默认是用MDK Keil uv5来开发,但如果大家用uv4,那就很可能会遇到一些编译问题。
for( int16_t i = 0; i < ( now.CalendarDate.Year + now.CalendarCentury ); i++ )
..\..\..\src\boards\SK-iM880A\rtc-board.c(646): error: #20: identifier "i" is undefined
这个编译错误的根源是需要C99标准支持。因为keil默认支持C89,Semtech的工程师只在Keil5中增加了C99选项。Keil4需要额外的增加编译选项。
解决办法是:Option for Target -> C/C++ -> Misc Controls -> --c99
如何产生bin文件
解决办法是:Option for Target -> User -> Run User Programs After Build -> Run #1 勾选,
填入类似如下示例的命令:
fromelf.exe --bin -o ./bin/Ping-Pong.bin ./obj/Ping-Pong-433-lora/Ping-Pong.axf
fromelf.exe --bin -o ./bin/Ping-Pong.bin ./obj/Ping-Pong-lora/Ping-Pong.axf
或者以自定义工程stm32l151cb为例:
fromelf.exe --bin -o ./bin/stm32l151cb.bin ./stm32l151cb/stm32l151cb.axf