查看: 1218|回复: 0

[原创] 【MCX-A153分享】5. FreeRTOS在IDE中的快捷使用

[复制链接]
  • TA的每日心情
    开心
    2019-3-5 08:47
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    110

    主题

    3404

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    9002
    最后登录
    2025-7-17
    发表于 2024-7-17 21:54:10 | 显示全部楼层 |阅读模式
    FreeRTOS 在项目中应用已经很多了,以前都是官网下载包移植。在NXP提供的官方SDK中,有很多关于FreeRTOS的使用例程,直接拿过来测试使用即可,非常方便。简单测试一下由例程修改的单线程任务点灯,后面其实就是加任务就可以了。
    进入到MCUXpresso IDE中,选择Import SDK exmaples....,然后选择freeRTOS_hello项目,如图1所示:
    5-1.JPG
    图1
    打开项目以后,在右上角的config tools中的引脚配置中,配置LED的引脚,这次选择红色的LED PIN  P3_12。如图2所示:
    5-2.JPG
    图2
    然后更新代码。在主函数中添加LED相关的基本配置,如下:
    1. gpio_pin_config_t led_config = {
    2.         kGPIO_DigitalOutput,
    3.         0,
    4.     };
    5.     /* Board pin, clock, debug console init */
    6.      CLOCK_EnableClock(kCLOCK_GateGPIO3);
    7. GPIO_PinInit(BOARD_LED_GPIO, BOARD_LED_GPIO_PIN, &led_config);
    复制代码


    任务修改为1S翻转灯的任务,修改如下:
    1. static void hello_task(void *pvParameters)
    2. {
    3.     for (;;)
    4.     {
    5. //        PRINTF("Hello world.\r\n");
    6. //        vTaskSuspend(NULL);
    7.              GPIO_PortToggle(BOARD_LED_GPIO, 1u << BOARD_LED_GPIO_PIN);
    8.              SDK_DelayAtLeastUs(1000000, CLOCK_GetCoreSysClkFreq());
    9.     }
    10. }
    复制代码


    直接编译,没什么错误,Debug,单线程调用的效果如图3所示:
    5-3.gif
    图3
    有了基础,后面的学习就可以更快一点了。
    加油哦
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-20 18:29 , Processed in 0.080239 second(s), 20 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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