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

选择响应式网站建设深圳百度推广seo公司

选择响应式网站建设,深圳百度推广seo公司,wordpress 博客 视频教程,鄂尔多斯 网站建设使用STM32CubeIDE生成。 1,使能FreeRTOS 2,选择版本 CMSIS_V1 3 设置参数USE_NEWLIB_REENTRANT 如果不设置,会在生成代码的时候提示错误 4,设置时钟TIM1作为系统时钟 ​​​​​​​​​​​​​​ 5,设置Task …

使用STM32CubeIDE生成。

  • 1,使能FreeRTOS

  • 2,选择版本 CMSIS_V1

  • 3 设置参数USE_NEWLIB_REENTRANT

    如果不设置,会在生成代码的时候提示错误

            

  • 4,设置时钟TIM1作为系统时钟

​​​​​​​​​​​​​​

  • 5,设置Task

点击Add按钮会出现对话框,设置好后就会有一个任务可以使用,默认的任务可以改设置。这里兴建了两个任务

led_wok_task:系统启动后LED会点亮,如果接收到消息会闪烁

led_fault_task:系统启动后LED会熄灭,如果接收到消息会闪烁

注意到生成的代码main.c中有两个函数,这两个函数前面有关键字 __week,说明这个是可以覆盖的一个函数,如果我们自己写了同名函数,那么我们的同名函数就会替代这个函数。

  • 6,设置LL库

  • 新建usr_led.c

编写如下代码,这个代码里面创建了两个队列led_work_queue和led_fault_queue,通过调用NotifyLedWorkBlink函数和NotifyLedFaultBlink函数往这两个队列里面写数据,LedWorkTask和LedFaultTask做了两件事情,第一件事情就是初始化队列led_work_queue和led_fault_queue,设置初始状态,在while循环中时刻监视队列里面有没有数据,如果有就让led闪烁。

#include "main.h"
#include "cmsis_os.h"
osMessageQId led_work_queue;
osMessageQId led_fault_queue;void led_work_on() {LL_GPIO_SetOutputPin(LED_WORK_GPIO_Port, LED_WORK_Pin);
}
void led_work_off() {LL_GPIO_ResetOutputPin(LED_WORK_GPIO_Port, LED_WORK_Pin);
}
void led_fault_on() {LL_GPIO_SetOutputPin(LED_FAULT_GPIO_Port, LED_FAULT_Pin);
}
void led_fault_off() {LL_GPIO_ResetOutputPin(LED_FAULT_GPIO_Port, LED_FAULT_Pin);
}void NotifyLedWorkBlink()
{osMessagePut(led_work_queue,1,0);
}
void NotifyLedFaultBlink()
{osMessagePut(led_fault_queue,1,0);
}
void LedWorkTask(void const *argument) {osMessageQDef(led_work_queue, 1, uint8_t);led_work_queue = osMessageCreate(osMessageQ(led_work_queue), NULL);led_work_on();int i;while (1) {if (osMessageGet(led_work_queue, 1000).status == osEventMessage) {i = 3;while (i--) {led_work_off();osDelay(100);led_work_on();osDelay(100);}while(osMessageGet(led_work_queue, 0).status == osEventMessage);//clear all message from the Queue}}
}
void LedFaultTask(void const *argument) {osMessageQDef(led_fault_queue, 1, uint8_t);led_fault_queue = osMessageCreate(osMessageQ(led_fault_queue), NULL);led_fault_off();int i;while (1) {if (osMessageGet(led_fault_queue, 1000).status == osEventMessage) {i = 3;while (i--) {led_fault_on();osDelay(100);led_fault_off();osDelay(100);}while(osMessageGet(led_fault_queue, 0).status == osEventMessage);}}
}

http://www.hkea.cn/news/736617/

相关文章:

  • 打开英文网站字体不对教程seo推广排名网站
  • 昭通市建设局网站太原百度关键词优化
  • 个人建网站允许吗seo职位要求
  • 环保网站设计网络营销优化推广
  • 网页设计网站制作公司冯耀宗seo视频教程
  • 怎么用路由器做网站百度指数平台官网
  • 济南做网站互联网公司有哪些seo是什么公司
  • 辛集seo网站优化价格许昌网站seo
  • 网站建设后期维护百度快速收录技术
  • 网站建设中的推广工作seo学校培训
  • 上海专业网站建设网百度搜索推广开户
  • 做学校网站素材图片合肥seo代理商
  • 真题真做报名网站淘宝搜索关键词排名
  • 免费的黄冈网站有哪些平台?培训行业seo整站优化
  • 寿县住房与城乡建设局网站真正免费的网站建站平台
  • 常德seo招聘网站seo站长工具
  • 网站开发多久完成俄罗斯搜索引擎yandex推广入口
  • 漳州做网站建设建网站免费
  • 网站建设服务上海广州软文推广公司
  • 做一个网站app需要多少钱web制作网站的模板
  • 网站建设的财务计划新媒体营销策略有哪些
  • 网站建设分金手指专业二八宁波品牌网站推广优化
  • 清远网站建设公司百度游戏风云榜
  • 网上可以自学什么技术win7系统优化软件
  • 嘉兴建站软件如何做好企业网站的推广
  • 在凡科做网站短视频推广
  • 深圳推广公司推荐q群排名优化软件
  • 什么网站做简历模板宁德市医院
  • 用什么软件做公司网站游戏推广赚佣金的平台
  • 购物网站 后台模板河北seo技术培训