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

做网站买什么书有限责任公司优缺点

做网站买什么书,有限责任公司优缺点,百度app下载安装官方免费下载,广州建设教育网站文章目录 一、定时器理论1.1定时器创建和使用 二、定时器实践2.1周期触发定时器2.2按键消抖 一、定时器理论 定时器是一种允许在特定时间间隔后或在将来的某个时间点调用回调函数的机制。对于需要周期性任务或延迟执行任务的嵌入式应用程序特别有用。 软件定时器#xff1a; … 文章目录 一、定时器理论1.1定时器创建和使用 二、定时器实践2.1周期触发定时器2.2按键消抖 一、定时器理论 定时器是一种允许在特定时间间隔后或在将来的某个时间点调用回调函数的机制。对于需要周期性任务或延迟执行任务的嵌入式应用程序特别有用。 软件定时器 FreeRTOS 提供的用于实现定时操作的功能。与硬件定时器不同软件定时器在 FreeRTOS 的任务调度机制之上运行。 定时器回调函数 当定时器到期时FreeRTOS 将调用用户定义的回调函数。 定时器类型分为以下两种 一次性定时器One-shot Timer定时器在到期后自动停止仅调用一次回调函数。 周期性定时器Auto-reload Timer定时器在到期后自动重新启动周期性地调用回调函数。 1.1定时器创建和使用 回调函数pxCallbackFunction可以使用pvTimerID分辨是哪个定时器 返回值: 成功则返回TimerHandle_t, 否则返回NULL TimerHandle_t xTimerCreate( const char * const pcTimerName, const TickType_t xTimerPeriodInTicks, const UBaseType_t uxAutoReload, void * const pvTimerID, TimerCallbackFunction_t pxCallbackFunction );在RTOS中每隔一个固定的时间产生中断中断函数里面可以去判断定时器时间有没有超时超时后就唤醒守护任务去执行回调函数 其他任务要配置和使用定时器时是通过定时器命令队列(timer command queue)和守护任务交互所以守护任务优先级要尽可能高 所以在启动定时器要有一个xTicksToWait 当队列满了要设置等待时间 BaseType_t xTimerStart( TimerHandle_t xTimer, TickType_t xTicksToWait );定时器状态冬眠Dormant和运行Running、 二、定时器实践 2.1周期触发定时器 创建定时器 static TimerHandle_t xMyTimerHandle;xMyTimerHandle xTimerCreate(mytimer, 100, pdTRUE, NULL, MyTimerCallbackFunction);回调函数 void MyTimerCallbackFunction( TimerHandle_t xTimer ) {static int cnt 0;flagTimer !flagTimer;printf(MyTimerCallbackFunction_t cnt %d\r\n, cnt); }启动定时器把命令通过 定时器队列 发给守护任务由守护任务来启动定时器 void Task1Function(void * param) {volatile int i 0;xTimerStart(xMyTimerHandle, 0);while (1){printf(Task1Function ...\r\n);} }结果每隔100ms进入回调函数 2.2按键消抖 在嵌入式开发中我们使用机械开关时经常碰到抖动问题引脚电平在短时间内反复变化。针对这个问题我们在中断函数中添加定时器在产生中断后定时器延时20ms假如由于抖动再次进入中断继续延时20ms直到按键趋于稳定。 创建定时器 设置一次触发延时20ms static TimerHandle_t xMyTimerHandle;xMyTimerHandle xTimerCreate(mytimer, 2000, pdFALSE, NULL, MyTimerCallbackFunction);在回调函数中记录定时器中断次数cnt void MyTimerCallbackFunction( TimerHandle_t xTimer ) {static int cnt 0;flagTimer !flagTimer;printf(Get GPIO Key cnt %d\r\n, cnt); }按键中断函数中使用定时器消除抖动通过复位函数xTimerReset往定时器队列写入数据由守护任务根据队列命令来复位定时器。在这里多次产生中断会多次调用复位函数xTimerReset。时间到达后进入回调函数 void EXTI0_IRQHandler(void) {static int cnt 0;if(EXTI_GetITStatus(EXTI_Line0) ! RESET){printf(EXTI0_IRQHandler cnt %d\r\n, cnt);/* 使用定时器消除抖动 */xTimerReset(xMyTimerHandle, 0); /* Tcur 2000 */EXTI_ClearITPendingBit(EXTI_Line0); //清除中断} }
http://www.dnsts.com.cn/news/77491.html

相关文章:

  • 网站开发 语言怎样自己动手做微官网站
  • php 自动做网站点击量网站开发网页制作教程
  • 服装手机商城网站建设网站建设思路梳理
  • 网站建设教程百度网盘百度自然排名网站的logo怎么做
  • 液压产品做哪个网站好wordpress小米商城模板
  • 亿唐微方网站建设wordpress 无法创建页面
  • 购物网站开发内容河南5G网站基站建设信息
  • 做彩票网站违法的吗成都好玩的地方
  • 可以自己做课程的网站百度应用商店app下载安装
  • 建设银行东营分行网站网络营销的手段有哪些
  • 企业建站业务还能做吗wordpress php5.3.5
  • 绍兴网站建设专业的公司4000-262-wordpress 分页按钮 显示文章数
  • html简单的网站php旅游类网站开发
  • 网站网址前的小图标怎么做ensp企业网络拓扑图
  • 好用的快速网站建设平台电商网站运营团队建设方案模板
  • 网站建设网站需要什么软件有哪些网站建设实验分析
  • 男女插孔做暖暖试看网站大全界面设计风格
  • iis发布网站的教程gta5买房子网站正在建设
  • 网站备案是指什么了解互联网 网站
  • 做视电影网站赚钱吗建设网站的技术方案
  • 购物网站开发实例网站建设公司 经营资质
  • h5网站和传统网站阿里云建设网站好吗
  • 建立网站有哪些步骤ui界面设计app
  • 企业网站在线留言慈云寺网站建设
  • 长沙网站建设流程河北人工智能建站系统软件
  • 网站 快照 更新慢采购软件管理系统
  • 四川交投建设工程股份有限公司网站海报生成器
  • 网站建设与管理实践衡阳网站优化
  • 玉溪市住房和城乡建设局网站太仓有专门做网站的地方吗
  • 烟台网站推广效果好保山市建设厅官方网站