【DigiKey&NXP】NXP FRDM-K32L3A6开发板测评-七彩呼吸灯(二)

继上篇内容,我们继续分享这次做的项目:通过案件调整LED颜色。

首先,代码先明确了 RGB 三个灯分别接在开发板的哪个引脚上,还列出了要显示的颜色(全灭、红、绿、蓝、黄、紫、青、白)。当按下 SW2 按键时,会触发一个中断信号。中断服务函数会马上把标志位设为 true,清除中断标记,防止系统以为按键一直按着。

控制灯光颜色的逻辑:每次切换颜色时,先把所有灯关掉,再根据要显示的颜色点亮对应的灯。比如要显示黄色,就同时打开红灯和绿灯;要显示白色,就把红、绿、蓝三个灯都打开。

主程序一开始会做好各种准备工作:初始化开发板的时钟、引脚和调试用的串口,把按键设为能触发中断的输入模式,把 RGB 灯的引脚设为输出模式,初始状态让灯全灭。之后程序就进入循环等待状态,一旦检测到 “按键被按了” 的标志,就从颜色清单里挑下一个颜色,让灯显示这个颜色,同时通过串口打印出当前是什么颜色,最后把标志位复位,等着下一次按键。这样,每次按 SW2,灯就会按 “全灭→红→绿→蓝→黄→紫→青→白” 的顺序循环切换。