【玩转 RT-Thread】 RT-Thread Studio —— 按键控制电机正反转、蜂鸣器
一、初识 RT-Thread
做世界级的 OS,让万物互联,信息畅通无阻。
成为未来 AIoT 领域最为主流的操作系统平台。
1.简介
RT-Thread 是一个集
实时操作系统(RTOS)内核、中间件组件和开发者社区于一体
的技术平台,由熊谱翔先生
带领并集合开源社区力量开发而成,RT-Thread 也是一个组件完整丰富、高度可伸缩、简易开发、超低功耗、高安全性
的物联网操作系统
。
2.前景
RT-Thread 具备一个 IoT OS 平台所需的所有关键组件,例如 GUI、网络协议栈、安全传输、低功耗组件等等。经过 11 年的累积发展,RT-Thread 已经拥有一个
国内最大的嵌入式开源社区
,同时被广泛应用于能源、车载、医疗、消费电子等多个行业,累积装机量超过 14 亿 台,成为国人自主开发
、国内最成熟稳定和装机量最大的开源 RTOS
。
3.软件生态
RT-Thread 拥有
良好的软件生态
,支持市面上所有主流的编译工具如 GCC、Keil、IAR 等,工具链完善、友好,支持各类标准接口,如 POSIX、CMSIS、C++应用环境、Javascript 执行环境等,方便开发者移植各类应用程序。商用支持所有主流 MCU 架构,如 ARM Cortex-M/R/A, MIPS, X86, Xtensa, C-Sky, RISC-V,几乎支持市场上所有主流的 MCU 和 Wi-Fi 芯片。
二、实验准备
编程工具:
RT-Thread studio
开发板:
潘多拉STM32L475
三、实验需求
1.使用按键控制蜂鸣器和电机,当按下 KEY0 后电机左转,当按下 KEY1 后电机
右转,当按下 KEY2 后电机停止,当按住 WK_UP 时蜂鸣器鸣叫,松开 WK_UP 后蜂鸣器关闭。
2.其中 KEY0 KEY1 KEY2 三个按键会触发中断,通过 pin 设备的中断回调函数控制电机,WK_UP 按键通过轮询的方式控制蜂鸣器鸣叫。
四、操作流程
1.新建 RT-Thread 工程
2.RT-Thread Studio 界面介绍
3.代码编写
4.烧录
5.串口监视
五、代码演示
1.头文件
2.宏定义
3.void motor_ctrl(rt_uint8_t turn) //电机控制函数
4.void beep_ctrl(rt_uint8_t on) //蜂鸣器控制函数
5.void irq_callback(void *args) // 中断回调函数
6.主函数
六、原理讲解
通过按键引脚、电机以及蜂鸣器的输入输出模式,并对按键设置中断编写中断回调函数,在使能中断后。
1.电机控制:当有外部事件触发引脚状态(按下按键)时,中断回调函数对特定的触发引脚进行判断,并执行相应的操作
2.蜂鸣器控制:在主函数中循环执行判断是否 WK_UP 按键是否按下,按下触发蜂鸣器响,松开停止发声。
版权声明: 本文为 InfoQ 作者【攻城狮杰森】的原创文章。
原文链接:【http://xie.infoq.cn/article/004f24ebcc5cc1e2208fc92e0】。文章转载请联系作者。
评论