STM32F103RCT6的基本定时器tim7

利用定时器计时的原理,他能够记录你的单片机从开机后每一刻的绝对时间。下面给出实现的代码:

volatile uint32_t TimerCnt; //定时器中断的次数(设为全局变量)

void delay_us(uint16_t us)
{
	uint16_t differ=0xffff-us-5; 

	
	HAL_TIM_Base_Start(&htim7);
	__HAL_TIM_SetCounter(&htim7,differ); //设置定时器向上计数的数值,计算到us+5之后定时器会溢出,5us
	while(differ < 0xffff-5) 
	{ 
		differ = __HAL_TIM_GetCounter(&htim7); //定时器从0开始向上计数,获取当前的数值
	} 
	HAL_TIM_Base_Stop(&htim7);
 
}
————————————————
版权声明:本文为CSDN博主「Kevin_8_Lee」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Kevin_8_Lee/article/details/89243195

  

————————————————
版权声明:本文为CSDN博主「冬瓜~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44793491/article/details/107191273

posted @ 2021-07-24 01:33  流水江湖  阅读(665)  评论(0编辑  收藏  举报