From 4deb51ffc4dd4588183aed82bd7877909ba2130e Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Wed, 31 Jul 2019 11:19:22 +0800
Subject: [PATCH] update mqtt configure file, support breakin detect support
---
mqttd/hal/hal.c | 29 ++++++++++++++++++++++++++---
1 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/mqttd/hal/hal.c b/mqttd/hal/hal.c
index 94dd8dc..4840944 100644
--- a/mqttd/hal/hal.c
+++ b/mqttd/hal/hal.c
@@ -16,9 +16,12 @@
/* LED_R LED_G LED_B */
static int led_pin[LED_MAX] = { 0,0,0 };
static int relay_pin = 0;
+static int beep_pin = 0;
+static int infrared_pin = 0;
void init_relay(int pin);
void init_led(int redpin, int greenpin, int bluepin);
+void init_beep(int pin);
int hal_init(hwconf_t *hwconf)
{
@@ -31,10 +34,16 @@
wiringPiSetup();
if( hwconf->leds )
- init_led(hwconf->redled, hwconf->greenled, hwconf->blueled);
+ init_led(hwconf->red_pin, hwconf->green_pin, hwconf->blue_pin);
- if(hwconf->relay)
- init_relay(hwconf->relay);
+ if( hwconf->relay_pin )
+ init_relay(hwconf->relay_pin);
+
+ if( hwconf->beep_pin )
+ init_beep(hwconf->beep_pin);
+
+ if( hwconf->infrared_pin && hwconf->ifrd_handler )
+ init_infrared(hwconf->infrared_pin, INT_EDGE_RISING, hwconf->ifrd_handler);
if( hwconf->sht2x && sht2x_init() < 0 )
{
@@ -86,6 +95,20 @@
pinMode(relay_pin, OUTPUT);
}
+void init_beep(int pin)
+{
+ beep_pin = pin;
+ //pinMode(relay_pin, OUTPUT);
+}
+
+void init_infrared(int pin, int irq_type, void (*handler)(void))
+{
+ pinMode(pin, INPUT);
+
+ delay(100);
+
+ wiringPiISR(pin, irq_type, handler);
+}
void turn_relay(int cmd)
{
--
Gitblit v1.9.1