IAR FOR STM8 学习笔记 IAR工程的建立
STM8是ST意法半导体针对工业应用和消费电子开发而推出的8位单片机。
每种MCU都有自身的优点与缺点,与其它8-bit MCU相比,STM8 8-bit MCU最大的特点是:
· 内核:
o 最高fcpu频率,可达24MHz,当fcpu≤16MHz时0等待的存储器访问
o 高级STM8内核,基于哈佛结构并带有3级流水线
o 扩展指令集
o 最高20 MIPS @ 24 MHz
· 时钟、复位和电源管理:
o 2.95V到5.5V工作电压
o 灵活的时钟控制,4个主时钟源
o 带有时钟监控的时钟安全保障系统
· 电源管理:
o 低功耗模式(等待、活跃停机、停机)
o 外设的时钟可单独关闭
o 永远打开的低功耗上电和掉电复位
· 通信接口:
o 高速1Mbit/s CAN 2.0B接口
o 带有同步时钟输出的UART — LIN主模式
o UART兼容LIN2.1协议,主/从模式和自动重新同步
o SPI接口最高到10Mbit/s
o I2C接口最高到400Kbit/s
· I/O端口:
o 带有高吸收电流输出的GPIO脚
o 非常强健的GPIO设计,对倒灌电流有非常强的承受能力
· 开发支持:
o 单线接口模块(SWIM)和调试模块(DM),可以方便地进行在线编程和非侵入式调试
· 性价比:
o 相对于现在众多的8位单片机,STM8的价格与性能比例是比较高。
这么多优点,虽然好多都不懂还是慢慢学吧。。首先建立开发平台:
用的是IAR FOR STM8,感觉还不错吧,编译器的效率很高。
IAR下载也很简单,直接上官网上有完全版和代码限制版的。。
从建立一个新的工程开始:
1.先创建一个workplace.选择File>New>Workplace
2.(创建一个新的工程,选择Project>Creat New Project,如果用的是IAR FOR STM8 就默认无需更改。保存并输入Project名字,在workplace窗口中显示如下

默认配置是Debug
3.在添加文件到工程之前,先保存Workplace。并输入保存的名字
Workplace的扩展名是eww。
4.添加文件到工程,先File>New>File,也可以直接使用快捷键
新建一个文件。之后保存。

保存的时候可以新建一个C文件夹,以便区分工程中的其他文件,方便查找和再调用。
再将文件添加到工程中就可以开始了。
右击工程名>ADD>ADD FILES, 就可以添加文件。
首先添加头文件,配置寄存器方便写程序的时候调用。
注意:记得设置路径,这样IAR才能找到你的头文件。
打开工程Option设置,在C/++compiler ――――PreProcessor中加入你自己的路径
如
$PROJ_DIR$\H // 加入工程文件所在目录下的\H子目录
测试程序:
#include <iostm8s207sb.h>
void main()
{
while(1);
}
编译连接下:

用的是ST-LINK,下载前先设置下

下载

没有错误,可以开始了。。。
IAR FOR STM8 学习笔记 IAR工程的建立的更多相关文章
- IAR FOR STM8 学习笔记 固件库 GPIO
经过一番挣扎,还是决定使用官方的固件库了.. 从网上下一个STM8S的固件库,记得是FOR IAR的. 找到里面的IAR模板就可以开始用了. 这些都是直接写好的库函数,可以直接调用,但首先得先读懂,先 ...
- Android学习笔记__2__Android工程目录结构
一.创建Android工程HelloWorld . src 文件夹里的是源文件 . Android2.2 是引用的类库,这些和 java 的都一样 . gen里面的类就是 ADT 自动生成的啦,一般只 ...
- 用户体验学习笔记(工程中发现的PM常犯错误)
清晰呈现 启动和停止 布局 导航 层级式 扁平式 内容/体验主导式 总结 动画 注意点 品牌化 当你需要在 app 中提醒用户品牌的存在时,请遵循以下准则: 以优雅谦逊的方式整合品牌资产.人们使用你的 ...
- Qt学习笔记-1 开发环境建立
关于Qt在这里不做过多介绍,吸引我的地方是有几点: 1.用C++开发语言: 2.多平台(wWindows.MAC.Linux.Android等): 3.界面所见几所得.其他的可以百度上了解: 从本文开 ...
- Thinking in UML 学习笔记(一)——建立对象模型
一.面向对象的本质 面向对象的本质是抽象,当系统达到了超越其处理能力的程度,我们能够抽象出我们能够处理的范围来提成抽象级别,这样就能够构建更大.更复杂的系统. 现实世界和对象世界之间存在着一道沟壑,这 ...
- DOCKER 学习笔记7 Docker Machine 建立虚拟机实战,以及错误总结
前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...
- ROS学习笔记(五)——建立工作空间
pre.ctl { font-family: "Liberation Mono", monospace } p { margin-bottom: 0.25cm; line-heig ...
- [Cocos2d-x for WP8学习笔记] 一些基本概念,建立自己的启动界面
流程控制:场景是相对不变的游戏元素集合,游戏在场景间的切换就是流程控制. 场景.层和精灵:它们是不同层次的游戏元素.通常,场景包含层,层包含精灵,场景与层是其他游戏元素的容器,而精灵是展示给玩家的图形 ...
- IAR for STM8 错误
一个IAR for STM8 v1.3 的工程,换到1.4版后出现如下错误 unable to allocate space for sections/blocks with a total esti ...
随机推荐
- uvalive 4730王国kingdom(并查集+线段树)
题意:有T组測试数据.每组数据的N表示有N个城市,接下来的N行里每行给出每一个城市的坐标(0<=x,y<=1000000),然后有M(1<M<200000)个操作,操作有 ...
- Android——4.2.2 文件系统文件夹分析
近期公司要整android内部培训,分配给我写个培训文档.这里记录例如以下: 撰写不易,转载请注明出处:http://blog.csdn.net/jscese/article/details/4089 ...
- HDU4565 So Easy! 矩阵高速幂外加数学
easy 个屁啊,一点都不easy,题目就是要求公式的值,但是要求公式在最后的取模前的值向上取整.再取模,无脑的先试了高速幂 double fmod来做,结果发现是有问题的.这题要做肯定得凑整数,凑 ...
- 7. java操作MongoDB,采用_id查询
转自:https://www.2cto.com/database/201704/633262.html mongodb命令行_id查询方法 直接用ObjectId() db.getCollection ...
- HDU 2435 There is a war Dinic 最小割
题意是有n座城市,n号城市不想让1号城市可达n号,每条道路有一条毁坏的代价,1号还可以修一条不能毁坏的道路,求n号城市所需的最小代价最大是多少. 毁坏的最小代价就直接求一遍最大流,就是最小割了.而可以 ...
- Ionic2集成ArcGIS JavaScript API.md
1. Ionic同原生ArcGIS JavaScript API结合 1.1. 安装esri-loader 在工程目录下命令行安装: npm install angular2-esri-loader ...
- 参考《深度学习原理与应用实践》中文PDF
读国内关于深度学习的书籍,可以看看<深度学习原理与应用实践>,对深度学习原理的介绍比较简略(第3.4章共18页).只介绍了"神经网络"和"卷积神经网络&quo ...
- 小试VS 2017 开发Python Django项目过程一
一.新建项目python ->django web 项目 (选择带bootstrap风格与twwriter)项目名称iepiececomputing (ie计件计算)跳出窗体 -> 添加虚 ...
- WEB开发中一些常见的攻击方式及简单的防御方法
WEB开发中一些常见的攻击方式及简单的防御方法 转载:http://blog.csdn.net/seven__________7/article/details/70896913
- (七十一)关于UITableView退出崩溃的问题和滚动究竟部的方法
[TableView退出崩溃的问题] 近期在使用TableView时偶然发如今TableView中数据较多时,假设在滚动过程中退出TableView到上一界面.会引起程序的崩溃.经过网上查阅和思考我发 ...