MN316 OpenCPU丨定时器使用介绍

定时器客户应用是最常见的功能之一,本文主要介绍软件定时器和RTC定时器的函数接口,以及实际使用中的注意事项。

  • 软件定时器使用流程解析

图1 软件定时器使用流程

  • 软件定时器接口与代码解析

2.1、定义软定时器回调函数

(1)该函数为定时器的功能函数,定时完成执行该函数

(2)回调函数内不能包含延迟函数

(3)形参与返回值必须与回调函数格式对应

(4)回调函数内,不能执行太复杂的功能若有复杂功能需要实现,通常把回调函数用于发送信号量给功能线程,在该线程中执行该功能。

图2 定义软定时器回调函数

2.2、软定时器命名

(1)该参数用配置名即可。

图3 软定时器命名接口

2.3、创建软件定时器

(1)osTimerNew 返回值为该软件定时器的空间的首地址

(2)soft_timer_callback 为回调函数的首地址(函数的名字为该函数的首地址)

(3)osTimerOnce,为配置单次触发定时器,osTimerPeriodic为周期性触发该回调

(4)argument参数不用设置为空或者0

(5)之前配置完成的osTimerAttr_t的地址。

图4 创建软定时器接口

2.4、开启软件定时器

(1)参数一:定时器地址

(2)参数二:定时器实际时间值,单位ms

(3)如果该函数为单次定时器:则过XXXms执行一次回调函数

(4)如果该函数为周期性定时器,则以XXXms为周期执行回调函数

(5)重复调用,此函数将重新计时。

图5 软定时器开启接口

2.5、停止软件定时器

该函数将不会执行回调函数,但是可以重新开启即重新调用osTimerStart来继续执行回调函数。

图6 软定时器停止接口

2.6、获取软件定时器名字

图7 获取软定时器名称接口

2.7、判断该定时器是否开启

ret:为0未开启,为1开启

图8 判断定时器运行接口

2.8、删除定时器,释放定时器空间

删除后,不能调用该定时器,必须重新创建

图9 删除软定时器接口

  • 软件定时器demo演示

图10 定义软定时器回调函数

图11 创建软定时器

图12 启动软定时器

图13 判断软定时器执行

图14 软定时器Demo运行结果

  • RTC定时器使用流程解析

即便模组进入睡眠模式,RTC定时器仍然继续计时,计时结束后唤醒模组。

图15 RTC定时器使用流程

  • RTC定时器接口与代码解析

5.1、获取当前RTC时间

(1)time_t 为long long int 类型

(2)网络附着获取为当前网络时间,否则默认时间从2000-1-1开始,精确到秒,返回的是一个UNIX时间

图16 获取RTC时间接口

5.2、获取北京时间的UTC时间

(1)返回0成功,小于0失败

(2)tm结构体如图17;

(3)网络附着获取为当前网络时间,否则默认时间从2000-1-1开始。

图17 获取RTC北京UTC时间接口

5.3、设置当前系统时间

返回值 0成功,1失败。

图18 设置当前系统时间接口

5.4、启动RTC定时器

(1)timer_id:有四个RTC定时可以使用,参考结构体cm_rtc_timer_id_e;

(2)timeout定时时间,单位秒

(3)rtc定时器回调函数cb,到定点时间执行该回调函数; 形参返回值必须与typedef void (*cm_rtc_timer_cb)(void * arg);该函数一致

(4)data用户参数可不填写,一般为NULL或者(void *)0

图19 启动RTC定时器接口

5.5、停止rtc定时器

图20 停止RTC定时器接口

  • RTC定时器demo演示

图21 定义RTC定时器回调

图22 未驻网获取RTC时间,设置一个系统时间

图23 启动RTC定时器,当前设置的系统时间60秒后,执行回调

图24 RTC定时器例程运行结果

以上便是MN316 OpenCPU下软定时器和RTC定时器相关demo的代码解析及应用介绍。

