-
Notifications
You must be signed in to change notification settings - Fork 1
/
sirc_encode.h
131 lines (102 loc) · 3.17 KB
/
sirc_encode.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/**
******************************************************************************
* @file sirc_encode.h
* @author MCD Application Team
* @version V1.0.1
* @date 29-May-2012
* @brief This file contains all the functions prototypes for the sirc encode
* firmware library.
******************************************************************************
* @attention
*
* <h2><center>© COPYRIGHT 2012 STMicroelectronics</center></h2>
*
* Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __SIRC_ENCODE_H
#define __SIRC_ENCODE_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "stm32f0xx.h"
/** @addtogroup STM320518_EVAL_Demo
* @{
*/
/** @addtogroup SIRC_ENCODE
* @{
*/
/** @defgroup SIRC_ENCODE_Exported_Types
* @{
*/
/* to avoid collusion, this value can be updated for thin adjust*/
#define SIRC12_COLLUSION_AVOID_AJUST ((uint8_t)0)
/**
* @brief Definition of the SIRC12 devices adresses.
*/
typedef enum
{
SIRC12_Address_0 = ((uint8_t)0)
}SIRC12_Address_TypeDef;
/**
* @brief Definition of the SIRC12 devices instructions.
*/
typedef enum
{
/* Device general Instruction Code*/
SIRC12_Instruction_0 = ((uint8_t)0)
}SIRC12_Instruction_TypeDef;
/**
* @}
*/
/** @defgroup SIRC_ENCODE_Exported_Constants
* @{
*/
/* Asserts Definition */
#define SIRC12_ADDRESS_LIMIT ((uint8_t ) 0x1F) /* Address limit definition*/
#define SIRC12_INSTRUCTION_LIMIT ((uint8_t ) 0x7F) /* Data limit definition*/
#define IS_SIRC12_ADDRESS_IN_RANGE(ADDRESS) ((ADDRESS) <= SIRC12_ADDRESS_LIMIT )
#define IS_SIRC12_INSTRUCTION_IN_RANGE(INSTRUCTION) ((INSTRUCTION) <= SIRC12_INSTRUCTION_LIMIT )
/**
* @}
*/
/** @defgroup SIRC_ENCODE_Exported_Macros
* @{
*/
/**
* @}
*/
/** @addtogroup SIRC_Exported_Functions
* @{
*/
void Menu_SIRC12_Encode_Func(void);
void SIRC12_Encode_Init(void);
void SIRC12_Encode_SendFrame(uint8_t SIRC12_Address, uint8_t SIRC12_Instruction);
void SIRC12_Encode_SignalGenerate(uint32_t SIRC12_FramePulseWidthFormat[]);
#ifdef __cplusplus
}
#endif
#endif /*__SIRC_ENCODE_H */
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/