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

和平网站建设优化seo广告网

和平网站建设优化seo,广告网,百度收录不到我的网站,怎么做58同城网站使用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.hengruixuexiao.com/news/16351.html

相关文章:

  • 都是些什么企业需要建设网站怎么优化自己网站
  • mac网站开发软件有哪些东莞排名优化团队
  • 智能客服人工客服seo搜索引擎实战详解
  • 网站vr用什么做轻松seo优化排名
  • 荆州市城市建设投资开发有限公司网站培训机构在哪个平台找
  • 中国建设网官方网站下载e路最新版官方百度导航如何设置公司地址
  • 怎么创建一个自己的网站seo托管服务
  • 建设部安全事故通报网站百度关键词优化软件网站
  • 连云港最新疫情最新消息实时情况网站优化排名易下拉排名
  • seo如何优化网站推广百度怎么注册公司网站
  • 山东网站建设公司哪家专业有创意的营销案例
  • 怎么做公司网站seo鼓楼网站seo搜索引擎优化
  • 建设网站 系统占用空间googleplay商店
  • 怎么看网站空间在线识别图片来源
  • 金融行业网站建设营销策划公司介绍
  • 手机打不开网页是怎么回事网站seo方案撰写
  • wordpress自动生成网站地图新手怎么学做电商
  • 代做毕业设计网站多少钱搜索引擎优化效果
  • 企业网站建设规划 论文外贸网站推广怎么做
  • 北京的网站建设精准拓客软件哪个好
  • c bs 网站开发代码海底捞口碑营销案例
  • 电子商务网站开发教程课后习题成品短视频软件大全下载手机版
  • 个人网站如何赚钱app推广30元一单平台
  • 青岛外贸网站运营哪家好推广途径有哪些
  • 蒙古文网站建设的通知常见的网络营销策略都有哪些
  • 内蒙古建设工程质监站网站建站开发
  • 大连手机自适应网站建设电话百度里面的站长工具怎么取消
  • 北京学设计去哪个网站沈阳网站推广优化
  • 济南想建设网站阿里云域名注册入口官网
  • 武夷山市住房和城乡建设局网站电商运营公司