【STM32】FreeRTOS开启后,不再进入主函数的while(1)

这篇具有很好参考价值的文章主要介绍了【STM32】FreeRTOS开启后,不再进入主函数的while(1)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

开启freertos后,想在主函数的while(1)中实现led的翻转,发现无法实现。

int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Call init function for freertos objects (in freertos.c) */
  MX_FREERTOS_Init();

  /* Start scheduler */
  osKernelStart();

  /* We should never get here as control is now taken by the scheduler */
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
		HAL_GPIO_TogglePin(GPIOF,GPIO_PIN_9);
		HAL_Delay(1000);
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

分析原因:

osKernelStart();

  /* We should never get here as control is now taken by the scheduler */

osKernelStart();

语句后面有一个注释:

  /* We should never get here as control is now taken by the scheduler */

我们永远不会到达这里,因为控制权现在被调度器拿走了文章来源地址https://www.toymoban.com/news/detail-648586.html

到了这里,关于【STM32】FreeRTOS开启后,不再进入主函数的while(1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32FreeRTOS任务通知(STM32cube高效开发)

    1、任务通知可模拟队列和信号量 任务通知是FreeRTOS另外一种进程间通信技术。不需要创建任何中间对象,可以直接从任务向任务或ISR向任务发送通知,传递一个通知值任务通知可以模拟二值信号量、计数信号量、或长度为1的消息队列,使用任务通知,一般效率更高,消耗内

    2024年03月13日
    浏览(46)
  • STM32之FreeRTOS

    目录 FreeRTOS 介绍 什么是 FreeRTOS ? 为什么选择 FreeRTOS ?   FreeRTOS 资料与源码下载 祼机开发与 FreeRTOS  祼机开发: FreeRTOS: FreeRTOS 实现多任务的原理 二、移植 FreeRTOS  手动移植 使用CubeMX快速移植 快速移植流程 一些常见问题 1. Timebase Source 为什么不能设置为 SysTick ? 2. FreeRTO

    2024年02月15日
    浏览(59)
  • 【FreeRTOS】FreeRTOS移植stm32详细步骤介绍

    我在查找FreeRTOS移植的相关教程特别少,所以想非常详细的介绍FreeRTOS移植stm32详细步骤,包括源码的下载,源码介绍,系统移植,代码验证等,每一步都有对应的介绍和解释,希望可以帮助到你们。 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分

    2024年02月08日
    浏览(44)
  • 【GD32/STM32】FreeRtos移植

    ​ (1)下载FreeRtos源码包 ​ FreeRTOS - Market leading RTOS (Real Time Operating System) for embedded systems with Internet of Things extensions ​ (2)将源文件添加至工程 ​ (3)将GD32中的三个中断交由FreeRtos接管 ​ (4)配置管理FreeRTOS.h文件 ​ (5)FreeRtos基本使用方法 源码包结构 1.Demo中存放的

    2024年01月20日
    浏览(38)
  • STM32 FreeRTOS 内存问题

    2024年02月09日
    浏览(39)
  • STM32CubeIDE开发(二十九), 如何结合FreeRTOS开发STM32程序

    目录 一、STM32CubeIDE使用内置的FreeRTOS 二、创建使用FreeRTOS系统的STM32CubeIDE工程 三、使用FreeRTOS功能 四、编译及测试 一、STM32CubeIDE使用内置的FreeRTOS         不同于STM32CubeIDE使用像RTThread这些第三方物联网系统,STM32CubeIDE在安装时就已经在MiddleWare中间件一栏直接支持了Free

    2024年02月12日
    浏览(46)
  • 基于STM32CubeMX创建FreeRTOS—以STM32F429为例

    目录 1. 实验任务 2. 使用STM32CubeMX创建基础工程 2.1 使用STM32CubeMX创建项目 2.2 创建新项目 2.3 时钟设置 2.4 时钟配置树 2.5 修改时钟基准,打开串行调试 2.6 配置串口 2.7 配置状态指示灯 2.8 FreeRTOS配置 2.9 配置工程输出项 3. 代码编辑 3.1 printf重映射 3.1.1 使用ARMCC 5编译器时的print

    2024年01月22日
    浏览(42)
  • 搭建STM32F407的Freertos系统(基于STM32CubeMX)

           本人长期开发Linux、Windows上应用软件,一直以来MCU开发有所接触,但较少(最近项目需要,小公司么,都得会,被逼的),好在有STM32CubeMX这样工具,貌似就是我想要的工具。         本次demo目标立下:         1. 搭建或移植FreeRTOS到STM32上,毕竟对于长期在Linux环境

    2024年02月10日
    浏览(61)
  • 【STM32】FreeRTOS互斥量学习

    互斥量(Mutex) 互斥量又称互斥信号量(本质也是一种信号量,不具备传递数据功能),是一种特殊的二值信号量,它和信号量不同的是,它支持互斥量所有权、递归访问以及防止优先级翻转的特性。比如有两个任务,A在运行,B就运行不了。 实验:创建三个任务,从高到低

    2024年02月13日
    浏览(40)
  • 【STM32】FreeRTOS事件组学习

    事件组(Event Group) 一个任务执行之前需要经过多个条件进行判断,当条件全部满足或多个条件中的某一个条件满足才执行。 实验:创建两个任务,一个事件组,当按键一二三都按过一遍才打印。 实现:FreeRTOS在CubeMX中使用V1版本的时候,没法设置Events,必须手动添加,或者

    2024年02月12日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包