查看: 500|回复: 2

【DAPLink】四、移植RTX5操作系统

[复制链接]
  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1114

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7765

    热心会员

    最后登录
    2024-4-30
    发表于 2023-10-15 10:34:13 | 显示全部楼层 |阅读模式
    本帖最后由 az158 于 2023-10-15 10:32 编辑

    RTX作为keil的亲儿子系统,无论是移植的简易的程度上,还是对m内核的支持上都是绝对的无敌。各个组件也是非常齐全。

    而这一次的RTX5移植之旅,将会短的超出想象。

    打开工程,启动RTE,勾选keil RTX5,点击ok。
    微信截图_20231015100554.png

    恭喜你,你已经成功将RTX5移植到你的工程里面了。







    是真的已经移植完毕了,这就是RTE跟RTX5的魅力,极其方便的部署方式。

    编个测试代码体验一下
    1. #include "fsl_device_registers.h"
    2. #include "fsl_debug_console.h"
    3. #include "peripherals.h"
    4. #include "pin_mux.h"
    5. #include "clock_config.h"
    6. #include "board.h"
    7. #include "cmsis_os2.h"


    8. __NO_RETURN void app1_Thread (void *argument)
    9. {
    10.     (void)argument;
    11.     for (;;)
    12.     {
    13.         PRINTF("task1\r\n");
    14.         osDelay(1000);
    15.     }
    16. }

    17. __NO_RETURN void app2_Thread (void *argument)
    18. {
    19.     (void)argument;
    20.     for (;;)
    21.     {
    22.         PRINTF("task2\r\n");
    23.         osDelay(2000);
    24.     }
    25. }

    26. __NO_RETURN void led_Thread (void *argument)
    27. {
    28.     (void)argument;
    29.     for (;;)
    30.     {
    31.         GPIO_PinWrite(BOARD_INITPINS_LED_GPIO, BOARD_INITPINS_LED_GPIO_PIN, 1U);
    32.         osDelay(1000);
    33.         GPIO_PinWrite(BOARD_INITPINS_LED_GPIO, BOARD_INITPINS_LED_GPIO_PIN, 0U);
    34.         osDelay(1000);
    35.     }
    36. }

    37. int main(void)
    38. {
    39.     BOARD_ConfigMPU();
    40.     BOARD_InitBootPins();
    41.     BOARD_InitBootClocks();
    42.     BOARD_InitDebugConsole();

    43.     /* Just enable the trace clock, leave coresight initialization to IDE debugger */
    44.     SystemCoreClockUpdate();
    45.     CLOCK_EnableClock(kCLOCK_Trace);
    46.    
    47.     osKernelInitialize();
    48.     osThreadNew(app1_Thread, NULL, NULL);
    49.     osThreadNew(app2_Thread, NULL, NULL);
    50.     osThreadNew(led_Thread, NULL, NULL);

    51.     if (osKernelGetState() == osKernelReady)
    52.     {
    53.         osKernelStart();
    54.     }

    55.     for(;;){}
    56. }
    复制代码

    运行正常,板子上的小灯也开始闪烁
    微信截图_20231015102136.png

    整体工程结构如下,我们只需要关注RTX_Config.c与RTX_Config.h两个文件即可
    微信截图_20231015102558.png


    RTX_Config.h文件使用keil配置向导编写,简直把饭喂到了嘴边
    微信截图_20231015102909.png

    有人可能觉得,没有源码,心里不爽,RTX5本身是开源的,喜欢阅读源码的人,只需在部署的时候选择Source就能将原始代码加入工程,用库的话编译起来更快。
    微信截图_20231015102256.png


    代码工程
    4.az158_dapLink.zip (88.4 KB, 下载次数: 4)
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 12:54
  • 签到天数: 1482 天

    [LV.10]以坛为家III

    203

    主题

    2万

    帖子

    64

    超级版主

    Rank: 8Rank: 8

    积分
    92880
    最后登录
    2024-5-5
    发表于 2023-10-15 22:48:24 | 显示全部楼层
    大佬周末都这么卷啊
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-3-5 08:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    91

    主题

    2931

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    7818
    最后登录
    2024-4-30
    发表于 2023-10-16 09:13:03 | 显示全部楼层
    跟着大佬在学习
    加油哦
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-5-6 12:45 , Processed in 0.118270 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表