IAR+STM8——TIM1定时溢出中断

发布者:平安幸福最新更新时间:2016-11-09 来源: eefocus关键字:IAR  STM8  TIM1  定时溢出中断 手机看文章 扫描二维码
随时随地手机看文章
STM8的TIM1是16位高级控制定时器,作为新手不要急着玩高级功能,先从简单的定时溢出中断开始。那么这个简单的目标就定为LED1亮500ms,灭500ms,循环往复,如此而已。

#i nclude

#define LED1_FLASH PD_ODR_ODR3 = !PD_ODR_ODR3 // 开发板上的LED1接在PD3上

void CLK_init(void)
{
CLK_CKDIVR = 0x08; // 16M内部RC经2分频后系统时钟为8M
}

void GPIO_init(void)
{
PD_DDR = 0x08; // 配置PD端口的方向寄存器PD3输出
PD_CR1 = 0x08; // 设置PD3为推挽输出
}

void TIM1_init(void)
{
TIM1_PSCRH = 0x1F; // 8M系统时钟经预分频f=fck/(PSCR+1)
TIM1_PSCRL = 0x3F; // PSCR=0x1F3F,f=8M/(0x1F3F+1)=1000Hz,每个计数周期1ms
TIM1_ARRH = 0x01; // 自动重载寄存器ARR=0x01F4=500
TIM1_ARRL = 0xF4; // 每记数500次产生一次中断,即500ms
TIM1_IER = 0x01; // 允许更新中断
TIM1_CR1 = 0x01; // 计数器使能,开始计数
}

#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF(void)
{
LED1_FLASH;
TIM1_SR1 = 0; // 清除更新中断标记,这步不能漏掉,否则会连续进入中断程序
}

void init_devices(void)
{
asm("sim"); // 关全局中断
CLK_init();
GPIO_init();
TIM1_init();
asm("rim"); // 开全局中断
}

void main( void )
{
init_devices();

// 主循环里没有程序需要执行
while(1);
}

关键字:IAR  STM8  TIM1  定时溢出中断 引用地址:IAR+STM8——TIM1定时溢出中断

上一篇:IAR+STM8——UART串口发送与中断接收
下一篇:IAR+STM8——GPIO

推荐阅读最新更新时间:2024-03-16 15:20