### 回答1: mn316是一个硬件设计手册,其中提供了关于硬件设计的详细信息和指导。该手册涵盖了各种硬件设计的方面,包括电路设计、元器件选择、布局设计等。 首先,mn316硬件设计手册介绍了电路设计的基本原理和方法。它详细解释了各种电路元件的特性和功能,并提供了电路设计的步骤和技巧。通过学习这些内容,设计人员可以更好地理解电路设计的基本概念并能够应用到实际的项目中。 其次,mn316硬件设计手册还介绍了如何选择合适的元器件。它列出了一些常见的元器件类型,例如电阻、电容、晶振等,并解释了如何根据设计需求选择合适的元器件。这对于确保电路的稳定性和可靠性非常重要。 此外,mn316硬件设计手册还涵盖了布局设计的相关内容。布局设计对于电路的性能和噪声抑制有着重要的影响。手册中提供了一些建议和指导,如如何正确放置和布线电路元件,如何处理接地和电源线等。 总的来说,mn316硬件设计手册是一个非常有用的指南,对于硬件设计人员来说是一本宝贵的参考资料。它提供了全面的硬件设计知识,并通过实际案例和示例帮助设计人员更好地理解和应用这些知识。无论是初学者还是有经验的设计工程师,都可以从中获得很大的帮助。 ### 回答2: mn316是一款硬件设备,其硬件设计手册是指为了帮助开发者正确使用和集成该设备而提供的详细说明文档。这个手册通常会包括以下内容: 1. 设备概述:对mn316硬件设备的基本特性、功能和用途进行介绍,以便开发者理解设备的基本结构和工作原理。 2. 硬件规格:涵盖了mn316硬件设备的各种规格参数,如尺寸、重量、电源要求、接口类型等。这些规格对于设计环境和集成设备时都是十分重要的参考信息。 3. 引脚定义:对mn316硬件设备的各个引脚进行详细的定义和描述,包括引脚的功能、输入输出类型、电气特性等。这有助于开发者正确连接和配置设备。 4. 电路原理图:mn316硬件设备的电路原理图将在这个手册中提供。该电路原理图有助于开发者理解设备内部的电路连接和工作方式,用于设计定制化的电路板时会非常有帮助。 5. 设计指导:这部分通常会提供关于如何进行mn316硬件设备的集成和设计的实用建议和指导。例如,关于电源供应、信号传输、地线和噪声处理等方面的建议,以确保设备的正常运行和最佳性能。 总的来说,mn316硬件设计手册是一个重要的技术文档,为开发者提供了关于这款设备的各种详细信息和设计指导,帮助他们更好地了解和应用mn316硬件设备。 ### 回答3: mn316_硬件设计手册是一本详细介绍mn316硬件设计相关内容的手册。mn316是一种硬件设备,本手册通过详细介绍mn316的硬件设计原理、电路图、技术规格等内容,帮助读者了解和掌握mn316硬件设计的相关知识。 首先,mn316_硬件设计手册会介绍mn316硬件设计的基本原理。这包括mn316的工作原理、电路结构、功能模块等方面的内容。通过了解这些基本原理,读者可以更加全面地了解mn316设备的硬件设计思路,有助于设计出更加稳定和高效的硬件设备。 其次,mn316_硬件设计手册还会提供mn316的详细电路图,并进行解析。这些电路图包括mn316的主要电路、无线通信模块、传感器接口等,能够帮助读者理解mn316硬件设计的具体实现方式和电路连接方式。 此外,mn316_硬件设计手册还会对mn316的技术规格进行详细说明。例如,mn316的输入输出电压范围、通信协议、功耗等技术参数,以及相应的设计注意事项。这些内容对于工程师在进行mn316硬件设计时非常重要,可以帮助他们根据实际需求进行相应调整和设计。 总之,mn316_硬件设计手册是一本重要的参考资料,对于想要了解和掌握mn316硬件设计相关知识的人非常有价值。通过阅读本手册,读者可以详细了解mn316硬件设计的原理、电路图和技术规格,提高硬件设计的水平和能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值