背景说明
手头有一个单片机的Lora模块,之前也用来开发了一个DTU和温度采集产品,但是对于单片机开发的整个流程,并没有特别清楚,只是用了官方提供的模块代码,增加了温度采集和modbus数据采集过程,并且增加了一些数据传输,加密解密的过程,主要集中在了代码的修改上。对于开发环境及工程搭建这里,并没有深入研究,所以今天来尝试一下,弄一个干净的编译环境及工程。
开发环境
这里用的软件是IAR ,可以自己去官网下载再注册,也可以下载此处的版本
网盘:提取码s2ro
安装过程就是比较简单了,下一步,继续,继续,……,就完事了
整个过程可以参考
安装过程
注册的过程稍微繁琐一点,不过为了免费,还是要耐心一点。
编译环境
ST芯片厂家为自己的产品提供了一系列的标准库,用来供开发者使用,我们可以在官网下载这个标准库
官网地址
在官网搜索栏搜索STSW-STM8016
能够得到最新的标准库,需要提供邮箱来下载。
下载解压后,我们得到了一个标准库,一个不能直接用的库。因为打开工程会报这样的错误
保存工程的时候会报这样的错误,ewp could not be written
这样的错误 debugger file could not be written
麻了,真是让人难受
最终还是决定自己创建自己的工程。
也不要想着在原来路径下删了工程文件重新创建,还是会有莫名奇妙的问题。
创建工程
代码准备
选择官方下载库里面的关键文件
拷贝到自己的工作目录下,目录名字自己定义,然后再创建一个工程目录,用来存放IAR生成的文件,以及一个src目录,用来存放自己的main.c及单片机的中断文件stm8l15x_it.c,整个目录大致如下
最后就开始在IAR中创建工程
工程创建
然后点击保存,将工程保存在自己的工程目录下。
添加group
然后添加几个group,这个group类似一个虚拟的文件夹。
我添加了lib,src和utils文件夹,分别存放库文件,自己的c文件和补充模块的c文件
导入c文件
右键group,导入c文件,这里我们只导入c文件。最终效果如下。
这里面的main.c和stm8l15x_it.c也是从标准库中的demo中复制过来的,并且这个demo用到了eval的补充模块,所以一并复制过来了。
工程配置
右键工程名—>选项(options)
首先配置自己的芯片型号
然后这里有一些头文件的检索路径,需要添加到工程中,并且增加芯片宏定义。
然后就可以愉快的编译了。
程序下载调试
工程默认是通过模拟器调试的,如果要连接芯片调试,需要用ST-link,连接好芯片的SWIM和RST线,然后配置选项
就可以愉快的进行调试咯。
注意事项
这个配置中的头文件路径,可以用相对路径来配置,例如
上面的路径,可以改为
这样,再复制移动工程之后,可以直接编译,不再受路径影响。
上一篇:单片机---STM8L移植ucosII系统
下一篇:单片机---ESP8266移植lvgl(一)
推荐阅读最新更新时间:2024-11-12 00:10
设计资源 培训 开发板 精华推荐
- AT91SAM9XE-EK,评估套件专为基于 SAM9XE ARM9 MCU 的应用而设计
- LTC4162EUFD-FFS 9V 至 35V 2 节 3.2A 充电器的典型应用,具有 PowerPath 和 2A 输入限制
- LTC4085 演示板,DFN 3X4 中的 USB 电源解决方案
- 基于STC89C52遥控
- SI5346-D-EVB,基于 Si5346 任意频率、任意输出、抖动衰减时钟乘法器的评估板,修订版 D
- LT3439,双输出隔离式升压转换器具有良好控制的 EMI
- MIC2077-1 Quad USB 配电开关的典型应用
- STP16CPC05MTR 低压 16 位恒流 LED 灌电流驱动器的典型应用
- MIC2104YML 10A EV,使用 MIC2104 恒定频率、同步降压控制器的评估板
- LT6656BIS6-2.048、2.048V 扩展电源范围电压基准的典型应用