打印

自学stm32头疼的几天

[复制链接]
9668|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lycstronger|  楼主 | 2011-11-10 12:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在学习STM3210x建工程时发现不行,缺少什么东西,后来发现好像要固件库,可是我下载的固件库和视频教程中的不一样,我就郁闷了,卡死在这里了。建库方法是和振南电子里讲的一样,但是我下载的库不一样,谁能提供一个一样的库,或者说怎么移植库到IAR中 这是我[local]1[/local]下载的有需要的可以自己拿走。如果有人会的看到了此贴麻烦指点一下
沙发
yinyangdianzi| | 2011-11-10 12:35 | 只看该作者
抓基础,,看官方的资料

使用特权

评论回复
板凳
jyz0025338| | 2011-11-10 15:49 | 只看该作者
看到个比较好的建工程的文档,共享下

v3.4固件库 使用.rar

18.25 MB

使用特权

评论回复
地板
dfsa| | 2011-11-10 19:00 | 只看该作者
楼主的学习思路需要转换一下

使用特权

评论回复
5
火箭球迷| | 2011-11-10 22:51 | 只看该作者
刚开始学习时也和楼主一样按教程一步一步来,稍微变化就不知道咋办了,得换个思路

使用特权

评论回复
6
陈永宾0| | 2011-11-11 08:50 | 只看该作者
hold 住

使用特权

评论回复
7
jobszheng| | 2011-11-13 20:28 | 只看该作者
现在STM32的固件库已经到了3.5版本。好几天了,才搞定。累啊~~

使用特权

评论回复
8
hsbjb| | 2011-11-14 17:53 | 只看该作者
刚开始是有个迷茫的过程

使用特权

评论回复
9
xxl88| | 2011-11-14 19:26 | 只看该作者
慢慢来

使用特权

评论回复
10
火箭球迷| | 2011-11-14 22:41 | 只看该作者
多讨论讨论就不头疼了

使用特权

评论回复
11
zhaoweige| | 2011-11-14 22:49 | 只看该作者
以下是我用FLlibV3.1建工程遇到的一些问题,希望对你有用

在IAR下新建工程文件后,第一次编译会出现些警告,应为stm32f10x_conf.h的缘故
有的人在未包含stm32f10x_conf.h的所有C文件中包含一遍,通过编译
有的人在工程文件的option 选项中C/C++ Compiler 中的Preprocessor选项中预定义USE_STDPERIPH_DRIVER,编译通过
其实这个USE_STDPERIPH_DRIVER在stm32f10x.h中有定义的,定义如下:
#if !defined  USE_STDPERIPH_DRIVER
  /*#define USE_STDPERIPH_DRIVER*/
#endif
所以如果用到ST的库函数,需要把这里打开

当然stm32f10x_conf.h,在main.c文件以及其他文件中找不到,为什么编译通过了呢
问题任然在stm32f10x.h,其实它包含了stm32f10x_conf.h,源程序如下:
#ifdef USE_STDPERIPH_DRIVER
  #include "stm32f10x_conf.h"
#endif

所以新建工程文件时关于stm32f10x_conf.h的问题,只需在stm32f10x.h中打开就OK了



第一次自己建工程文件时,可能会报:
Error[Li006]: duplicate definitions for "__vector_table"
那是启动代码文件重复,有四个或更多启动代码文件在FWLib的CMSIS中,如:
startup_stm32f10x_cl.s
startup_stm32f10x_hd.s
startup_stm32f10x_ld.s
startup_stm32f10x_md.s
根据自己stm32的型号选择相应的就OK,我的是STM32F107,所以选startup_stm32f10x_cl.s
不要的不用包含进来,移除掉也可以,或则在相应文件上右键单击选option,选中exclude,就OK

其余的设置按那些教程配置IAR就OK了



在system_stm32f10x.c中需要完成时钟配置,STM32F107最高时钟72M,所以设置如下:
#if defined (STM32F10X_LD_VL) || (defined STM32F10X_MD_VL)
/* #define SYSCLK_FREQ_HSE    HSE_Value */
#define SYSCLK_FREQ_24MHz  24000000
#else
/* #define SYSCLK_FREQ_HSE    HSE_Value */
/* #define SYSCLK_FREQ_24MHz  24000000 */
/* #define SYSCLK_FREQ_36MHz  36000000 */
/* #define SYSCLK_FREQ_48MHz  48000000 */
/* #define SYSCLK_FREQ_56MHz  56000000 */
#define SYSCLK_FREQ_72MHz  72000000
#endif

使用特权

评论回复
12
fanwei326| | 2011-11-15 17:07 | 只看该作者
多讨论讨论就不头疼了

使用特权

评论回复
13
dfsa| | 2011-11-15 18:19 | 只看该作者
自学头疼了,就该找个人讨论了,会豁然开朗的

使用特权

评论回复
14
无冕之王| | 2011-11-15 23:41 | 只看该作者
很多人都经历过这个阶段

使用特权

评论回复
15
candylakers| | 2011-11-16 14:28 | 只看该作者
喜欢远行

使用特权

评论回复
16
xsgy123| | 2011-11-16 19:14 | 只看该作者
现在学LINUX和楼主有相似的感觉

使用特权

评论回复
17
txcy| | 2011-11-16 23:01 | 只看该作者
头疼的阶段是必须经历的:lol

使用特权

评论回复
18
sinadz| | 2011-11-17 18:02 | 只看该作者
楼主这个学习还只停留在表面

使用特权

评论回复
19
无冕之王| | 2011-11-17 22:52 | 只看该作者
把头疼的问题里出来,多讨论就好了

使用特权

评论回复
20
lycstronger|  楼主 | 2011-11-22 16:21 | 只看该作者
就是啊 学习的过程就像小孩成长的过程,这少对与我来说是这样的!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

25

帖子

0

粉丝