【FreeRTOS】系统移植:资料下载(一)

简介: 【FreeRTOS】系统移植:资料下载

简介

在裸机系统中,所有的程序基本都是自己写的,所有的操作都是在一个无限的大循环里面实现。现在还有一些项目开发用的都是裸机系统,而且也能够满足需求。 为什么还要学习 RTOS 编程,偏偏还要整个操作系统进来。一是项目需要,随着项目要实现的功能越来越多,单纯的裸机系统已经不能够完美地解决问题,反而会使编程变得更加复杂,如果想降低编程的难度,我们可以考虑引入RTOS 实现多任务管理,这是使用 RTOS 的最大优势。二是学习的需要,进入实时操作系统的学习对于我们后面学习Linux系统开发会有不少的帮助;

资源下载

Github下载:https://github.com/freertos

托管下载:https://sourceforge.net/projects/freertos/files/FreeRTOS/

官网下载:https://www.freertos.org/

在这里我采用FreeRTOSv9.0.0.zip这个包进行后续的开发,这也是使用人数较多的一个版本相对比较稳定,建议大家在学习的过程使用和我一样的版本,如果你的开发板和我的不同也没有关系,我们下面的工程创建将采用STM32CubeMX进行创建,理论上我们的应用代码是都可以使用的只是在创建工程时选择的芯片不同,后续的外设可能引脚会有所改变,但这不影响学习;

工程创建

选择自己对应的芯片

配置时钟,我这里使用的是正点原子的探索者所以高速和低速都选择外部晶振时钟,根据自己板子原理图搭配即可

配置调试模式和配置基准时钟(原来的systick用来作为FreeRTOS的任务切换了,我们的HAL_Delay就没有基准时钟了)

配置串口1

配置时钟

配置两个LED灯

配置工程

然后生成工程并测试工程

/**
  * @brief  The application entry point.
  * @retval int
  */
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 */
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */
    /* USER CODE BEGIN 3 */
      HAL_GPIO_TogglePin(LED0_GPIO_Port,LED0_Pin);
      HAL_Delay(200);
      HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin);
      HAL_Delay(200);
  }
  /* USER CODE END 3 */
}


【FreeRTOS】系统移植:资料下载(二)https://developer.aliyun.com/article/1472585


相关文章
|
7月前
【FreeRTOS】系统移植:资料下载(三)
【FreeRTOS】系统移植:资料下载
|
4月前
|
Java Linux API
Linux设备驱动开发详解2
Linux设备驱动开发详解
55 6
|
4月前
|
消息中间件 算法 Unix
Linux设备驱动开发详解1
Linux设备驱动开发详解
61 5
|
7月前
|
安全 Linux C语言
【FreeRTOS】系统移植:资料下载(二)
【FreeRTOS】系统移植:资料下载
102 0
|
Linux C语言
嵌入式Linux C(十三)——文件操作(详)
嵌入式Linux C(十三)——文件操作(详)
287 0
嵌入式Linux C(十三)——文件操作(详)
|
Ubuntu Linux 开发工具
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发(二)
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发
246 0
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发(二)
|
Ubuntu Linux 开发工具
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发(一)
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发
636 0
ZYNQ - 嵌入式Linux开发 -08- linux应用程序开发(一)
|
芯片 Windows 内存技术
RISC-V MCU开发(十三):嵌入式开发相关工具软件
一款集成开发环境软件除了代码编辑、编译和调试这些基本功能外,也会集成其他工具软件,方便工程师们更高效的开发。MounRiver® Studio(MRS)使用了主菜单扩展的方式,将实用的工具软件添加到软件平台中。软件工具包含、但不仅限于设备管理器、内核烧录的等工具。随着逐渐丰富的内核分析需求,软件工具会一直完善并集成添加。
RISC-V MCU开发(十三):嵌入式开发相关工具软件
|
Linux
《嵌入式Linux驱动开发教程》| 每日读本书
高等院校嵌入式人才培养规划教材,全面详细地讲解了Linux设备驱动开发,也可供嵌入式Linux驱动开发人员参考。每日搜罗最具权威专业书籍,更多图书请关注“每日读本书”。
1410 0