系统状态SDK
硬件接口
接口说明
设备共提供6个LED灯,其中LED1、LED2为电源指示灯,不可操控,LED3~LED6为可控指示灯,同时设备提供了一个蜂鸣器。
API说明
请您确保已经将SDK引入到项目中,SDK的相关引入可参考SDK安装章节。
SDK中封装了基础的端口操作,开发人员可以通过相关API快速的控制LED的点亮、熄灭。
使用LED、蜂鸣器相关操作函数,需要引用 sys_state.h
头文件。
sys_state_init
功能
初始化
函数原型
返回值
- 成功:1
- 失败:
- 初始化失败:-1
- 授权校验失败:-2
light_set
功能
LED控制
函数原型
/**
* @brief LED控制
*
* @note LED1~2为设备电源指示灯,无法控制,LED3~6可以进行控制,LED5默认启动后会间隔1秒闪烁,
* 如果此LED有显示意义,应当设置程序随系统启动后执行对应的控制
*
* @param[in] ch LED序号,3~6
* @param[in] value LED状态
* - 0: 熄灭
* - 1: 点亮
*
* @return
* - 1: 成功
* - -1: 失败
*
*/
int light_set(int ch, int value);
参数
参数名 | 类型 | 说明 |
---|---|---|
ch | int | LED灯序号3~6 |
value | int | 0:熄灭1:点亮 |
返回值
- 成功:1
- 失败:-1
beep
功能
蜂鸣器控制
函数原型
/**
* @brief 蜂鸣器控制
*
*
* @param[in] ms 持续发声时间
* - 0: 蜂鸣静音
* - >0: 蜂鸣持续毫秒时间
* - -1: 蜂鸣永久持续
*
* @return
* - 1: 成功
* - -1: 失败
*
*/
int beep(int ms);
参数
参数名 | 类型 | 说明 |
---|---|---|
ms | int | 持续发声时间 0:蜂鸣静音 >0:蜂鸣持续毫秒时间 -1:蜂鸣永久持续 |
返回值
- 成功:1
- 失败:-1
示列代码
以下以点亮熄灭LED灯、蜂鸣器短时发声为例,进行相关API操作的说明
#include "sys_state.h"
#include <stdio.h>
#include <unistd.h>
int main()
{
// 初始化系统状态
sys_state_init();
printf("Testing LED...\n");
// 点亮LED 3~6
light_set(3, 1);
light_set(4, 1);
light_set(5, 1);
light_set(6, 1);
// 休眠2秒
sleep(2);
// 熄灭LED 3~6
light_set(3, 0);
light_set(4, 0);
light_set(5, 0);
light_set(6, 0);
// 休眠2秒
sleep(2);
// 测试蜂鸣器
printf("Testing Buzzer...\n");
// 蜂鸣器响 500 毫秒
beep(500);
// 休眠 1 秒
sleep(1);
printf("Test completed.\n");
return 0;
}