CAN

rtt 2.1.0 正式版 mdk4 bsp/stm32 编译canapp.c错误

发布于 2016-10-04 05:48:26    浏览:2482
rtt 2.1.0 正式版 mdk4 bsp/stm32 编译canapp.c错误
2.1.0 最新beta 也有这个问题
在2.0.0正式版没有canapp.c 不存在此问题;

暂时遇到两处
问题无法解决
第一处

Applications/canapp.c 154行

struct rt_can_filter_config filter1 =
{
.count = 4,
.actived = 1,
.items = filter1item,
};
struct rt_can_filter_config filter2 =
{
.count = 4,
.actived = 1,
.items = filter2item,
};
static struct can_app_struct can_data[2] =
{
{
.name = "bxcan1",
.filter = &filter1,
.eventopt = RT_EVENT_FLAG_OR | RT_EVENT_FLAG_CLEAR,
},
{
.name = "bxcan2",
.filter = &filter2,
.eventopt = RT_EVENT_FLAG_AND | RT_EVENT_FLAG_CLEAR,
},
};


错误信息:
applications/canapp.c(156): error: #29: expected an expression
.count = 4,


把上述函数注释后会出现第二处错误;
第二处
错误:
canappc.c 47行
        rt_pin_write(led->rtd.pin, 0);


错误信息:
.uild
tthread-stm32.axf: Error: L6218E: Undefined symbol rt_pin_write (referred from canapp.o).

应该是找不到函数

然后我找了 此函数在
rt-thread-2.1.0componentsdriversincludedriverspin.h
的头文件中声明
函数定义在
rt-thread-2.1.0componentsdriversmiscpin.c

但是mdk找不到,
我手动将pin.c 加入到工程中时提示文件已在工程中。
file ‘pin.c’ is already a member of group ‘applications’ type c source file
file will not be added

完全不知道怎么解决。。求助

查看更多

3 个回答
aozima
aozima 2016-10-04
拒绝白嫖,拒绝键盘侠!
这几个文件使用了C99和GNU语法,需要打开C99和GNU特性支持

建议不使用CAN功能时,先不编译这几个文件。
llnid
llnid 2016-10-09
This guy hasn't written anything yet
谢谢指导

撰写答案

请登录后再发布答案,点击登录
关注者
0
被浏览
2.5k

发布
问题

分享
好友

手机
浏览

扫码手机浏览