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

【STM8-SO8-DISCO】——2、简单粗暴建工程模板

[复制链接]
七哥 发布时间:2019-1-29 23:30
本帖最后由 toofree 于 2019-1-30 00:47 编辑
: @) H6 a, O/ T. E$ U) i& x
3 O0 r* d) {# ^
【STM8-SO8-DISCO】——2、简单粗暴建工程模板
! z6 K4 B* e6 s) ^  [" q

7 C3 u9 }- T; D) ~% z2 j3 w  工欲善其事,必先利其器。一个顺手的工程模板也是比较重要的。
5 S7 g( x$ U  k+ l+ _: S

" n* b8 R- k9 e0 }  本贴以个人使用习惯,在官方STM8S/A函数库工程模板基础上,定制一个自己觉得方便的STM8 IAR工程模板。& m& [7 W; r  Z3 F$ U
$ O4 {3 }3 _3 f
  一、开发环境及外设库
& t% h& o6 S) J# A3 o  r& `; A0 M  开发环境:IAR for STM8 V3.10
  q% l+ k5 K4 G& l  STM8S外设库:STM8S/A Standard Peripherals Library Drivers V2.3.0 / 16-June-2017(官网下载压缩包“en.stsw-stm8069.zip” ); m& e" b, ?5 _" O9 {
01.jpg
/ _; z; ^; ?7 \4 u
( ?/ x1 p" O! a" {" W# x
+ \: }5 l) h( r! i; O9 P 03.jpg
3 o/ ]- w: R, a$ _6 p
. o! s- M# o& u' ^; O4 h/ r2 x' \- b9 h
02.jpg
( j: S0 m5 m3 \: v5 c) S' o/ L5 ^4 U: U/ n7 i5 B: f: I
  二、创建个人工程模板

# Z. d- x5 V5 q; u% X8 f' \  将压缩包“en.stsw-stm8069.zip”解压到本地硬盘,(目录不要太深,最好不要有汉字)。
# M; r8 @9 D. [/ t% h0 p 11.jpg
0 W; i1 v' O3 l3 e0 K+ c- V5 {9 f# |. h9 v! |' r& L1 k# O
  复制“Libraries”和“Utilities
”文件夹。
( B# I( T, a3 M2 Y$ c! a2 ?4 P( E# @: ^ 12.jpg
2 S; S1 d$ S) u/ z: K2 R4 A: g( N- k3 I+ b
  粘贴上一步复制的两个文件夹到“STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Template
”目录下。由于本贴专为创建IAR的工程模板,不涉及“RIDE”和“STVD”,帮删除此两文件夹。" ~6 G% {. `8 L! w1 f. l
13.jpg
5 B- ~9 m# ^3 r& j4 x* G/ G  c0 H! }& {$ o
  最终“
STM8S_StdPeriph_Template”文件夹下效果。/ F2 n; M& K1 L9 N0 ]3 X& ?* H
14.jpg
1 F3 @, {4 W" ~  K! E. x% Q, _, h" u
  进入“STM8S_StdPeriph_Template\EWSTM8
”目录。用ultraedit或其它文件编译软件,打开IAR工程配置文件“Project.ewp”。! l5 H% `& E4 C  ?9 P
21.jpg 2 z& s4 G" `/ n. O
0 R3 ~  X* N3 z3 l. @" Y
  将
所有符串“..\..\..\Libraries”,替换为“..\Libraries”,即减少两级目录。
  L$ `+ {3 `  l# ? 22.jpg
( C! L* s+ H4 F3 f" ?8 {" S( i: Q2 x7 m, q2 Y4 z
  同样,将所有符串“..\..\..\Utilities
”,替换为“..\Utilities”。. b* a8 s$ K% O+ y0 v
23.jpg : L6 w+ m# F8 C; k) y5 C4 V8 [
: s" \% i% `* ^: z2 p( l7 Q
  替换完成后,保存文件设置。
“Project.ewp”文件中相关路径最终效果。
7 |% f) w! o% ?' z# k 24.jpg
* x, W$ M5 f5 n& [; H2 j. z9 n6 n& i  m1 @
  在
IAR中打开工程文件“Project.eww”。看到默认配置为“STM8S208”,需要修改默认配置,不然每次打开工程都得设置一遍当前工程。
- U$ H( E* }$ B4 F1 M2 O0 e 31.jpg 9 @+ Q; @) v- d# g) R. N

, ?+ e1 j2 w7 {  从“工程”下拉菜单中,选择“编辑配置”。
& ~6 W' l8 B" K/ | 32.jpg % i+ L0 W/ A3 x9 q) E) f- s

3 C" R: h4 M1 t% w+ m" J: A5 Z' `4 v  按住鼠标左键,将“STM8S001”配置拖到最顶端。
( r0 u; @, m  q/ z 33.jpg
" ?' D7 B$ A8 B& f1 A! H; a/ z# A8 k. x$ `* V
  
保存,并退出编辑配置窗口。2 K% j$ ?1 f3 f/ k
34.jpg 5 u8 W; Q* m5 e+ `9 M1 s1 r
3 C4 T" ^0 r0 [1 N' N
  回到主界面,可以看到左边的工程管理窗口中,默认配置已变更为
“STM8S001”。
0 R9 c  O7 J' ?! @: t/ O! }2 I4 t 35.jpg
, \5 v8 s2 i/ P4 o
, A5 m/ Z) P+ Y" p# T  打开工程选项菜单,检查器件是否为
“STM8S001”  \1 o5 H. G  ^7 P: l
38.jpg
; {8 F" ~2 t* T
  ]( w2 p: Z/ H- v4 y
  检查工程头文件包含路径,及必要的宏定义是否正确- L+ O2 ]. i# {+ H/ j/ |
36.jpg
# X" I: o, J7 t  h$ T7 m" C6 h1 g5 [! z% v
  编译工程,编译无误,工程模板定制成功。9 A5 r3 L# C/ l5 |/ J
37.jpg
5 Z; H" D0 d7 X* k' w  V, P. K2 u4 ]( o  X
  二、测试IAR工程模板
5 V" ^( f2 x; h" W

% @, V- u1 J* u( w: B! L

0 O6 q7 B7 j) S6 I  复制工程模板文件夹“STM8S_StdPeriph_Template”,改名为“STM8S_StdPeriph_GPIO”。使用GPIO点灯程序来测试工程模板。
1 |! o- t+ m$ Q/ u+ z& k 39.jpg
2 \; q7 g  R" w# d5 t1 W0 t0 P; v) b( G# H' A  }  W
  复制目录“
STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Examples\GPIO\GPIO_Toggle”下的全部文件。
9 }7 R* z) a7 j  [+ F" K 41.jpg
( k+ m# a5 M3 |  Q1 N: v% \; M
2 b; d6 i/ M. y0 V4 |  将上一步复制的文件,粘贴到测试工程模板目录“
STM8S_StdPeriph_GPIO”下,并替换原有文件。+ e3 u8 E9 s" O) W' e
42.jpg , |$ K: |& P6 M- V+ u3 d! O

* o( p2 }$ D0 A6 B' a  打开“main.c”文件,程序比较简单,只需要修改LED相关的两个宏定义即可。
( a3 ~& y# e/ {( S  w0 F- H 43.jpg ! _! h% `; V4 X. E0 |3 h
! V: V/ X: Z( ?- Y/ I4 _! `
  在用户手册中看到,板上LED1对应的STM8S001的GPIO为PA3或PB5
( ]7 p+ I! @6 E4 ~9 G 31 - 副本.jpg & V0 j( F6 V) v; J" s; K
6 Y5 v& j+ w' P/ ?5 w
  修改LED宏定义为PA3
  1. #define LED_GPIO_PORT  (GPIOA)
    6 A# g% s7 B. a2 H+ w1 N6 w, o
  2. #define LED_GPIO_PINS  (GPIO_PIN_3)
复制代码

2 b, s; n& J1 b, v" Q) l7 }  o 44.jpg , @( x6 g3 `  F' m( ?5 X: x
0 {; x6 b4 q4 c# O. `4 ?
  编译工程,下载程序到目标板。# ~5 i# ?! D( ^# [
45.jpg ) p. h8 c. T$ P/ k- J/ \  ~2 H0 l

" `( }6 S: _- n' U, @" j3 K  \  下载成功后,程序运行指针指向程序开始。
全速运行程序,看到LED1开始闪灯。$ L; d( {* l0 b, X) W+ N
440.jpg
- w. B! b3 U- `) o
# e( K3 a, p! B, D5 e1 s. R9 v, \工程模板和GPIO点灯测试程序附上:6 Z7 H7 l+ z6 ?
STM8S_StdPeriph_Template.rar (3.93 MB, 下载次数: 29)
赞 收藏 3 评论4 发布时间:2019-1-29 23:30

举报

4个回答
zhdzhd 回答时间:2019-1-30 11:38:13
老兄的评测绝对算得上是官测的标准教程,佩服!!
taiyangshendi1 回答时间:2019-2-27 19:32:27
有这个模板 省事多了  上手直接写代码了
七哥 回答时间:2019-2-28 02:12:08
本帖最后由 toofree 于 2019-2-28 02:13 编辑
3 U- d- [8 M" [1 Q, z# p" A
taiyangshendi1 发表于 2019-2-27 19:32
8 ]. n$ n" j% A0 M2 k) e# u: w4 a) l有这个模板 省事多了  上手直接写代码了
把库文件复制到模板工程下省事,只要把这工程文件夹复制到其它任何路径,都能编译工程。$ x5 x) c! d- b9 Q& e% ~1 Q  u

) Z( Q: w( v) C/ l3 H! }
EdisonZheng-161 回答时间:2019-5-19 20:31:06
学习了
  \3 I# V8 Z, A+ G8 ]  P2 O

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版