RT-Thread的跑马灯

简介: RT-Thread的跑马灯

代码如下:

#define LED_PIN         GET_PIN(A, 7)
ALIGN(RT_ALIGN_SIZE)
static rt_uint8_t led_stack[512];
static struct rt_thread led_thread;
void rt_hw_led_init(void)
{
  rt_pin_mode(LED_PIN,PIN_MODE_OUTPUT);
}
static void led1_thread_entry(void *parameter)
{
  unsigned int count = 0;
  rt_hw_led_init();
  while(1){
    rt_kprintf("led on, count : %d\r\n", count);
    count++;
    rt_pin_write(LED_PIN, 0);
    rt_thread_delay(RT_TICK_PER_SECOND / 2); /* sleep 0.5
    second and switch to other thread */
    /* led1 off */
    rt_kprintf("led off\r\n");
    rt_pin_write(LED_PIN, 1);
    rt_thread_delay(RT_TICK_PER_SECOND / 2);
  }
}
int led1_sample_init(void)
{
  rt_err_t result;
  result = rt_thread_init(&led_thread,
  "led",led1_thread_entry,
  RT_NULL,
  (rt_uint8_t *)&led_stack[0],
  sizeof(led_stack),
  20,
  5);
  if(result == RT_EOK)
  {
    rt_thread_startup(&led_thread);
  }
  return 0;
}
MSH_CMD_EXPORT(led1_sample_init, led sample);

打开串口终端

运行程序如下:

相关文章
|
6月前
|
调度
【RT-Thread】学习日记之系统节拍Tick
【RT-Thread】学习日记之系统节拍Tick
|
6月前
|
消息中间件 Linux 芯片
RT-Thread快速入门-体验RT-Thread
RT-Thread快速入门-体验RT-Thread
95 0
RT-Thread快速入门-体验RT-Thread
|
6月前
|
消息中间件 存储 Linux
RT-Thread快速入门-信号实现
RT-Thread快速入门-信号实现
88 0
|
6月前
|
消息中间件 算法 物联网
RT-Thread快速入门-初探RT-Thread
RT-Thread快速入门-初探RT-Thread
111 0
|
6月前
|
容器
RT-Thread快速入门-事件集
RT-Thread快速入门-事件集
97 0
|
6月前
|
存储 调度 容器
RT-Thread快速入门-定时器管理
RT-Thread快速入门-定时器管理
138 0
|
物联网 Linux 调度
RT-Thread设计与实现:RT-Thread 概述和架构
RT-Thread设计与实现:RT-Thread 概述和架构
|
编译器 程序员 C语言
【玩转RT-Thread】RT-Thread内核宏定义详解(rtdef.h)
【玩转RT-Thread】RT-Thread内核宏定义详解(rtdef.h)
654 0
|
调度
【玩转RT-Thread】 RT-Thread Studio使用(2) 内核实战篇(线程)
【玩转RT-Thread】 RT-Thread Studio使用(2) 内核实战篇(线程)
280 0
|
安全 网络协议 JavaScript
【玩转RT-Thread】 RT-Thread Studio使用(1)(按键控制电机正反转、蜂鸣器)
【玩转RT-Thread】 RT-Thread Studio使用(1)(按键控制电机正反转、蜂鸣器)
355 0