IAR FOR AVR 定时中断的使用
首先看下在iar 里面 iom16.h里面的中断向量表 /* NB! vectors are specified as byte addresses */ #define RESET_vect (0x00) #define INT0_vect (0x04) #define INT1_vect (0x08) #define TIMER2_COMP_vect (0x0C) #define TIMER2_OVF_vect (0x10) #define TIMER1_CAPT_vect (0x14) #define TIMER1_COMPA_vect (0x18) #define
[单片机]
stm8s开发(一) 使用IAR新建工程
附上stm8s在IAR环境下的项目工程,包括了SPI、IIC、PWM、AWU、USART、EEPROM等片上硬件的初始化代码。 http://download.csdn.net/detail/devintt/9454188 新建工程是第一步! a)创建一个 Workspace 首先,创建一个workspace。选择菜单File New Workspace b)创建一个 Project 1)创建一个新的工程,选择 Project Create New Project,创建新工程的对话框,如下图所示: 2) Tool chain 默认是 STM8 Series。 无需再选择。 3)在 Project templates 中选择“
[单片机]
STM8 时钟安全系统(CSS)
时钟安全系统用于监控HSE时钟源是否失效。当fMASTER使用HSE做为时钟源时,如果HSE时钟由于谐振器损坏、断开或其它原因而失效,时钟控制器将激活安全恢复机制,将fMASTER自动切换到辅助时钟源HSI/8。STM8系统将一直使用辅助时钟源,直至MCU被复位。 设置时钟安全系统寄存器CLK_CSSR中的CSSEN位,可使能STM8的时钟安全系统。为安全起见,CSS一旦使能就不能被关闭,直到下一次复位。 必须满足下面的条件,CSS方可检测HSE石英晶体的失效: HSE晶体开:(外部时钟寄存器CLK_ECKR中的位HSEEN=1) HSE振荡器被置为石英晶体(选项位EXTCLK为1) CSS功能开:(寄存器CLK_CSSR
[单片机]
STM8串口打印调试信息
API函数 static void uart1SendMsg(char msg , uint16_t length) { uint16_t i; for (i =0 ;i length;i++) { UART1_SendData8(msg ); while(UART1_GetFlagStatus(UART1_FLAG_TC) == RESET); } } ` void myPrintfAscii(char *msg) { while((*msg) != '\0') { uart1SendMsg(msg, 1); msg++; } } v
[单片机]
STM8单片机增量的烧写方法
1 打开STVP 2 PROJECT/NEW,乱取个名来建立项目 3 PROJECT EDITION,首先在ConfiguraTIon选好芯片,最重要的就是在SerialNumbering中来设置了 勾住Enable Serial Number,输入你要选中的地址,及字节数 起始值及步进值 4设置好了以后,选择“ProperTIes”标签,配置编程动作。 5设置好以后,导入Memory区、EEPROM区、opTIon Byte区的内容,选择工具栏“Program all tab”
[单片机]
<font color='red'>STM8</font>单片机增量的烧写方法
利用NXP S32DS和IAR for Arm加快基于NXP S32K3 MCU的汽车软件开发
利用NXP S32DS和IAR Embedded Workbench for Arm加快基于NXP S32K3 MCU的汽车软件开发 一个如何充分结合原厂MCU开发环境与业内领先软件工具优势来加速关键任务应用开发的案例 随着市场需求和汽车行业不断推进电动化、网联化、智能化和共享化等 “新四化” ,工程师将会面对越来越多的软件开发项目,去用高性能的、获得车规级和功能安全认证的MCU开发相关应用。将MCU供应商匹配提供的MCU开发环境,与业内领先的开发工具相结合,将会给开发人员带来开发效率和成果性能的大幅提升。本文以在汽车行业被广泛使用的 S32K系列32位Arm Cortex汽车MCU为例 ,来介绍通过整合利用其S32DS开
[嵌入式]
利用NXP S32DS和<font color='red'>IAR</font>  for Arm加快基于NXP S32K3 MCU的汽车软件开发
MSP430系列教程(一) 开发环境搭建(IAR for MSP430 v7.10.1)
最近开发用到了MSP430F169,重新熟悉了一遍430的开发流程,做个记录。 本教程仅供个人使用,请勿用作商业用途。 软件下载 我用的是IAR For MSP430 v7.10.1版本,下载链接见文章末尾。 安装流程 执行安装程序,依次下一步即可 破解流程 感谢一位叫“雷锋”的好心人。 启动IAR以后,菜单栏- Help- License Manager,如下图所示: License Manager打开以后,弹出如下窗口: 菜单栏- Licencse- Offline Activation: 打开离线注册机注册工具,“Product”选择MSP430,将生成的License Number拷贝
[单片机]
MSP430系列教程(一) 开发环境搭建(<font color='red'>IAR</font> for MSP430 v7.10.1)
基于IAR集成开发平台的ARM程序设计方法
摘  要: 本文主要介绍了在不加载操作系统的情况下,如何使用IAR软件平台进行基于ARM的嵌入式系统开发,包括了底层驱动、I/O控制,中断控制等程序设计。 /script script src="/ASNew/Include/A_Service.asp?AS_PID=10" /script    关键词: 嵌入式系统;IAR;ARM;中断控制    引言   在项目开发,特别是中小型项目开发中,为了降低开发难度和开发成本,常选择不加载操作系统的方案。本文选择IAR嵌入式开发平台,在不加载操作系统的前提下,使用C语言(约95%)和汇编语言(约5%),对以ATMEL公司的AT91M40800芯片(ARM7TDMI
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved