|
本帖最后由 toofree 于 2019-1-30 00:47 编辑 【STM8-SO8-DISCO】——2、简单粗暴建工程模板 ! z6 K4 B* e6 s) ^ [" q工欲善其事,必先利其器。一个顺手的工程模板也是比较重要的。5 S7 g( x$ U k+ l+ _: S 本贴以个人使用习惯,在官方STM8S/A函数库工程模板基础上,定制一个自己觉得方便的STM8 IAR工程模板。& m& [7 W; r Z3 F$ U $ O4 {3 }3 _3 f 一、开发环境及外设库 开发环境:IAR for STM8 V3.10 STM8S外设库:STM8S/A Standard Peripherals Library Drivers V2.3.0 / 16-June-2017(官网下载压缩包“en.stsw-stm8069.zip” ); m& e" b, ?5 _" O9 {
4 h/ r2 x' \- b9 h
' o/ L5 ^4 U: U/ n7 i5 B: f: I 二、创建个人工程模板 将压缩包“en.stsw-stm8069.zip”解压到本地硬盘,(目录不要太深,最好不要有汉字)。
9 f# |. h9 v! |' r& L1 k# O 复制“Libraries”和“Utilities”文件夹。
2 R4 A: g( N- k3 I+ b 粘贴上一步复制的两个文件夹到“STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Template”目录下。由于本贴专为创建IAR的工程模板,不涉及“RIDE”和“STVD”,帮删除此两文件夹。" ~6 G% {. `8 L! w1 f. l
& j4 x* G/ G c0 H! }& {$ o 最终“STM8S_StdPeriph_Template”文件夹下效果。/ F2 n; M& K1 L9 N0 ]3 X& ?* H
! E. x% Q, _, h" u 进入“STM8S_StdPeriph_Template\EWSTM8”目录。用ultraedit或其它文件编译软件,打开IAR工程配置文件“Project.ewp”。! l5 H% `& E4 C ?9 P
0 R3 ~ X* N3 z3 l. @" Y 将所有符串“..\..\..\Libraries”,替换为“..\Libraries”,即减少两级目录。
: Q2 x7 m, q2 Y4 z 同样,将所有符串“..\..\..\Utilities”,替换为“..\Utilities”。. b* a8 s$ K% O+ y0 v
: s" \% i% `* ^: z2 p( l7 Q 替换完成后,保存文件设置。“Project.ewp”文件中相关路径最终效果。
; H2 j. z9 n6 n& i m1 @ 在IAR中打开工程文件“Project.eww”。看到默认配置为“STM8S208”,需要修改默认配置,不然每次打开工程都得设置一遍当前工程。
从“工程”下拉菜单中,选择“编辑配置”。
按住鼠标左键,将“STM8S001”配置拖到最顶端。
; a/ z# A8 k. x$ `* V 保存,并退出编辑配置窗口。2 K% j$ ?1 f3 f/ k
3 C4 T" ^0 r0 [1 N' N 回到主界面,可以看到左边的工程管理窗口中,默认配置已变更为“STM8S001”。
打开工程选项菜单,检查器件是否为“STM8S001” \1 o5 H. G ^7 P: l
]( w2 p: Z/ H- v4 y 检查工程头文件包含路径,及必要的宏定义是否正确- L+ O2 ]. i# {+ H/ j/ |
$ T7 m" C6 h1 g5 [! z% v 编译工程,编译无误,工程模板定制成功。9 A5 r3 L# C/ l5 |/ J
V, P. K2 u4 ]( o X 二、测试IAR工程模板5 V" ^( f2 x; h" W 复制工程模板文件夹“STM8S_StdPeriph_Template”,改名为“STM8S_StdPeriph_GPIO”。使用GPIO点灯程序来测试工程模板。
; v) b( G# H' A } W 复制目录“STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Examples\GPIO\GPIO_Toggle”下的全部文件。
将上一步复制的文件,粘贴到测试工程模板目录“STM8S_StdPeriph_GPIO”下,并替换原有文件。+ e3 u8 E9 s" O) W' e
打开“main.c”文件,程序比较简单,只需要修改LED相关的两个宏定义即可。
! V: V/ X: Z( ?- Y/ I4 _! ` 在用户手册中看到,板上LED1对应的STM8S001的GPIO为PA3或PB5
6 Y5 v& j+ w' P/ ?5 w 修改LED宏定义为PA3
0 {; x6 b4 q4 c# O. `4 ? 编译工程,下载程序到目标板。# ~5 i# ?! D( ^# [
下载成功后,程序运行指针指向程序开始。全速运行程序,看到LED1开始闪灯。$ L; d( {* l0 b, X) W+ N
工程模板和GPIO点灯测试程序附上:6 Z7 H7 l+ z6 ?
STM8S_StdPeriph_Template.rar
(3.93 MB, 下载次数: 29)
|
| 老兄的评测绝对算得上是官测的标准教程,佩服!! |
| 有这个模板 省事多了 上手直接写代码了 |
|
本帖最后由 toofree 于 2019-2-28 02:13 编辑 把库文件复制到模板工程下省事,只要把这工程文件夹复制到其它任何路径,都能编译工程。$ x5 x) c! d- b9 Q& e% ~1 Q u |
|
学习了 |
STM8自学笔记(推荐STM8很好的入门电子书)
无刷直流电机控制应用+基于STM8S系列单片机---电子书
【精华资料】STM8Sxx固件库FOR IAR
基于STM8的DALI (数字可寻址调光协议)
分享STM8 风驰光盘的资料,是完整的(包括原理图+例程+PDF注释)
《无刷直流电机控制应用 基于STM8S系列单片机》
STM8S库函数中文参考 小软件
【资料分享】STM8L的智能手持血糖监测设备的源码
基于STM8S207工程模板
【培训资料】STM8系列PPT培训资料
微信公众号
手机版