STM32 RT-THREAD 2:使用CUBE建立RT-THREAD操作系统的闪灯工程

本文档详细介绍了如何在STM32开发环境中使用CUBE配置软件包,选择RT-Thread操作系统,并进行基本的LED闪烁程序配置。从新建项目到配置时钟,再到创建线程和启动LED闪灯,最后解决编译错误,一步步指导开发者完成嵌入式程序的构建过程。
摘要由CSDN通过智能技术生成

CUBE如何安装RT-Thread网上有很多,不再写了。

1、打开CUBE,FILE-new project,选择自己的芯片信号即可

2、点击 software packs--select components

 

 

进入如下界面,操作如下

 

3、进行自己需要的常规配置

 

 

4、配置LED

 

5、这三个勾去掉,因为RT-THREAD已经帮我们配置了,否则会重复报错

 

6、加入操作系统

 

7、配置时钟

8、输出生成我们的keil MDK工程

9、打开mdk工程,main函数加入头文件 #include "rtthread.h"

 

10、

定义线程控制块      static rt_thread_t led1_thread = RT_NULL;

,定义函数    static void led1_thread_entry(void* parameter);

11、主函数中定义

    led1_thread =                               /* Ï߳̿ØÖÆ¿éÖ¸Õë */
    rt_thread_create( "led1",              /* Ïß³ÌÃû×Ö */
                      led1_thread_entry,   /* Ïß³ÌÈë¿Úº¯Êý */
                      RT_NULL,             /* Ïß³ÌÈë¿Úº¯Êý²ÎÊý */
                      512,                 /* Ïß³ÌÕ»´óС */
                      3,                   /* Ï̵߳ÄÓÅÏȼ¶ */
                      20);                 /* Ïß³Ìʱ¼äƬ */
                   
    /* Æô¶¯Ị̈߳¬¿ªÆôµ÷¶È */
   if (led1_thread != RT_NULL)
        rt_thread_startup(led1_thread);
    else
        return -1;

12、while(1)中加入延时rt_thread_delay(100);        

13、函数

static void led1_thread_entry(void* parameter)            
{    
    /* ³õʼ»¯can,ÔÚÖжϽÓÊÕCANÊý¾Ý°ü */

    while (1)
    {
        HAL_GPIO_WritePin(GPIOA, LED1_Pin|LED2_Pin, GPIO_PIN_RESET);
        rt_thread_delay(100);    
    HAL_GPIO_WritePin(GPIOA, LED1_Pin|LED2_Pin, GPIO_PIN_SET);
    rt_thread_delay(100);            
    }
}

14、编译,有个如下错误

15、把2的双斜杠去掉如下,再次编译通过

16、下载程序开始闪灯,完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值