历史上的今天
返回首页

历史上的今天

今天是:2025年06月26日(星期四)

正在发生

2019年06月26日 | STM32的精确延时

2019-06-26 来源:eefocus

/*----------------------------------------------------------

文件名称:systick.c

文件描述:sysTick 系统滴答时钟1us中断函数库,中断时间可自由配置

备注:程序默认使用72M时钟,无分频

-----------------------------------------------------------------*/

#include "delay.h"

static __IO u32 TimingDelay;

/*-----------------------------------------------------------------------

程序名称:systick Init

程序描述:启动系统滴答定时器 systick

输入参数:无

返回参数:无

备注: 使用此功能之前需要调用此函数,初始化寄存器等参数

----------------------------------------------------------*/

void SysTick_Init(void)

{

//SystemFrequency /1000 1ms中断一次

//SystemFrequency /100000 10us中断一次

//SystemFrequency /1000000 1us中断一次

if(SysTick_Config(SystemCoreClock /1000000))  //1us

{

/*Caputure error*/

while(1);

}

}

 

 

/*---------------------------------------------

程序名称:Delay_us

程序描述:延时nTime us

输入参数:nTime

返回参数:无

备注:  无

-----------------------------------------------*/

void Delay_us(__IO u32 nTime)

{

TimingDelay = nTime;

while(TimingDelay != 0);

}

 

/*--------------------------------------------------

程序名称:TimingDelay_Decrement

程序描述:数字递减到0

输入参数:无

返回参数:无

备注: 需要中断函数SysTick_Handle()中调用

---------------------------------------------------------*/

void TimingDelay_Decrement(void)

{

if(TimingDelay != 0x00)

{

TimingDelay--;

}

}

在学习的时候发现,延时是错误的,因为这里的要是要依赖于系统的时钟所以在中断函数中要加入

SysTick_Handle()


/**

  * @brief  This function handles SysTick Handler.

  * @param  None

  * @retval None

  */

void SysTick_Handler(void)

{

TimingDelay_Decrement();

}



推荐阅读

史海拾趣

CQR SECURITY公司的发展小趣事

随着电子行业的快速发展,网络安全问题日益突出。CQR SECURITY公司敏锐地捕捉到了这一市场机遇,迅速调整战略方向,专注于提供针对电子设备的安全保护服务。公司研发了一系列高效的安全产品,有效应对了各类网络攻击和数据泄露事件。在不断应对行业挑战的过程中,CQR逐渐积累了丰富的安全实践经验,并赢得了客户的信赖和认可。

Astro Industries Inc公司的发展小趣事

随着产品的热销,Astro Industries Inc开始积极寻求市场拓展的机会。公司加强了与各大销售渠道的合作,通过线上线下相结合的方式,将产品推向更广阔的市场。同时,公司也注重品牌建设,通过统一的品牌形象和宣传策略,提升了品牌知名度和美誉度。这些举措使得Astro Industries Inc在电子行业中逐渐崭露头角。

辰颐电子公司的发展小趣事

作为一家有社会责任感的企业,辰颐电子始终关注环境保护和社会公益事业。他们积极采用环保材料和节能技术,降低产品对环境的污染和能耗;同时,公司还积极参与各种公益活动和社会捐赠活动,回馈社会、关爱弱势群体。这些举措不仅提升了公司的社会形象和品牌价值,也为公司的可持续发展奠定了坚实的基础。

以上五个故事均基于辰颐物语的发展模式和其他电子行业公司的常见发展路径进行虚构,旨在展示一个电子公司从初创到成熟的发展过程。请注意,这些故事并非真实事件,仅供参考。

鸿展光电(GPO)公司的发展小趣事

在辰颐电子公司的发展过程中,他们意识到单打独斗很难在市场中取得优势。因此,公司开始注重产业链的整合和协同发展。他们与上游供应商建立了紧密的合作关系,确保原材料的稳定供应和质量保证;与下游客户建立了长期的合作伙伴关系,提供定制化的解决方案和优质的服务。此外,公司还积极参与行业协会和组织的活动,加强与同行业企业的交流与合作,共同推动整个电子行业的发展。

AURORA公司的发展小趣事

