LuoTianyi_HOLOMAIN/Code_Backup/01_原版代码备份/多任务需求描述_应用版.txt

55 lines
3.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

RTOS多任务模式实现如下功能
1.RFID卡片读取基于RC522模块
模块引脚定义:
#define RFID_RST_PIN 14 //RC522 复位引脚
#define RFID_SS_PIN 10 //RC522 片选引脚
#define RFID_MISO_PIN 13 // MISO 引脚
#define RFID_MOSI_PIN 12 // MOSI 引脚
#define RFID_SCK_PIN 11 // SCK 引脚
将读取到的卡片中用户数据区的字符信息发送给串口发送格式为“SORC_XXXXX”比如如果读取到HA001就发送"SORC_HA001",卡片在读取状态下不要持续发送只需要发送1次如果卡片离开读卡器再次放入读卡器又读取到相同的信息则需要发送。注意这里要把读取到的数据转换为ASCII字符
2.基于FASTLED库控制位于GPIO4 引脚上的1颗WS2812灯珠并接受如下来自串口的指令。
串口指令“MO_LED_0”,灯珠熄灭
串口指令“MO_LED_1”灯珠亮蓝色
串口指令“MO_LED_2”灯珠亮绿色
串口指令“MO_LED_3”灯珠亮橙色
串口指令“MO_LED_4”灯珠亮红色
串口指令“MO_LED_5”灯珠亮紫色
串口指令“MO_LED_6”灯珠亮黄色
串口指令“MO_LED_7”灯珠亮白色为默认色
3.基于FASTLED库控制位于GPIO5 引脚上的160颗ws2812灯带灯带有5个状态。可被串口指令控制。
串口指令“MO_LEDN_0”灯珠全灭
串口指令“MO_LEDN_1”灯珠全部亮白色
串口指令“MO_LEDN_2”彩虹流水灯效果
串口指令“MO_LEDN_3”彩虹呼吸灯效果 串口指令“MO_LEDN_4”彩虹火车灯效果灯珠从第1颗开始出来往灯带尾部前进火车灯长度为16颗当走到尾部时所有灯珠要全部要进站也就是一颗颗减少直到灯带上没有灯珠亮起再一颗颗倒回来一直走到所有灯珠倒进第一颗灯珠进站。每次从一头出来就变换一种彩虹色。
状态0 全部熄灭状态串口指令“MO_LEDN_0”
状态1 纯白色串口指令“MO_LEDN_1”
状态2 彩虹流水灯串口指令“MO_LEDN_2”
状态3 彩虹呼吸灯串口指令“MO_LEDN_3”
状态4 马卡龙火车灯串口指令“MO_LEDN_4”效果为每次从5种马卡龙色中选择一种以16颗灯珠为一列从灯带头跑到灯带尾变色后又从灯带尾跑到灯带头以此循环。
4.在GPIO6上输出1000hz的pwm控制信号默认信号强度为80%,根据串口的指令,来控制输出信号强度。
串口指令“MO_PWM_0”,输出为0
串口指令“MO_PWM_20”,输出为20%
串口指令“MO_PWM_40”,输出为40%
串口指令“MO_PWM_60”,输出为60%
串口指令“MO_PWM_80”,输出为80%
串口指令“MO_PWM_1”,输出为100%
5.检测GPIO15的电平变化GPIO15接入一个触点按钮按钮另一端接入GND。按钮或引脚按照下述行为进行响应。
GPIO15默认为高电平当按钮按下后出发导通GND低电平向串口发送1次“SO_BT0_HIGH”如果按键持续按下超过2秒则向串口发送一次“SO_BT0_HIGHL”如果按钮松开则向串口发送“SO_BT0_LOW”。
6.检测GPIO16的电平状态默认为低电平如果检测到高电平信号则向串口发送1次“SO_WAKEUP1”,如果恢复为低则向串口发送1次“SO_WAKEUP0”。
7.检测GPIO17的电平状态默认为低电平如果检测到高电平信号则向串口发送1次“SO_BT1_HIGH”,如果恢复为低则向串口发送1次“SO_BT1_LOW”
8.检测GPIO18的电平状态默认为低电平如果检测到高电平信号则向串口发送1次“SO_BT2_HIGH”,如果恢复为低则向串口发送1次“SO_BT2_LOW”9
9.位于gpio48的引脚设置为一颗ws2812灯珠默认关闭状态。