历史上的今天
返回首页

历史上的今天

今天是:2024年08月22日(星期四)

正在发生

2019年08月22日 | 基于STM32F103ZET6主控平台实现定时器TIM3的驱动

2019-08-22 来源:eefocus

定时器描述:定时器的运用主要是对重装载值和预分频的配置,这两个寄存器配置决定定时器定时的时长,接下来是开启定时器中断,当设置的时长溢出便会进入中断,在相应的中断服务函数中编写要执行的程序即可实现隔一段时间执行一次程序的效果,例如LED的亮灭。


第一步:编写tim.h头文件


#ifndef __TIM_H

#define __TIM_H

#include "sys.h"

void TIM3_Init(u16 arr,u16 psc);//定时器3初始化

#endif

第二步:编写tim.c文件


#include "tim.h"

#include "led.h"

 

void TIM3_IRQHandler(void)

{

if(TIM3->SR&0x0001)

{

LED0=!LED0;

}

TIM3->SR&=~(1<<0);//处理完中断之后应该向 TIM3_SR 的最低位写 0,来清除该中断标志

}

//定时器3中断初始化

void TIM3_Init(u16 arr,u16 psc)

{

RCC->APB1ENR|=1<<1;//开启TIM3定时器时钟

TIM3->ARR=arr;//设置重装载值

TIM3->PSC=psc;//设置预分频值

TIM3->DIER|=1<<0;//开启中断允许

TIM3->CR1|=0x01;//开启定时器3

MY_NVIC_Init(1,3,TIM3_IRQn,2);

}

第三步:编写main函数


#include "sys.h"

#include "usart.h"

#include "delay.h"

#include "led.h"

#include "beep.h"

#include "key.h"

#include "tim.h"

u8 Wl_stat=0;//while标志位

int main(void)

