历史上的今天
返回首页

历史上的今天

今天是:2024年12月21日(星期六)

2021年12月21日 | STM32设置内核定时器延时us

2021-12-21 来源:eefocus

记录

1.查找系统嘀嗒定时器,根据

《STM32F4xx-Cortex_-M4内核参考手册.pdf》来查看寄存器,

并结合core_cm4.h。

系统定时器的时钟源=21Hz,完成21000000次计数的时候,就代表说1秒时间的到达。

21000000/1000000=21,也代表说只要完成21次计数就是1微秒的时间。SysTick->LOAD决定了延时的时间。


STTM32F407为例,用寄存器写延时函数:

需要注意的是把STM32f4xx.h文件中的HSE修改为8000000,参数因子PLL_M修改为8

时钟源来源于21 Hz

最大延时时间= 2*24 1 -21000000= 798.91ms.

时钟源来源于168 Hz

最大延时时间= 2^24 -168000000= 99.86ms.


如果要实现5000ms延时的话,可以对上面进行改造,500ms的整数倍延时都可以

void delay_us(uint32_t nus)

{

   int m=0,n=0;

   m = nus/500;

   n = nus%500;

   while(m--)

   {

SysTick->LOAD = (168000000/8/1000000)*500;//执行10次500us=5s

SysTick->CTRL |= 1;

while(SysTick->CTRL &(1<<16)==0)//判断定时器标志位是否达到

SysTick->CTRL &= ~1;//使能定时器

}

if(n)

{

SysTick->LOAD = (168000000/8/1000000)*n;//执行10次500us=5s

SysTick->CTRL |= 1;

while(SysTick->CTRL &(1<<16)==0)//判断定时器标志位是否达到

SysTick->CTRL &= ~1;//使能定时器

}


}


如果固定使用168000000的系统时钟,可以用SystemCoreClock来代替168000000.

推荐阅读

史海拾趣

HBH-Microwave公司的发展小趣事

HBH-Microwave的故事始于对高性能微波组件的执着追求。在成立初期,公司便聚焦于设计并制造能够满足严苛应用需求的微波放大器。通过不断的技术研发,HBH成功推出了HA6013型号的高功率放大器,该产品在17.0至18.0 GHz频段内表现出色,迅速在通信和雷达领域获得认可。这一创新不仅巩固了HBH在微波技术领域的地位,也为后续产品的开发奠定了坚实的技术基础。

Eastman Kodak Company公司的发展小趣事

2012年1月,伊士曼柯达公司宣布申请破产保护。这一消息震惊了全球,也让人们不禁对这家百年老店的前景感到担忧。然而,在破产保护期间,柯达并没有放弃努力。公司积极寻求重组方案,通过出售非核心资产、削减成本等方式,逐步恢复了盈利能力。最终,在2013年5月,柯达成功退出了破产保护程序,开始了新的发展历程。

Elite Enterprises (H K) Co Ltd公司的发展小趣事

随着市场的竞争加剧,Elite Enterprises意识到只有不断提升产品品质和技术水平,才能在竞争中立于不败之地。因此,公司加大了对研发的投资,不断引进先进的生产设备和检测仪器,并严格把控原材料采购和生产流程。这些努力使公司的LED产品在光效、寿命和稳定性等方面均达到了行业领先水平。

General Electric Solid State公司的发展小趣事

随着市场的竞争加剧,Elite Enterprises意识到只有不断提升产品品质和技术水平,才能在竞争中立于不败之地。因此,公司加大了对研发的投资,不断引进先进的生产设备和检测仪器,并严格把控原材料采购和生产流程。这些努力使公司的LED产品在光效、寿命和稳定性等方面均达到了行业领先水平。

Bellnix Co Ltd公司的发展小趣事

随着产品线的不断丰富,Bellnix开始积极拓展市场。公司通过与各大电子厂商建立合作关系,将产品应用于手机、电脑、家电等多个领域。同时,Bellnix还加强品牌建设,通过参加国际电子展会、举办技术研讨会等方式,提升品牌知名度和影响力。这些举措有效地推动了公司的市场拓展,为公司的持续发展奠定了坚实基础。

