当前位置: 首页 > news >正文

网站策划书wordpress-5.0.3

网站策划书,wordpress-5.0.3,企业网站需要多大空间,青岛建设银行银行招聘网站1.软件定时器的简介 定时器#xff1a;从指定的时刻开始#xff0c;经过一个指定时间#xff0c;然后触发一个超时事件#xff0c;用户可自定义定时器的周期硬件定时器#xff1a;芯片本身自带的定时器模块#xff0c;硬件定时器的精度一般很高#xff0c;每次在定时时…1.软件定时器的简介 定时器从指定的时刻开始经过一个指定时间然后触发一个超时事件用户可自定义定时器的周期硬件定时器芯片本身自带的定时器模块硬件定时器的精度一般很高每次在定时时间到达之后就会自动触发一个中断用户在中断服务函数中处理信息。软件定时器具有定时功能的软件可设置定时周期当指定时间到达后要调用回调函数也称超时函数)用户在回调函数中处理信息 1.1软件定时的优缺点 优点硬件定时器数量有限而软件定时器理论上只需有足够内存就可以创建多个使用简单、成本低缺点软件定时器相对硬件定时器来说精度没有那么高因为它以系统时钟为基准系统时钟中断优先级又是最低容易被打断。对于需要高精度要求的场合不建议使用软件定时器。 1.2.FreeRTOS软件定时的特点 可裁剪软件定时器是可裁剪可配置的功能如果要使能软件定时器需将configUSE_TIMERS配置项配置成1单次和周期软件定时器支持设置成:单次定时器或周期定时器 【注意】软件定时器的超时回调函数是由软件定时器服务任务调用的软件定时器的超时回调函数本身不是任务因此不能在该回调函数中使用可能会导致任务阻塞的API函数。 软件定时器服务任务在调用函数vTaskStartScheduler()开启任务调度器的时候会创建一个用于管理软件定时器的任务这个任务就叫做软件定时器服务任务。软件定时器服务任务作用 负责软件定时器超时的逻辑判断调用超时软件定时器的超时回调函数处理软件定时器命令队列 1.3.软件定时器的命令队列 FreeRTOS提供了许多软件定时器相关的API函数这些API函数大多都是往定时器的队列中写入消息发送命令)这个队列叫做软件定时器命令队列是提供给FreeRTOS 中的软件定时器使用的用户是不能直接访问的。 1.4.软件定时器的相关配置 当FreeRTOS的配置项configUSE_TIMERS设置为1在启动任务调度器时会自动创建软件定时器的服务/守护任务prvTimerTask( ) ;软件定时器服务任务的优先级为configTIMER_TASK_PRIORITY 31;定时器的命令队列长度为configTIMER_QUEUE_LENGTH 5 ; 【注意】软件定时器的超时回调函数是在软件定时器服务任务中被调用的服务任务不是专为某个定时器服务的它还要处理其他定时器。所以定时器的回调函数不要影响其他定时器∶ 1.回调函数要尽快实行不能进入阻塞状态即不能调用那些会阻塞任务的API函数如: vTaskDelay() 2.访问队列或者信号量的非零阻塞时间的API函数也不能调用。 2.软件定时器的状态 休眠态软件定时器可以通过其句柄被引用但因为没有运行所以其定时超时回调函数不会被执行运行态运行态的定时器当指定时间到达之后它的超时回调函数会被调用 【注意】新创建的软件定时器处于休眠状态也就是未运行的 【问题】如何让软件定时器从休眠态转变为运行态?——发送命令队列 3.单次定时器和周期定时器 单次定时器一旦定时超时只会执行一次其软件定时器超时回调函数不会自动重新开启定时不过可以被手动重新开启周期定时器一旦启动以后就会在执行完回调函数以后自动的重新启动从而周期地执行其软件定时器回调函数 单次定时器状态转换图 周期定时器状态转换图 4.软件定时器结构体成员介绍 typedef struct {const char * pcTimerName /* 软件定时器名字 */ListItem_t xTimerListItem /* 软件定时器列表项 */TickType_t xTimerPeriodInTicks; /* 软件定时器的周期 */ void * pvTimerID /* 软件定时器的ID */TimerCallbackFunction_t pxCallbackFunction; /* 软件定时器的回调函数 */ #if ( configUSE_TRACE_FACILITY 1 )UBaseType_t uxTimerNumber /* 软件定时器的编号调试用 */ #endifuint8_t ucStatus; /* 软件定时器的状态 */ }xTIMER;类似于阻塞列表软件定时器也有两个列表一个是列表另一个时溢出列表用于解决时间溢出的问题 5.FreeRTOS软件定时器相关API函数 xTimerCreate()动态方式创建软件定时器xTimerCreateStatic()静态方式创建软件定时器xTimerStart()开启软件定时器定时xTimerStartFromISR()在中断中开启软件定时器定时xTimerStop()停止软件定时器定时xTimerStopFromISR()在中断中停止软件定时器定时xTimerReset()复位软件定时器定时xTimerResetFromISR()在中断中复位软件定时器定时xTimerChangePeriod()更改软件定时器的定时超时时间xTimerChangePeriodFromISR()在中断中更改软件定时器的定时超时时间xTimerDelete()删除软件定时器 5.1.动态方式创建软件定时器xTimerCreate() TimerHandle_t xTimerCreate( const char * const pcTimerName,const TickType_t xTimerPeriodInTicks,const UBaseType_t uxAutoReload,void * const pvTimerID,TimerCallbackFunction_t pxCallbackFunction); 形参pcTimerName软件定时器名形参xTimerPeriodInTicks定时超时时间单位:系统时钟节拍形参uxAutoReload定时器模式,pdTRUE:周期定时器pdEALSE:单次定时器形参pvTimerlD软件定时器ID用于多个软件定时器公用一个超时回调函数形参pxCallbackFunction软件定时器超时回调函数返回值NULL软件定时器创建失败其他值软件定时器创建成功返回其句柄 5.2.开启软件定时器定时xTimerStart() BaseType_t xTimerStart( TimerHandle_t xTimer,const TickType_t xTicksToWait); 形参xTimer待开启的软件定时器的句柄形参xTickToWait发送命令到软件定时器命令队列的最大等待时间返回值pdPASS软件定时器开启成功pdFAIL软件定时器开启失败 5.3.停止软件定时器定时xTimerStop() BaseType_t xTimerStop( TimerHandle_t xTimer,const TickType_t xTicksToWait); 形参xTimer待停止的软件定时器的句柄形参xTickToWait发送命令到软件定时器命令队列的最大等待时间返回值pdPASS软件定时器停止成功pdFAIL软件定时器停止失败 5.4.复位软件定时器定时xTimerReset() BaseType_t xTimerReset( TimerHandle_t xTimer,const TickType_t xTicksToWait);该功能将使软件定时器的重新开启定时复位后的软件定时器以复位时的时刻作为开启时刻重新定时 形参xTimer待复位的软件定时器的句柄形参xTickToWait发送命令到软件定时器命令队列的最大等待时间返回值pdPASS软件定时器复位成功pdFAIL软件定时器复位失败 5.5.更改软件定时器的定时超时时间xTimerChangePeriod() BaseType_t xTimerChangePeriod( TimerHandle_t xTimer,const TickType_t xNewPeriod,const TickType_t xTicksToWait);形参xTimer待更新的软件定时器的句柄形参xNewPeriod新的定时超时时间单位:系统时钟节拍形参xTickToWait发送命令到软件定时器命令队列的最大等待时间返回值pdPASS软件定时器更新成功pdFAIL软件定时器更新失败 6.软件定时器整体流程 开启任务调度器时会创建软件定时器任务和空闲任务其中软件定时器完成初始化后因接收队列无内容而阻塞当创建好软件定时器后软件定时器处于休眠软件定时器任务仍处于阻塞状态当调用启动定时器API时所在任务给软件定时器任务发送消息队列软件定时器消息队列收到消息后被唤醒进行一次处理当定时器超时时软件定时器被唤醒调用回调函数快进快出 7.FreeRTOS软件定时器实验 实验目的学习FreeRTOS的软件定时器相关API函数的使用。实验设计将设计两个任务: start_task、task1两个任务的功能如下 start_task用来创建task1任务并创建两个定时器单次和周期) task1用于按键扫描并对软件定时器进行开启、停止操作
http://www.dnsts.com.cn/news/36518.html

