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 ...
随机推荐
- 现在有一个函数A和函数B,请你实现B继承A
现在有一个函数A和函数B,请你实现B继承A // 方式1 function B(){} function A(){} B.prototype = new A(); // 方式2 function A( ...
- silverlight wcf mvvm
近期工作比較忙.也没有时间发表新内容,今天有点时间,就顺便写点,说说近期开发的一套系统心得. 我刚去这个公司已经将前端确定要用Silverlight,我不知道为什么要选择这个,或许是为以后转C/S系统 ...
- ALTERA器件中复位电路实现之-异步复位同步化
所谓异步复位同步化,就是我们通常说的异步复位同步撤除. 为了避免纯粹的同步复位和纯粹异步复位的问题,可以使用一种叫做同步化的异步复位,我们称其为第三类复位.这种复位完全结合了异步复位和同步复位的优势, ...
- 如何卸载visualsvn for visual studio
新入职的公司,电脑上的visual studio已经安装了visualsvn 尝试在tools-->extensions and updates中卸载 但是uninstall按钮是被禁用掉的 谷 ...
- C#中如何获得两个日期之间的天数差 ( c# 计算两个日期之间相差的天数 )
DateTime dtLast = new DateTime(Convert.ToInt32(LastMenses.Year), Convert.ToInt32(LastMenses.Month), ...
- js数组中foEach和map的用法详解 jq中的$.each和$.map
数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...
- HDU 5375 Gray code (简单dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5375 题面: Gray code Time Limit: 2000/1000 MS (Java/Oth ...
- NumPy基础入门学习
对于习惯使用了MATLAB的用户而言,学习NumPy这个python工具包付出的成本应该是不大的. NumPy的基本的object是多维数组,是一个有同样类型的数字等构成的一张表格,能够通过元组进行索 ...
- Android加载大图不OOM
首先,我们试着往sdcard里放一张400k的图片,但是分辨率是2560*1600 布局简单 <?xml version="1.0" encoding="utf-8 ...
- js--- 堆栈 于拷贝
1.栈(stack)和堆(heap) stack为自动分配的内存空间,它由系统自动释放:而heap则是动态分配的内存,大小不定也不会自动释放. 2.基本类型和引用类型 基本类型:存放在栈内存中的简单数 ...