意华(CZT)公司的发展小趣事

为了提高产品质量,意华先后通过了ISO9001、ISO14001、IECQC080000等多项国际质量管理体系认证。这些认证不仅证明了公司的质量管理水平,也为客户提供了更可靠的产品保障。通过持续的质量改进和过程控制,意华的产品质量得到了显著提升,赢得了更多客户的认可。

问答坊 | AI 解惑

星巴克的赚钱利器——Embedded for Point of Service

对于爱喝咖啡的人来说,星巴克(Starbucks)是一个耳熟能详的名字。星巴克是市场经济的宠儿之一。公司在在世界28个国家共建有5689家连锁店。自从10年前挂牌上市之后,销售额以每年平均20%的速度递增,利润额每年的平均增长幅度为30%。 那么,星 ...…

查看全部问答>

【EEWORLD模块整理】+开关电源

本帖最后由 paulhyde 于 2014-9-15 03:35 编辑 开关电源07大赛刚刚做过,估计今年出题的概率很小了,不过相关的模块还是可能用得到的,有兴趣做电源类的可以看看~~~ [ 本帖最后由 open82977352 于 2009-8-4 09:53 编辑 ]  …

查看全部问答>

5年后的手机,你能想象到是什么样么?

也是看到网上有个朋友的猜想,于是转载过来,也请大家谈谈五年后手机的样子? 现在的手机功能已是五花八门,可能手机行业内的人也不一定了解手机的全部功能。五年后或八年后的手机会是什么样的呢??? 就是一小电脑?答案:是,也不全是。准确的 ...…

查看全部问答>

SATA AHCI模式怎么读硬盘序列号?

请不要告诉我在OS下读的方法。我要DOS的。要汇编的。 我看了AHCI的spec,只看到了发命令和读状态的register,可是不知道哪个register是读取那256个word的。请教大虾们。先谢了…

查看全部问答>

U盘问题

U盘被保护了,其属性变成了0KB,请问怎么解保护?请高手指点!…

查看全部问答>

WINCE芯片的驱动怎么做?

要开题了,今天老板给了个题目,基于WindowsCE手持式IPTV测试仪88e1111PHY芯片驱动程序的设计与实现: 平时我们做驱动一般都是和ARM直连的或者是arm的外扩,但是在这个项目里面,这块PHY芯片和FPGA相连,然后FPGA和ARM通过爽口RAM相连,请问ARM应 ...…

查看全部问答>

error C2061: syntax error : identifier 'IAuthenticate'

EVC下想通过OLE DB访问数据库,可编译时报错:error C2061: syntax error : identifier \'IAuthenticate\' 请问是什么原因?…

查看全部问答>

中嵌学院--FPGA (IC前端)Verilog 数字系统设计工程师培训班

中嵌学院 FPGA (IC前端)Verilog 数字系统设计工程师培训班 招生简章 中嵌学院(中嵌教育)再次以实干精神,以一流的高端技术服务于社会。中嵌学院(中嵌教育)联合北京神州龙芯IC设计公司、重庆EDA平台强势推出《FPGA (IC前端) Verilog 数 ...…

查看全部问答>

关于Sdram的PCB布线的问题

工作在100M或133M,与DSP进行数据交换。 1,地址线和DSP之间的阻抗匹配拟使用串接电阻的方式。其中数据线是双向传输的,请问电阻是串在DSP端好呢还是RAM端好呢?若两端都加电阻除了令布线复杂外,还有没有其他隐患? 2,除了RAM之外,还会扩展fla ...…

查看全部问答>

Cannot launch the remote executable 如何解决???大家帮帮忙吧

点击但步执行,出现下面对话框 Cannot launch the remote executable Error: File not found   Win32 error code : 2 点击该对话框上的按钮:确定 则出现下面提示: Please check the remote exectuable path and file neme ...…

查看全部问答>