84 lines
2.9 KiB
C
84 lines
2.9 KiB
C
/* USER CODE BEGIN Header */
|
|
/**
|
|
******************************************************************************
|
|
* @file rf_device.h *
|
|
* @author Yunhorn (r) Technology Limited Application Team *
|
|
* @brief Yunhorn (r) SmarToilets (r) Product configuration file. *
|
|
******************************************************************************
|
|
* @attention
|
|
*
|
|
* Copyright (c) 2022 Yunhorn Technology Limited.
|
|
* Copyright (c) 2022 Shenzhen Yunhorn Technology Co., Ltd.
|
|
* All rights reserved.
|
|
*
|
|
* This software is licensed under terms that can be found in the LICENSE file
|
|
* in the root directory of this software component.
|
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
|
*
|
|
******************************************************************************
|
|
*/
|
|
/* USER CODE END Header */
|
|
|
|
#ifndef RF_DEVICE_H
|
|
#define RF_DEVICE_H
|
|
|
|
#include <stdint.h>
|
|
/**
|
|
* @brief HXD 芯片电源启动IO
|
|
*
|
|
*/
|
|
#define HXD039B2_POWER_CTRL_GPIO 3 // 芯片使能IO
|
|
/**
|
|
* @brief 判忙IO ,低电平时处于学习状态,其他时间为高电平
|
|
*
|
|
*/
|
|
#define HXD039B2_BUSY_GPIO 1
|
|
/**
|
|
* @brief HXD 芯片启动时间
|
|
*
|
|
*/
|
|
#define HXD_039B2_START_TIME_MS 70
|
|
/**
|
|
* @brief 长时间无操作电源关闭,时长定义
|
|
*
|
|
*/
|
|
#define HXD_039B2_POWER_OFF_TIMEOUT_MS 2000
|
|
typedef enum
|
|
{
|
|
RF_CODE_BYTE_HANDLE = 0X30,
|
|
RF_CODE_BYTE_DEV_TYPE = 0X06,
|
|
RF_CODE_BYTE_DEV_OFF = 0X80,
|
|
RF_CODE_BYTE_DEV_ON,
|
|
RF_CODE_BYTE_DEV_MODE_AUTO = 0XA1,
|
|
RF_CODE_BYTE_DEV_MODE_COOL,
|
|
RF_CODE_BYTE_DEV_MODE_DRY,
|
|
RF_CODE_BYTE_DEV_MODE_FAN_ONLY,
|
|
RF_CODE_BYTE_DEV_MODE_HEAT,
|
|
RF_CODE_BYTE_DEV_FAN_MODE_AUTO = 0X51,
|
|
RF_CODE_BYTE_DEV_FAN_MODE_LOW,
|
|
RF_CODE_BYTE_DEV_FAN_MODE_MEDIUM,
|
|
RF_CODE_BYTE_DEV_FAN_MODE_HIGH,
|
|
RF_CODE_BYTE_DEV_TREND_UP = 0X61, // 风向向上
|
|
RF_CODE_BYTE_DEV_TREND_MEDIUM, // 中间风向
|
|
RF_CODE_BYTE_DEV_TREND_DOWN, // 风向向下
|
|
RF_CODE_BYTE_DEV_TREND_AUTO_ON = 0X70, // 打开自动风向
|
|
RF_CODE_BYTE_DEV_TREND_AUTO_OFF, // 关闭自动风向
|
|
RF_CODE_BYTE_DEV_LIGHT_ON = 0XD0, // 打开灯光
|
|
RF_CODE_BYTE_DEV_LIGHT_OFF, // 关闭灯光
|
|
} rf_code_byte_t;
|
|
|
|
void rf_device_init(void);
|
|
void rf_device_get_service_period(uint8_t *service_periods);
|
|
void rf_device_set_service_period(uint8_t *service_periods, uint8_t length);
|
|
void rf_device_within_service_period_verify(uint8_t *in_service_period);
|
|
void rf_device_get_humidity(int *humidity);
|
|
void rf_code_set_slides(uint8_t slide_id);
|
|
void rf_codec_start_learn(void);
|
|
void rf_codec_set_power(uint8_t power_state);
|
|
void rf_codec_set_mode(uint8_t mode);
|
|
void rf_codec_set_show_seconds(uint8_t show_sec);
|
|
void hxd_039b_uart_recv_cb(unsigned char uart_data);
|
|
void hxd_039b2_save_ac_codeGrud(unsigned char *ac_codeGrud, int size_len);
|
|
int hxd_039b2_get_ac_codeGrud(unsigned char *ac_codeGrud);
|
|
#endif
|