会员登录|免费注册|忘记密码|管理入口 返回主站||保存桌面|手机浏览|联系方式|购物车
企业会员第1年

厦门阿米控技术有限公司  
加关注0

GE,施耐德PLC140系列, DCS,风电厂设备等,黑马,系统模块,艾默生,西屋,飞利浦,英维思,霍尼韦尔,福克斯波罗等卡件模块。

搜索
新闻分类
  • 暂无分类
联系方式
  • 联系人:徐亚婷
  • 电话:0592-5087595
  • 邮件:2851195442@qq.com
  • 传真:0592-5165561
  • QQ:2851195472
站内搜索
 
荣誉资质
  • 暂未上传
友情链接
  • 暂无链接
首页 > 公司新闻 > 151X1224CFG 31F257 GFOI
公司新闻
151X1224CFG 31F257 GFOI
2022-08-04IP属地 火星11

在嵌入式项目中,软件开发基本上都会使用到延时,那么,该用软件延时还是硬件延时?它们又有什么区别呢?

硬件和软件延时

延时的种类很多,先给大家普及一下延时相关概念和分类。

1.硬件延时

指利用具有计数功能的硬件进行延时。比如:定时器(Timer)、 实时时钟(RTC)、 系统滴答定时器(SysTick)等具有计数功能的硬件。

2.软件延时

相对硬件延时而言,软件延时就是写一段软件代码,通过消耗CPU时间进行延时。比如软件延时函数:

阻塞和非阻塞延时

实际应用中,延时分阻塞和非阻塞延时。

1.阻塞延时

指CPU一直停留阻塞,不去做其它事情,直到延时结束结束。像上面那个软件延时(Delay)就是一个典型的阻塞延时,一直消耗CPU,直到延时结束。

2.非阻塞延时

指在延时期间,没有阻塞CPU,也就是说CPU在延时期间可以执行其它代码。比如:利用定时器中断延时,只需要开启定时器,在中断(计数)到来之前,CPU可以执行其它代码。

3.额外举例

a.利用定时器也能实现阻塞延时,比如STM32的HAL自带的阻塞延时:

b.利用RTOS自带的系统延时实现非阻塞延时,这个实现原理实际是利用了硬件延时(系统滴答定时器)。

这个延时的原理(延时函数代码)相对比较复杂,对于普通用户只需要知道如何调用以及简单原理即可。通常在一些RTOS的(Demo)例子的任务中都有系统延时,比如ucos非阻塞延时:

再比如FreeRTOS非阻塞延时:

硬件和软件延时区别

通过以上分析,其实不难得出,硬件延时相对软件延时更普遍。

1.软件相对硬件延时精度更差;

2.软件延时为阻塞延时,硬件延时可阻塞,也可非阻赛延时;

3.硬件延时应用更灵活、更广泛;

实际应用中,硬件延时、非阻塞延时相对更普遍。

Vaisala :HMT330 3E0A101BCAC100A0ACABAA1

VICKERS KCG6 W350 3Z M U HL1 10  

VICKERS  DG5V 7 2B M U C5 40

VQZ2150K-5L1

WDM3-004  24V

WinCC6AV6381-2BF07-4AV0V7.4

XS5F-D421-J80-F

XW2Z-2000S-CV

YUDIAN  AI-518

YX3000-4T0110G/4T0150P  380V 11KW 15KW

750W200VSGML-08AF14

750wSJME-08AMA41

H1000 11kw/15kw 380v  CIMR-HB4A0031FBC

J1000 2.2kw/3kw 380v CIMR-JB4A0007BBA

T1000 5.5kw/7.5kw 380v CIMR-TB4V0018JBA

ETC618861.N,

 SGMAH-01A1A41 / SGMAH-01A1A21

SGD7S-CB1R6AAA SGD7S-1R6A00A  

SGDM-04ADA 400W

JZSP-CVMC-05-E 5

 SGML-02AF14 ,。

免责声明:

AMIKON我们销售新产品和停产产品,独立渠道购买此类特色产品。阿米控不是本网站特色产品的授权分*销商、经销商或代表。本网站上使用的所有产品名称/产品图片、商标、品牌和徽标均为其各自所有者的财产。带有这些名称,图片、商标、品牌和徽标的产品描述、描写或销售仅用于识别目的,并不表示与任何权利持有人有任何关联或授权。