OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2665|回复: 6

从F103RB移植到F103ZE后编译出错是怎么回事?

[复制链接]

1

主题

7

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-5
在线时间
3 小时
发表于 2018-9-11 09:26:05 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 hodrag 于 2018-9-11 09:53 编辑

这个一个从网上下载的工程,是寄存器版本的,用F103RB编译正常,如果选择F103ZE就会报错:
stm32f10x.h(308):error:#67:expected a "}"
stm32f10x.h(482):error:#67:expected a "}"

只是改了一下芯片,其它设置都没有变,这问题怎么解决?
我是用的HD的启动文件,用F103RB芯片时,用HD和MD启动文件都能正常编译,用F103ZE芯片两个启动文件都是一样的错误
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5141
金钱
5141
注册时间
2014-8-26
在线时间
1317 小时
发表于 2018-9-11 12:05:20 | 显示全部楼层
c/c++里面的宏定义也要改成HD
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-5
在线时间
3 小时
 楼主| 发表于 2018-9-11 13:49:13 来自手机 | 显示全部楼层
login_FAE 发表于 2018-9-11 12:05
c/c++里面的宏定义也要改成HD

这是寄存器版的程序,不需要宏定义吧
我试过添加宏定义,本来用RB可以编译加上宏定义后不能编译了,用ZE也不能编译
回复 支持 反对

使用道具 举报

46

主题

200

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1129
金钱
1129
注册时间
2016-3-25
在线时间
365 小时
发表于 2018-9-11 14:53:50 | 显示全部楼层
RBT6是中密度的吧(MD),ZET6属于高密度的吧(HD),试着在C/C++选项中的defien里改成高密度。当然程序上也是有编译错误,两个芯片还是有差别。但首先必须改这个才能往下走
代写STM32各类驱动,DEMO程序
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-5
在线时间
3 小时
 楼主| 发表于 2018-9-11 17:54:08 来自手机 | 显示全部楼层
Mr.liu 发表于 2018-9-11 14:53
RBT6是中密度的吧(MD),ZET6属于高密度的吧(HD),试着在C/C++选项中的defien里改成高密度。当然程序上 ...

试过了,这个工程原来是没有这个宏定义的,加不加宏定义效果一样
但是换了芯片以后这里不管有没有定义,不管用MD和HD都是一样的错误
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-5
在线时间
3 小时
 楼主| 发表于 2018-9-11 18:02:40 来自手机 | 显示全部楼层
实验发现只要是移植到C以上就出错,是寄存器版的原因吗?
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2018-9-5
在线时间
3 小时
 楼主| 发表于 2018-9-11 18:12:34 来自手机 | 显示全部楼层
解决了,在srm32f10x.h中指定了define stm32f10x_md,改为HD就好了
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-9 15:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表