RCWL0516微波雷達傳感器(基於傳感器管理組件)


傳感器簡介

RCWL0516傳感器是一款采用多普勒雷達技術、專門檢測物體移動的微波感應模塊。該模塊具有靈敏度高、感應距離遠、可靠性強、感應角度大、供電范圍廣等特點。廣泛應用於各種人體感應照明和防盜報警等場合。

RCWL_0516.c

 1 /**
 2  * @file RCWL_0516.c
 3  * @brief
 4  * @version 0.1
 5  * @date 2019-06-28
 6  *
 7  * @copyright Copyright (c) 2019  Chipintelli Technology Co., Ltd.
 8  *
 9  */
10 /*-----------------------------------------------------------------------------
11                             include
12 -----------------------------------------------------------------------------*/
13 #include "ci110x_gpio.h"
14 #include "ci110x_scu.h"
15 #include "ci110x_uart.h"
16 #include "ci_misc.h"
17 #include "ci_sensor.h"
18 
19 /*-----------------------------------------------------------------------------
20                             define
21 -----------------------------------------------------------------------------*/
22 #define RCWL_GPIO_GROUP    (GPIO0)/*!< GPIO組 */
23 #define RCWL_GPIO_PIN      (gpio_pin_2)/*!< GPIO pin腳 */
24 #define RCWL_GPIO_PAD      (UART1_RX_PAD)/*!< GPIO對應PAD */
25 #define RCWL_GPIO_IRQ      (GPIO0_IRQn)/*!< GPIO中斷 */
26 
27 /*-----------------------------------------------------------------------------
28                             extern
29 -----------------------------------------------------------------------------*/
30 
31 /*-----------------------------------------------------------------------------
32                         struct / enum / union
33 -----------------------------------------------------------------------------*/
34 
35 /*-----------------------------------------------------------------------------
36                             global
37 -----------------------------------------------------------------------------*/
38 
39 /*-----------------------------------------------------------------------------
40                             declare
41 -----------------------------------------------------------------------------*/
42 
43 /*-----------------------------------------------------------------------------
44                             function
45 -----------------------------------------------------------------------------*/
46 /**
47  * @brief 初始化 rcwl-0516
48  *
49  * @param irq_callback 中斷回調
50  * @retval RETURN_OK
51  * @retval RETURN_ERR
52  */
53 int32_t rcwl0516_open(void)
54 {
55     NVIC_EnableIRQ(RCWL_GPIO_IRQ);
56     Scu_SetIOReuse(RCWL_GPIO_PAD,FIRST_FUNCTION);
57     Scu_SetDeviceGate((unsigned int)RCWL_GPIO_GROUP,ENABLE);
58     Scu_Setdevice_Reset((unsigned int)RCWL_GPIO_GROUP);
59     Scu_Setdevice_ResetRelease((unsigned int)RCWL_GPIO_GROUP);
60     gpio_irq_trigger_config(RCWL_GPIO_GROUP,RCWL_GPIO_PIN,up_edges_trigger);
61     return RETURN_OK;
62 }
63 
64 /**
65  * @brief 中斷回調函數
66  *
67  */
68 void rcwl0516_callback(void)
69 {
70     sensor_irq_inform(SENSOR_TYPE_MICROWAVE);
71 }
72 
73 /**
74  * @brief rcwl-0516 ops
75  *
76  */
77 sensor_ops_t rcwl0516_ops =
78 {
79         rcwl0516_open,
80 };
81 
82 /*-----------------------------------------------------------------------------
83                             end of the file
84 -----------------------------------------------------------------------------*/

RCWL_0516.h

 1 /**
 2  * @file RCWL0516.h
 3  * @brief RCWL0516傳感器的頭文件
 4  * @version 0.1
 5  * @date 2019-07-02
 6  *
 7  * @copyright Copyright (c) 2019  Chipintelli Technology Co., Ltd.
 8  *
 9  */
10 
11 #ifndef __RCWL0516_H__
12 #define __RCWL0516_H__
13 
14 /**
15  * @ingroup third_device_driver
16  * @defgroup RCWL0516
17  * @brief RCWL0516傳感器驅動
18  * @{
19  */
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 /*-----------------------------------------------------------------------------
26                             include
27 -----------------------------------------------------------------------------*/
28 
29 /*-----------------------------------------------------------------------------
30                             define
31 -----------------------------------------------------------------------------*/
32 
33 /*-----------------------------------------------------------------------------
34                             extern
35 -----------------------------------------------------------------------------*/
36 extern sensor_ops_t rcwl0516_ops;
37 
38 /*-----------------------------------------------------------------------------
39                         struct / enum / union
40 -----------------------------------------------------------------------------*/
41 
42 /*-----------------------------------------------------------------------------
43                             global
44 -----------------------------------------------------------------------------*/
45 
46 /*-----------------------------------------------------------------------------
47                         function declare
48 -----------------------------------------------------------------------------*/
49 
50 #ifdef __cplusplus
51 }
52 #endif
53 
54 /**
55  * @}
56  */
57 
58 #endif
59 
60 /*-----------------------------------------------------------------------------
61                             end of the file
62 -----------------------------------------------------------------------------*/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM