1.打开IAR工具

2.选择Project—Create New Project

3.选择Empty project,点击OK。

4.选择文件存储路径,输入工程名,点保存按钮。

5单击左上角新建文件按钮

这时候右侧会出现一个新建文件,新建的是文本文件,需要把文本文件保存为*.c格式。
5.点左上角保存按钮

6.将文件名改为main.c,点保存按钮。

这时候界面右侧文件名就会变为main.c,但是新建的工程中还没有文件,需要将main.c文件添加到工程中。
7.在左侧新建工程名上单机鼠标右键,选择Add–Add Files

8.然后再打开的文件框中选中main.c文件,然后点打开。

这时候工程文件下面就会多出一个main.c文件


9.下来需要对工程进行配置,在工程名上单击鼠标右键,选择option

打开工程设置界面

11.选中左侧General Option,在右侧选择Target选项。在DeVice选项中选择单片机型号。


12.选中左侧C/C++ Compiler,在右侧选中preprocessor选项。

在 Additional include directories: 底下的文本框中填写工程文件路径。此处填写 “$PROJ_DIR$” 意思是文件路径为工程目录。
在Defined symbols:底下文本框中填写单片机型号。此处填写STM8S003

13.选中左侧Output Converter选项。

右侧输出格式Output format:选择Inter extended 十六进制格式。然后在Generate additional output 和Output files 前面中的方框中打勾。
14.选中左侧Debugger选项

然后设置调试模式,在Setup选项Driver:下拉框中选择ST-LINK ,意思是选择ST-LINK调试器。
这时基本的工程配置就设置完了。点击OK按钮,保存设置,然后选择File–Save保存工程文件。
工程文件基本就就建成了,下来就可以给main.c文件中写代码了。
先编写一个简单的LED测试程序。LED负极接单片机PB5口,正极接1K限流电阻,电阻另一端接5V。所以PB5口输出低电平LED灯亮。PB5口输出高电平LED灯灭。
要使单片机正常工作,首先要设置单片机时钟,要用PB5口驱动LED灯,要初始化PB5口为输出口。要是LED灯闪烁,还需要一段延时。完整程序如下:

#include "iostm8s003F3.h"//系统时钟初始化
void SysClkInit( void )
{CLK_SWR = 0xe1;       //HSI为主时钟源  16MHz CPU时钟频率CLK_CKDIVR = 0x00;    //CPU时钟0分频,系统时钟0分频
}
//延时函数
void delay_ms( unsigned int ms )
{unsigned char i;while( ms != 0 ){for( i = 0; i < 250; i++ );for( i = 0; i < 75; i++ );ms--;}
}
//LED端口初始化
void LED_GPIO_Init( void )
{PB_DDR |= ( 1 << 5 );        //PB5 输出 ledPB_CR1 |= ( 1 << 5 );        //PB5 推挽输出PB_CR2 |= ( 1 << 5 );
}void main(void)
{SysClkInit();LED_GPIO_Init();while(1){PB_ODR |= ( 1 << 5 );delay_ms(500);PB_ODR &= ~( 1 << 5 );delay_ms(500);}}

然后点编译按钮,编译文件。

编译完成后,底下信息提示框提示,0错误,0警告。
然后点调试下载按钮,将文件下载到单片机中。

进入到下载调试界面后按F5键或者点运行按钮。这时程序就开始运行了。单片机PB5的LED灯开始闪烁。

有时候点下载调试按钮后会报错,这时把工程关掉,然后在打开工程,重新点一次下载调试按钮。

STM8学习笔记---新建IAR工程文件相关推荐

  1. STM8学习笔记----普通IO口模拟串口功能

    串口在产品应用中很常见,但是单片机的默认带的串口往往比较少,有时候就会出现串口不够用,所以就想着能不能用普通IO口模拟串口来实现串口的功能. 要模拟串口首先要清楚串口数据传输过程中的原理. 常用的串口 ...

  2. STM8学习笔记---如何在程序中确定寄存器名称

    在刚开始写程序的时候,在程序中需要设置寄存器的时候,往往不知道寄存器名称怎么写才是对的,这时候可以通过头文件来查看寄存器是如何调用的.在打开一个IAR工程文件,打开main.c文件,然后再引用的头文件 ...

  3. oracle的脚本日志,学习笔记:Oracle alert日志文件巡检脚本

    天萃荷净 分享一篇Oracle alert日志文件巡检脚本 每天都检查oracle日志,所以写了一个比较完善的shell,让其自动处理,在运行程序之前,需要在该脚本目录下新建tmp目录 #!/usr/ ...

  4. [python教程入门学习]python学习笔记(CMD执行文件并传入参数)

    本文章向大家介绍python学习笔记(CMD执行文件并传入参数),主要包括python学习笔记(CMD执行文件并传入参数)使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋 ...

  5. Unix原理与应用学习笔记----第六章 文件的基本属性2

    Unix原理与应用学习笔记----第六章 文件的基本属性2 改变文件权限命令:chmod 提示:文件或目录创建后,就被赋予一组默认的权限.所有的用户都有读,只有文件的所有者才有写. 相对权限设置 Ch ...

  6. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)

    Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...

  7. 陈表达VBA学习笔记-新建工作表鼠标右键菜单按钮

    陈表达VBA学习笔记-新建工作表鼠标右键菜单按钮:新建一个我的菜单按钮 设置对应的宏过程名称为 [我的菜单宏] 点击按钮弹窗信息,信息可自定义设置 详细代码如下: Sub 新建右键菜单()Dim 菜单 ...

  8. KEIL新建STM32F030F工程文件

    前言 由于项目需要,需要使用STM32F030F4P6,本文从最基础的新建工程文件开始,记录一些主要步骤. 一.新建文件夹 首先新建一个文件夹,文件夹中可参考下图创建三个文件夹以存放不同的文件. 其中 ...

  9. Linux学习笔记(二)——文件与磁盘系统

    Linux学习笔记(二)--文件与磁盘系统 文件操作 ls [选项][目录名]-l :列出长数据串,包含文件的属性与权限数据等-a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)- ...

最新文章

  1. 090613 今天做了一个软件没搞定的RAID5
  2. 关于activiti中的三类网关
  3. c++ template(8)模版多态
  4. 如何利用Excel计算有多少种组合?
  5. java.lang.String小测试
  6. Tech·Ed 2006中国 实况报道
  7. Photoshop的绘图工具
  8. 虚拟机的磁盘扩大超过2T,发现超过2T的这部分无分区
  9. IMP-00009:异常结束导出文件解决方案
  10. avl树 php,PHP实现平衡二叉树(AVL树)
  11. mysql的二级索引
  12. c语言教程项目一实验报告,C语言实验报告(四)
  13. 将Web应用性能提高十倍的10条建议
  14. Windows10C盘文件简单介绍
  15. 软件工程第五次作业——第二次结对编程
  16. 水仙花数 matlab,matlab向量运算解决水仙花数问题
  17. 网页数据抓取之当当网
  18. 网上书城 springboot vue前后端分离
  19. 基于属性的访问控制模型ABAC
  20. kubernetes test-infra

热门文章

  1. Linux 170个常见问题的详细解答
  2. 【HDU2825】Wireless Password【AC自动机,状态压缩DP】
  3. js几种数组排序及sort的实现
  4. CF558E-A Simple Task-线段树+计数排序
  5. 河外动态:疑似UFO的编队在太阳附近徘徊
  6. 《大话设计模式》第29章-OOTV杯超级模式大赛—模式总结(一)
  7. 两种自定义表单设计方案 [转贴]
  8. 测试人员的系统性思维
  9. linux mint 19新功能,Linux Mint 19.3将在2019年12月正式发布,附新功能简介
  10. stats | 使用(偏)自相关函数判断ARMA模型的阶数