上海航芯
直播中

syemour

8年用户 7经验值
擅长:电源/新能源 嵌入式技术
私信 关注

【上海航芯ACM32F403开发板首发试用】ACM32F403RET7+FreeRTOS 202112.00

测试视频

本帖最后由 syemour 于 2022-11-1 16:30 编辑

摘要:
1) 打开软件工程
2) 移植freertos
3) 代码链接

正文:
1)Type-c数据线连接板子到电脑
图片8.png
打开工程:
keil 5打开ACM32ModulesDemo_Rev2.0.2GPIOdemoMDK_ProjectProject.uvprojx
选择芯片:
图片7.png
选择下载器:
图片6.png
识别到芯片:
图片4.png
图片5.png

2)移植freertos
os中添加如下文件,在keil中添加头文件路径
图片3.png
文件来源:
FreeRTOSv202112.00FreeRTOSSourceinclude 所有文件
FreeRTOSv202112.00FreeRTOSSourceportableGCCARM_CM33_NTZnon_secure所有文件
FreeRTOSv202112.00FreeRTOSSourceportableMemMangheap_4.c
FreeRTOSv202112.00FreeRTOSSource 所有文件
FreeRTOSv202112.00FreeRTOSDemoCORTEX_M4F_STM32F407ZG-SKFreeRTOSConfig.h

FreeRTOSConfig.h中添加
#define  configENABLE_FPU        1
#define  configENABLE_MPU        0
#define  configENABLE_TRUSTZONE  0

屏蔽void Systick_Handler(void)
图片2.png
main.c中添加
#include "FreeRTOS.h"
#include "task.h"

TaskHandle_t LED1Task_Handler;
TaskHandle_t LED2Task_Handler;

void led1_task(void *pvParameters)
{
    while(1)
    {
      printf("LED1 task runningrn");
      vTaskDelay(1000);
    }
}

void led2_task(void *pvParameters)
{
    while(1)
    {
      printf("LED2 task runningrn");
      vTaskDelay(1000);
    }
}
修改int main(void)如下:
int main(void)
{
    System_Init();

        Uart_Init(115200); // UART2: PA2 PA3

    /* GPIO_OUTPUTGPIO_INTGPIO_PC13LED_BLINK */
    //APP_GPIO_Test(GPIO_INT);

        xTaskCreate(led1_task,   "led1_task",   128,  NULL, 2, &LED1Task_Handler);  
        xTaskCreate(led2_task,   "led2_task",   128,  NULL, 3, &LED2Task_Handler);  
        vTaskStartScheduler();

//    while(1)
//    {

//    }
}
编译 下载到demo板,打开串口:
图片1.png

更多回帖

发帖
×
20
完善资料,
赚取积分