前言
一、目录结构
![](https://img-blog.csdnimg.cn/11af4fca7c774c6ca6ba3640a2916502.png)
二、代码实现
1.代码如下(示例):
static_library("keydemo") {
sources = [
# "colorful_light.c",
# "human_sensor.c",
# "photosensitive.c",
# "human_sensor_light.c"
# "user_key.c",
# "sensor.c",
"key_traffic_lights2.c"
]
include_dirs = [
"//utils/native/lite/include",
"//kernel/liteos_m/components/cmsis/2.0",
"//base/iot_hardware/interfaces/kits/wifiiot_lite",
"//vendor/hisi/hi3861/hi3861/third_party/lwip_sack/include",
"//foundation/communication/interfaces/kits/wifi_lite/wifiservice",
"//third_party/pahomqtt/MQTTPacket/src",
"//third_party/pahomqtt/MQTTPacket/samples",
"//vendor\hisi\hi3861\hi3861\components\at\src",
]
}
//key_traffic_lights2.c
#include "key_traffic_lights2.h"
//音乐播放函数
static void *BeeperMusicTask(const char *arg)
{
(void)arg;
printf("BeeperMusicTask start!\r\n");
hi_pwm_set_clock(PWM_CLK_XTAL); // 设置时钟源为晶体时钟(40MHz,默认时钟源160MHz)
while (1)
{
// if (index == 1)
// { //表示非工作状态,让CPU睡眠等待
// usleep(1000);
// continue;
// }
for (size_t i = 0; i < sizeof(g_scoreNotes) / sizeof(g_scoreNotes[0]); i++)
{//音乐如何继续下去而不是重头开始
if (index2 == 1) { //表示非工作状态,让CPU睡眠等待
//