前面,我已经介绍了如何使用软件延时和GPIO输出控制ARM DIY板板载的四颗LED,实现跑马灯的例程。使用软件延迟的方式实现定时虽然简单却存在两个缺点:
① 、不能实现精确定时;
② 、需要占用MCU,在延时函数运行的时候,不能做其他工作,相当于白白浪费了系统资源和功耗;
为了解决以上两点不足,在实现精确定时的同时也将MCU从循环中解放出来,几乎所有的MCU,无论是简单的51单片机还是复杂的ARM处理器都提供了片上外设——定时器(timer)和一定数量的中断。今天,我就给大家介绍如何使用STM32F103ZE的定时器1来实现精确定时以及如何利用定时器中断实现跑马灯。
EEPW ARM DIY手记之软件设计(四)——STM32的定时器中断使用
目录
EEPW ARM DIY手记之软件设计(四)——STM32的定时器中断使用
一、 前言
二、 硬件原理
2.1、STM32单片机定时器简介
2.2、STM32单片机的定时器一硬件框图
三、 软件代码介绍
3.1、定时器初始化函数void TIM1_LED_ToggleInit(void)
3.2、定时器溢出中断服务函数void TIM1_UP_IRQHandler(void)
四、 实现(main.c中相关代码)
五、 总结
完整版博客PDF文档下载链接:http://share.eepw.com.cn/share/download/id/61587;
By:HXW718059156
2012年3月30日
打赏帖 | |
---|---|
宏定义和const关键字定义被打赏5分 | |
【功率监测与控制系统DIY活动成果贴】DIY功率计与LabVIEW数据采集被打赏100分 | |
【Freertos】任务管理被打赏10分 | |
分享博世的两种不同的喷射系统模式被打赏5分 | |
汽车+开路实验与短路实验被打赏10分 | |
多点式电子控制汽油喷射系统知识分享被打赏10分 | |
分享机械控制式汽油喷射系统被打赏5分 | |
【分享开发笔记,赚取电动螺丝刀】解决基于CH341制作无线模块时芯片发热问题被打赏31分 | |
【分享开发笔记,赚取电动螺丝刀】使用STM32F103ZE主控调试RS485通讯的避坑经验被打赏36分 | |
【分享开发笔记,赚取电动螺丝刀】移植xprintf模块被打赏27分 |