历史上的今天
今天是: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 一次)】
史海拾趣
|
刚开始接触ARM,现在用的是S3C44B0的开发板,不知道在uclinux下的rc里该修改哪些东西。 在网上看到应该修改如下第一个地址的rc,而且我照做了,make之后没有报错. 1.uClinux-dist/vendors/Samsung/44B0/rc 2.uClinux-dist/romfs/etc/rc 下面是 ...… 查看全部问答> |
|
一个好用的CAN总线调试工具 CAN总线调试工具是带有USB2.0 接口和1 路CAN 接口的CAN 总线调试,可进行双向传送。可以被作为一个标准的CAN 节点,是CAN 总线产品开发、CAN总线设备测试、数据分析的便捷工具。该设备与需要同电脑上CAN调试软件配合使 ...… 查看全部问答> |
|
目前正在使用该软件,感觉非常好,现在将其破解方法简单说一下吧,此方法适用于破解过Altium Designer 6的用户。 其实它和AD6的破解文件是一样的,方法也一样。大家可以试一下,如果不行的话,我再把另一个补丁上传一下,两者结合起来用就没有问题 ...… 查看全部问答> |
|
我的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 ...… 查看全部问答> |
|
废话不说。进入正题 要求,该隐藏的时候隐藏,该出现的时候出现。。 方法1:ShowCrusor() but ce不支持。放弃 方法2:隐藏的时候用SetCrusor()换一张透明图代替鼠标指针。 但我不知道指针透明之后还能点击不?只是指针透明了?还是连功能 ...… 查看全部问答> |