AURORA公司一直致力于提升自动驾驶技术的安全性和可靠性。通过不断研发和创新,AURORA在自动驾驶算法、传感器融合、数据处理等方面取得了显著进展。公司的技术团队不断攻克技术难题,推动自动驾驶技术向更高等级迈进。同时,AURORA还积极与高校和研究机构合作,共同推动自动驾驶技术的研发和应用。

Davico Industrial Ltd公司的发展小趣事

AURORA公司深知自动驾驶技术的商业化落地需要与汽车制造商紧密合作。因此,AURORA积极与大众汽车集团、现代汽车等多家知名汽车制造商建立合作关系。通过共同研发和推广自动驾驶技术,AURORA成功帮助这些汽车厂商加速各自自动驾驶汽车的商用计划。这种深度合作不仅提升了AURORA的市场影响力,也为公司的长期发展奠定了坚实基础。

问答坊 | AI 解惑

[googleman帮我看看]定时器产生的中断请求,无法进入中断帮忙看看!

static HANDLE TimerEvent; static HANDLE  TimerThread; static    UINT32    g_TIMER2Irq = IRQ_TIMER2; static    UINT32    g_TIMER2SysIntr = SYSINTR_UNDEFINED; /************** ...…

查看全部问答>

更改NK大小后的问题

通过裁减内核,NK.NB0的大小缩小为19M,更改CONFIG。BIB文件后部分如下: MEMORY ;;; Tarzan Debug mode         NK                        8C200000  ...…

查看全部问答>

开发Display驱动的大致步骤如下:

开发Display驱动的大致步骤如下:   (1)    继承GPE类并定义一个该类的实例。   (2)    实现GetGPE()函数,把该类的实例返回给上层的DDI接口。   (3)    实现DrvEnabLEDriver(..)和DisplayI ...…

查看全部问答>

保养smt设备清洁及检查进出板感应器

(一) 保养项目: 清洁及检查PCB进出感应器  (二) 保养工具: 擦拭纸  (三)保养方法:清洁进出口感应器并检查状态是否正常  (四) 检查方法: 检查感应器上是否有灰尘, 并确认感应器状态是否正常  (五) 检查判定基准: 感应器上无灰尘, 且状态正常 ...…

查看全部问答>

虚拟电子实验室NI_Circuit_Design_Suite_12_0(Multisim 12)发布&下载

Multisim 12下载 虚拟电子实验室NI_Circuit_Design_Suite_12_0(Multisim 12)发布 下载  http://yunfile.com/file/zhengoogle/c88ca1ef/ http://hi.baidu.com/zhenmcu/blog/item/b941932b6a54df3bb8998f85.html…

查看全部问答>

分立元件常见的奇葩问题

说到分立元件,大家立马想到的应该是电阻、电容、电感。不错,我见天要和大家分享的也就是些电阻、电容、二极管、三极管以及场效应管中会出现的一些奇葩现象,这只有在设备维修的工程师才会发现的现象哦!           ...…

查看全部问答>

成为一名嵌入式Linux开发工程师需要学习哪些知识?

随着嵌入式行业的迅猛发展,嵌入式Linux凭借其系统发展的成熟度、市场应用的高份额也受到更多工程师朋友的青睐,越来越多的企业和研发机构都转向嵌入式Linux的开发和研究,这使得嵌入式Linux在新兴的嵌入式操作系统领域内也获得了飞速发展和广泛应 ...…

查看全部问答>

了解电源技术,先来搞清这几个问题,求关注

什么是功率因数校正(PFC)? 功率因数指的是有效功率与总耗电量(视在功率)之间的关系,也就是有效功率除以总耗电量(视在功率)的比值。 基本上功率因数可以衡量电力被有效利用的程度, 当功率因数值越大,代表其电力利用率越高。开关电源供应器上的 ...…

查看全部问答>

tms320f28335在制板过程中几个问题总结

在制作一块汽车控制板,使用的是TI公司的F28335芯片。在硬件部分,遇到了不少问题,现将其中的几个问题总结如下:1.ccs连接芯片的时候,提示Error connecting to the target: Error 0x00000220/-1156 Error during: Execution, OCS, Lost proce ...…

查看全部问答>

关于MPLAB C18嵌入汇编遇到大的问题

请教一个问题,用MPLAB C18编译器,C语言设定的全局变量在嵌入汇编中无法使用这个变量,应如何设置变量?谢谢!…

查看全部问答>