利用RT-Thread延时函数控制gpio引脚继而控制灯的亮灭情况。
编写 rgb 彩灯运行线程,三种颜色依次切换,中间延时 1s
static void rgb_thread_entry(void* p)
{
RGB_Init();
while(1)
{
rt_thread_mdelay(1000);
RGB_Blue(1);
rt_thread_mdelay(1000);
RGB_Green(1);
rt_thread_mdelay(1000);
RGB_Red(1);
}
}
创建线程启动函数,用于启动上一步编写的线程主体
static int Thread_RGB(void)
{
rt_thread_t thread = RT_NULL;
thread = rt_thread_create("rgb", rgb_thread_entry, RT_NULL, 512, 10, 10);
if(thread == RT_NULL)
{
rt_kprintf("Thread_GRB Init ERROR");
return RT_ERROR;
}
rt_thread_startup(thread);
}
添加将线程初始化添加入系统初始化中
INIT_APP_EXPORT(Thread_RGB);
将 main.c 中的 while 里的代码改成 rt_thread_mdelay(1000);编译程序,可以看到无报错
编译完成,打开 Downloaded 下载器,通过 download 下载生成的.dcf 文件(第一次使用前需要先安装串口驱动)
总的来说 GPIO 的使用步骤很简单,第一步获取对应 GPIO 句柄,第二步配置 GPIO 模式,之后就可以调用 rtt 函数
对 GPIO 进行读写操作了!
全部0条评论
快来发表一下你的评论吧 !