大学做了一年智能车比赛,由于时间紧,任务重,没有时间仔细研究下mcu底层库,一直是心里的一个痛。现在想仔细了解小mcu底层工作原理,于是挑选了外设少,结构简单的 stm8进行学习。由于本人小白一枚,贴出学习笔记,希望各位大神斧正。7 A! R# N' U+ A# S7 ] 0.前沿# p/ m4 T" e6 V 硬件平台采用立创商城提供免费的TM8L051+LT8920+ME6209的评估板模块,就是一个空的pcb板自己焊接的,这个是购买链接(http://www.szlcsc.com/product/details_95929.html),这个商城东西挺全的,价钱也便宜,器件可以是在这里采购。. l0 l* c9 v$ y5 Q * T& S+ \4 B/ V' [4 c# ?1 _! { 软件平台采用的 iar for stm8 + st link v21 g% b$ z# a# q1 U8 a+ Y7 S |. I; S- V3 @3 O+ }7 P4 A " W0 k1 d+ q0 S6 E9 F 1.iar安装破解 9 J1 h/ v& }$ l4 O% z2 a 这个网站有下载链接和安装教程,介绍很详细,我就不赘述了,,另外我网盘里面也上传了一份( F# ]3 Y3 Q: L/ e( t4 B* f , c+ C% N3 o8 ]/ a# J2 O 2.iar工程建立 iar分为工程项目采用,工作空间和工程方式管理,一个工作空间下可以存在多个工程,这一点简直设计逆天,这样可以把各个版本的工程放在一起,非常简洁明了。 so,iar工程项目流程大致为, 新建工作空间-》新建工程-》新建分组-》设置工程参数-》添加项目文件及固件库-》大功告成5 s& d w1 Q" w; L2 G) [) d) ~ # U% D+ [" c$ O! _+ r* T+ i4 L7 n) w 2.1新建工作空间及工程& `$ L' ~- B- m3 t) M: U 打开iar,点击file下面的new下面有一个workspace,新建一个工作空间 1 之后就有了一个命令空间,可以先不保存,先新建一个工程,点击project下面的create new project,新建一个工程,选择空工程,点击OK,选择工程路径之后,起个名字保存一下就可以了 2 3 4 现在我们就有了一个工程,右击新建的工程,选择add group,之后随便起个名字,再添加几个/ v; m) M- @ r+ Q+ ? 5 6 之后右击save all把工程保存一下,对了这个时候可以给工作空间起个名字了 7 然后在工程保存目录下新建几个目录,这个按个人习惯来就行(其实我也不知道该怎么建立),我的习惯是建立和工程分组相同的文件夹,并在子一级目录下分别新建inc和src目录用于保存.h文件和.c文件,之后再st官网下载固件库也可以在我网盘上下载。5 B+ O; ?& [$ J9 Z& D9 I 之后把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去掉只读属性)3 L4 {/ R$ ^1 N p9 R, o2 J 9 2.2配置工程 2 h' e: d: w1 z 右击工程点击optinons,先选择芯片,之后在c/c++ complier 下的perproceser添加源文件保存路径(注意为了代码可移植性,把工程路径替换为$PROJ_DIR$,这个是相对路径的宏),然后把调试工具选择为st link ; @" O" T( @: s) Q 10 之后点击 再编译一下就大功告成了! R* x6 C# L' y3 B* o / R! G G* A# M+ i3 r. V" [9 ]8 f 第一次写这种帖子发现自己语言表达太差了,,文中可能会有错误希望各位不惜赐教" W8 E3 j4 F' ~& ~( h4 h$ ], s 7 a: K+ F. G' {" ~. } , R7 N0 I8 ~- X, v) h 链接:https://pan.baidu.com/s/1mhZZxby 密码:g09v ' h& t- u+ _& p) a% j ~. L ' i9 S L# ?4 N- M |
谢谢楼主分享 |
介绍的很详细,学习了 |
mark |
写的非常好,学习学习 |
谢谢楼主分享 |
谢谢楼主分享! |
云盘下面的IAR工程建立->下面有好几个 EWSTM8-xxxx-Autorun.exe 这些文件是版本不同,还是都需要安装? |