3697|1

86

帖子

1

TA的资源

一粒金砂(中级)

楼主
 

使用IAR编译Em357的Z3SmartOutletSoc工程出错总结 [复制链接]

本帖最后由 she_xiang 于 2018-1-20 14:59 编辑

第一步:打开工程,立刻弹出报警
修改方法:Option->Debugger的Device description file 中修改成$PROJ_DIR$\..\..\..\platform\base\hal\micro\cortexm3\em35x\em357\regs.ddf  即可。
上面修改完成后顺便修改:Option->General Options的Processor variant 选中Device 并选择芯片EM357,如图2

继续编译:会弹出下面的错误。
Error in command line: Invalid argument to option '-D'
Fatal Error[Pe992]: invalid macro definition: CORTEXM3_EM357+BRD4600A



出现这个错误是因为出现的错误的宏CORTEXM3_EM357+BRD4600A
需要修改两个地方:第一个:Option->C/C++ Compiler->Preprocessor 的 Define symbols 中的宏CORTEXM3_EM357+BRD4600A改成两个宏:
CORTEXM3_EM357
BRD4600A
第二个:Option->Assembler->Preprocessor 的 Define symbols 中的宏CORTEXM3_EM357+BRD4600A改成两个宏:
CORTEXM3_EM357
BRD4600A

修改上面的后,继续编译,会报以下错误(这个错误是增加了Group 和 Scenes Cluster才有的,默认工程是没有)



出现这个错误,只需要在:afv2-token.h中添加一行
#include "protocol\zigbee_5.10\app\framework\plugin\scenes/scenes-tokens.h"
继续编译,会报下面的错:

解决这个错误,只需要定义好相应的宏,这个里面的几个宏和使用的哪个IO口有关系。
定义好宏之后,再编译,还会报错:

怎么解决呢:
找到Option->Linker->Config的Linker Configuration file项改成:
$PROJ_DIR$\..\..\..\platform\base\hal\micro\cortexm3\em35x\em357\iar-cfg.icf
改好编译,还会报错:

这几个错,因为没有不使用BootLoader所以
关于BootLoader相关的函数文件:

直接屏蔽掉,然后再屏蔽掉和eeprom有关的cli.c中项。
其他的没定义的函数,找到代码中调用的地方,如果不使用的话,直接屏蔽掉。需要使用的自己定义好。










再编译,那么恭喜你,编译通过。
此内容由EEWORLD论坛网友she_xiang原创,如需转载或用于商业用途需征得作者同意并注明出处




1.png (21.6 KB, 下载次数: 0)

第一步报警

第一步报警

2.png (41.42 KB, 下载次数: 0)

2.png

3.png (19.76 KB, 下载次数: 0)

3.png

4.png (24.35 KB, 下载次数: 0)

4.png

5.png (14.85 KB, 下载次数: 0)

5.png

6.png (11.18 KB, 下载次数: 0)

6.png

7.png (27.16 KB, 下载次数: 0)

7.png

8.png (5.29 KB, 下载次数: 0)

8.png
此帖出自无线连接论坛

最新回复

学习了  详情 回复 发表于 2018-6-6 08:44
点赞 关注
 

回复
举报

46

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
学习了
此帖出自无线连接论坛
个人签名每天学一点点就够!
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表