你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm8小白学习笔记 01. iar工程建立

[复制链接]
此号为经注册 发布时间:2017-9-10 21:36
  大学做了一年智能车比赛,由于时间紧,任务重,没有时间仔细研究下mcu底层库,一直是心里的一个痛。现在想仔细了解小mcu底层工作原理,于是挑选了外设少,结构简单的 stm8进行学习。由于本人小白一枚,贴出学习笔记,希望各位大神斧正。
% Y& e; K" l. ]" G) e4 U
- f- v% _, a5 r! y! L
0.前沿4 Y# i8 L, w0 D1 I/ I# t4 t/ z
  硬件平台采用立创商城提供免费的TM8L051+LT8920+ME6209的评估板模块,就是一个空的pcb板自己焊接的,这个是购买链接(http://www.szlcsc.com/product/details_95929.html),这个商城东西挺全的,价钱也便宜,器件可以是在这里采购。1 ^( Q$ ?# m/ z3 l

" m9 O4 D* S& D9 t6 i2 A8 S& |软件平台采用的 iar for stm8 + st link v2
  U' b, V7 v% q1 F" C: L# n  p% T5 O+ n- m% L4 h; f
+ q' {% ~. X! n' T

3 x! f# _8 z) U6 m. V: r: k1.iar安装破解
3 G- K+ v& X! l0 v6 x& V: i- o1 N" }2 f) i  j

; q/ i# g6 F/ X' O  这个网站有下载链接和安装教程,介绍很详细,我就不赘述了,,另外我网盘里面也上传了一份
# ^* }6 y( H( j" ^; o7 [& S1 M9 V4 E9 v. r

  V, A4 Z; M2 i: I0 `/ ]/ e3 U2.iar工程建立9 ~: O, u$ D& ^- m1 Y0 e1 Y' ?
   iar分为工程项目采用,工作空间和工程方式管理,一个工作空间下可以存在多个工程,这一点简直设计逆天,这样可以把各个版本的工程放在一起,非常简洁明了。3 m, e& \, _6 T- w) ~
  so,iar工程项目流程大致为, 新建工作空间-》新建工程-》新建分组-》设置工程参数-》添加项目文件及固件库-》大功告成
: g# `& r; \2 e! Q+ y3 W0 d1 @% x
0 a3 b7 y0 I2 ], X6 j" ]9 E8 D" o9 e
2.1新建工作空间及工程) S3 M4 y$ r4 V5 `# w) q* s6 s4 _' \3 D
打开iar,点击file下面的new下面有一个workspace,新建一个工作空间: G. x9 s; A3 ]/ z

1

1

; U: g( R$ I; y: m" t9 V9 h  之后就有了一个命令空间,可以先不保存,先新建一个工程,点击project下面的create new project,新建一个工程,选择空工程,点击OK,选择工程路径之后,起个名字保存一下就可以了+ @) ~6 V' _  y8 ~! _

2

2
$ L/ |' j# x) a; |# o9 `

3

3

9 }: a$ c$ J! P6 i( w% @9 f6 I

4

4
& |( ^1 K$ _5 U9 N9 U, D
  现在我们就有了一个工程,右击新建的工程,选择add group,之后随便起个名字,再添加几个
/ k% r  U/ j' j6 Y% B* @

5

5

# |5 G# M. G0 l( I; V) w, F

6

6
/ m, k  Y  \1 a1 E" ]& b3 q

9 l$ z- _0 P( @- D3 N% s! ?. x# F  之后右击save all把工程保存一下,对了这个时候可以给工作空间起个名字了% z) k+ a, u- d. T0 x+ g

7

7
3 z* J6 i- x4 ?9 z! {+ I: g! X
  然后在工程保存目录下新建几个目录,这个按个人习惯来就行(其实我也不知道该怎么建立),我的习惯是建立和工程分组相同的文件夹,并在子一级目录下分别新建inc和src目录用于保存.h文件和.c文件,之后再st官网下载固件库也可以在我网盘上下载。
! s6 @! L- N! g& h0 J 之后把STM8L15x-16x-05x-AL31-L_StdPeriph_Lib_V1.6.2.zip包中的STM8L15x-16x-05x-AL31-L_StdPeriph_Lib文件夹下的Libraries文件夹下的STM8L15x_StdPeriph_Driver文件夹拷贝到工程目录下,把工程模版中main.c和其他文件也拷贝到工程文件中去,之后和添加分组一样操作把main.c,固件及其他文件添加到工程中去(注意main.c去掉只读属性)8 m  ~+ b* P2 j3 B. t" n

9

9

' l5 U$ T7 b  P
! ~# s2 K! I, A3 p2 ^3 `2.2配置工程9 z+ a7 }! S; Z0 P. n

! q  O4 T  V- }3 q 右击工程点击optinons,先选择芯片,之后在c/c++ complier 下的perproceser添加源文件保存路径(注意为了代码可移植性,把工程路径替换为$PROJ_DIR$,这个是相对路径的宏),然后把调试工具选择为st link
- C& A0 Y0 C3 ^4 P# N4 m+ _/ `9 P! g. y. Y; _+ Q- W1 C
" n) j. a( F- ^) ^( U& j
14.png , r4 J. n! ?; Z) h

10

10
# c1 g- l  Q4 y* P- i
12.png 7 s! w0 W) T0 O3 S, `0 d
之后点击 13.png 编译后发现有错误,,双击错误后跳转到,发现确实宏定义,,不过上面提示了所有型号的芯片对应的宏定义,根据上面注释说明,选择对应芯片的宏定义添加到刚才添加路径的那个下面就行了
- [( T4 {6 C& z$ V: T- y, I2 f7 t 16.png 2 u# |; `' F8 K& a: c8 f7 ~# G) Y* I

' ]8 B( I5 N- K再编译一下就大功告成了! ~9 f: |" h( ~, f3 b- _  }
# `3 Q) }2 o& F; L5 C

0 |3 Z/ L& q$ ]
  S2 l1 ^! D( J' N+ w3 [第一次写这种帖子发现自己语言表达太差了,,文中可能会有错误希望各位不惜赐教5 }( u! o, i2 W3 A  y. u5 p
5 T' s1 B) R" t1 t; b( Q0 x! z( U

* J8 i* }- v  Z$ O
. R6 f7 z) c4 `! G链接:https://pan.baidu.com/s/1mhZZxby 密码:g09v# m, i0 j7 k, |/ a* a7 f, b* r

) V7 D2 q* W2 Q; ~' u+ H
+ ]7 O- {; x+ Y4 `3 H) j' K& O: D
+ V! E& I+ I8 L7 T4 I/ J) U

) f: G8 B* i7 K9 s6 G1 ?8 P, v% s- u. ^4 b4 u
赞 收藏 评论7 发布时间:2017-9-10 21:36

举报

7个回答
cyrs 回答时间:2017-12-17 10:49:39
谢谢楼主分享
robter 回答时间:2018-2-25 23:40:50
介绍的很详细,学习了
强子& 回答时间:2018-2-26 08:50:01
mark
liu615 回答时间:2018-3-14 09:22:48
写的非常好,学习学习
joegong 回答时间:2018-3-18 10:35:14
谢谢楼主分享
stlearnc524ad 回答时间:2018-4-24 13:42:53
谢谢楼主分享!
annQian 回答时间:2018-7-12 11:24:06
云盘下面的IAR工程建立->下面有好几个 EWSTM8-xxxx-Autorun.exe 这些文件是版本不同,还是都需要安装?
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版