完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在STM32系统中充当这个时基的我们称之为“系统滴答定时器”,英文名为Systick Time.
在51系列芯片的编程中,通常会用到延时函数,当时我们是用死循环来达到这个效果的; 在STM32电路系统里面,我们就可以用Systick Time这个模块,能够精确延时的目的。 这个模块即使在系统睡眠的时候也是工作的,这样可以用之做一个系统闹钟或者是实现待机唤醒这个功能。这个模块就是一个简单的倒计时器,对于它,有三个常用的寄存器 CTRL 控制状态寄存器 LOAD重装载寄存器 可参照这个理解一下 void delay_init() { SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); //选择外部时钟 HCLK/8即为9M的时钟 fac_us=SystemCoreClock/8000000; //每个us需要的systick时钟数 fac_ms=(u16)fac_us*1000; //每个ms需要的systick时钟数 } void delay_us(u32 nus) { SysTick->VAL=0X00; //清空计数器 SysTick->LOAD=nus*fac_us; //初始值加载 SysTick->CTRL|=0X01; //ENABLE,开始计数 while(!(SysTick->CTRL>>16)); //等待标志位为1 SysTick->CTRL =0X00; //关闭计数器 } VALUE当前数值寄存器 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1353 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1352 浏览 1 评论
773 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
556 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1382 浏览 2 评论
1754浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
480浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
415浏览 3评论
406浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
386浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-27 08:17 , Processed in 0.702912 second(s), Total 49, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号