{

// int key_stat;

Stm32_Clock_Init(9);   //系统时钟设置

delay_init(72);     //延时初始化

uart_init(72,115200); //串口初始化为115200

LED_Init();

BEEP_Init();

TIM3_Init(4999,7199);

while(1)

{

if(Wl_stat==0)//代表进入WHILE循环

{

printf("Input While(1)-->rn");

Wl_stat=1;

}

LED1=!LED1;

delay_ms(200);

}

第四步:编译通过后,烧录进STM32F103ZET6开发板,实现程序设计效果即可。


效果:【在完成软件设计之后,我们将编译好的文件下载到精英 STM32 V1 开发板上,观看其运行结果是否与我们编写的一致。如果没有错误,我们将看 DS0 不停闪烁(每 400ms 闪烁一次),而 DS1 也是不停的闪烁,但是闪烁时间较 DS0 慢( 1s 一次)】


推荐阅读

史海拾趣

Eurofarad公司的发展小趣事

Eurofarad始终将品质管理作为公司发展的重要保障。公司建立了完善的质量管理体系,从原材料采购到生产、检测、包装等各个环节都进行严格的质量控制。同时,Eurofarad还注重持续改进,不断优化生产流程和提高生产效率,确保产品的品质和性能始终保持在行业领先水平。

电连(ECT)公司的发展小趣事

ECT在射频连接器领域取得了显著的技术突破。从2006年到2008年,公司开始研发射频同轴连接器,并在2009年实现精密射频同轴连接器的量产,并成功获得专利。这一技术突破为ECT在射频连接器市场赢得了重要地位,也为公司后续的发展奠定了坚实的基础。

明波通信(BWAVE)公司的发展小趣事

随着国内市场的日益饱和,明波通信开始将目光投向全球市场。公司先后在日本东京和江苏常州设立了子公司,通过技术合作和市场拓展,进一步巩固了公司在全球通信领域的地位。同时,明波通信也积极参与国际技术交流和合作,不断提升自身的技术水平和创新能力。这一系列的国际化战略举措,为明波通信的未来发展奠定了坚实的基础。

以上五个故事都是基于明波通信在电子行业中的发展历程和公开资料进行的概括性描述。虽然无法涵盖所有细节和具体事件,但希望能够展现出明波通信在创业、技术创新、市场拓展和国际化等方面的努力和成就。

FARNELL公司的发展小趣事

随着业务的不断发展,FARNELL公司开始寻求全球化拓展。公司陆续在欧洲、美洲、亚洲等地设立分公司和办事处,形成了覆盖全球的销售网络。这一过程中,FARNELL公司始终坚持“供货可靠、方便快捷、物超所值”的经营理念,为全球客户提供优质的产品和服务。

Benchmarq Microelectronics Inc公司的发展小趣事

随着半导体技术的不断进步,Benchmarq Microelectronics Inc始终保持着对技术创新的追求。公司加大研发投入,引进先进的生产设备和技术人才,不断推出具有创新性的半导体产品。其中,一款具有高性能、低功耗特点的芯片是公司技术创新的代表作。这款芯片采用了先进的工艺和材料,实现了更高的集成度和更低的功耗,满足了客户对高性能、长续航的需求。同时,公司还不断优化产品设计和生产流程,提高产品质量和生产效率,为客户提供了更加优质、可靠的产品。

Ceratech Corporation公司的发展小趣事

在电子行业中,压敏技术是一项重要的技术。Ceratech Corporation公司针对这一领域进行了深入研究和探索。公司研发团队经过多次试验和改进,成功研发出具有自主知识产权的压敏产品。这些产品不仅具有高灵敏度和高稳定性,而且能够适应各种复杂环境。通过压敏技术的研发与应用,Ceratech Corporation进一步提升了其在电子行业的技术实力和市场竞争力。

问答坊 | AI 解惑

UCLINUX下自动运行helloworld

刚开始接触ARM,现在用的是S3C44B0的开发板,不知道在uclinux下的rc里该修改哪些东西。 在网上看到应该修改如下第一个地址的rc,而且我照做了,make之后没有报错. 1.uClinux-dist/vendors/Samsung/44B0/rc 2.uClinux-dist/romfs/etc/rc 下面是 ...…

查看全部问答>

一个can总线通讯调试工具介绍

一个好用的CAN总线调试工具 CAN总线调试工具是带有USB2.0 接口和1 路CAN 接口的CAN 总线调试,可进行双向传送。可以被作为一个标准的CAN 节点,是CAN 总线产品开发、CAN总线设备测试、数据分析的便捷工具。该设备与需要同电脑上CAN调试软件配合使 ...…

查看全部问答>

Altium Designer Winter 09破解软件

目前正在使用该软件,感觉非常好,现在将其破解方法简单说一下吧,此方法适用于破解过Altium Designer 6的用户。 其实它和AD6的破解文件是一样的,方法也一样。大家可以试一下,如果不行的话,我再把另一个补丁上传一下,两者结合起来用就没有问题 ...…

查看全部问答>

非常实用的电子工具

文件包括: 51单片机串行口初值计算器 51单片机定时器初值计算器 ASCII及进制转换 V4.0 串口调试助手V2.2 数码管计算软件 电阻并联计算器 LC频率、电感、电容计算软件 评 STC烧写软件 衰减器计算器 数制转换小程序 空心线圈电感量的计算 ...…

查看全部问答>

ICD2无法进入调试模式的问题

我的ICD2很奇怪,前段时间看过网上的帖子把configure里的时钟设成XT,把其他的都关掉了,可以进入debug模式了 但是昨天照此办理死活就进不了调试模式,不知道有没有人遇到过和我类似的问题? 还有个问题就是configure里的设置在rebuild之后就会改 ...…

查看全部问答>

Transistor Level Modeling for Analog,RF IC Design

《Transistor Level Modeling for Analog,RF IC Design》Wladyslaw Grabinski,Bart Nauwelaers,Dominique Schreurs著(2006).pdf 一本建模的书。 Book: Transistor Level Modeling For Analog/rf Ic Design The editors and authors present a wea ...…

查看全部问答>

解释一下ov9650寄存器的设定

              Common Control 3                  Bit[7]:   Reserved          &n ...…

查看全部问答>

WinCE6.0修改IP地址

如题,请高手指教。分不多了,请不要吝啬您的智慧。…

查看全部问答>

【讨论帖】ce中隐藏鼠标

废话不说。进入正题 要求,该隐藏的时候隐藏,该出现的时候出现。。 方法1:ShowCrusor() but ce不支持。放弃 方法2:隐藏的时候用SetCrusor()换一张透明图代替鼠标指针。 但我不知道指针透明之后还能点击不?只是指针透明了?还是连功能 ...…

查看全部问答>

wince项目管理

请问各位用PB4.2裁减好的WinCE项目平台,怎么管理,是不是把平台文件拷贝给别人就OK了?但感觉文件特别大,而且在裁减的过程中,对源文件也修改过,只拷贝平台文件是否完全?谢谢先!!…

查看全部问答>