相关文章:

  • html5手机微网站电商网站开发平台哪家好
  • 博客网站源码带后台阿里云虚拟主机网站吗
  • seo网站标题北京网站建设推广服务
  • 电子商务网站建设课设学生体会建建建设网站公司网站
  • 外贸网站推广机构网站404怎么解决
  • 道里网站运营培训网站设计形式
  • 手机网站宽度多少合适wordpress redis 刷新
  • python 电商网站开发云渲染网站开发
  • ip库网站源码国际化网站设计
  • 长沙最好网站建设网站建设视觉效果
  • 网站开发看掉一些功能东阳市城建设局网站
  • 电商网站商品页的优化目标是什么?免费网络游戏排行榜
  • 北京工程建设交易中心网站偃师做网站
  • 旅游景点网站建设毕业设计说明动力网站
  • 网站在手机上内页图不显示厦门百度seo点击软件
  • 我的网站搜索不到了领地免费网站
  • 泉州百度开户百度seo搜索引擎优化厂家
  • 网站app在线生成器太原市网站
  • y2学年做的租房网站网站首页设计及运行效果
  • 做网站需完成的软件铁路建设网站
  • 高端医疗网站建设wordpress在文章中加背景图片
  • 深圳住房网站app重庆网站建设培训
  • 网站制作分工wordpress后台颜色
  • 建设彩票网站多少钱合肥红酒网站建设
  • 网站背景自动变色重庆广告公司前十名
  • 百度网站建立指数基金有哪些
  • 中企动力网站建设 长春wordpress菜单右上角
  • 惠州网站排名提升百度不让访问危险网站怎么办
  • 如果做自己的网站微商城是正规的平台吗
  • 利用业务时间做的网站与公司有关吗杭州seo博客