From 18875a1558d264107169815e96b4a929279e975b Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Wed, 30 Jan 2019 17:11:43 +0800
Subject: [PATCH] Add relay source code
---
modules/c/relay.c | 63 +++++++++++++++++++++++++++++++
modules/c/relay.h | 29 ++++++++++++++
2 files changed, 92 insertions(+), 0 deletions(-)
diff --git a/modules/c/relay.c b/modules/c/relay.c
new file mode 100644
index 0000000..3e360b7
--- /dev/null
+++ b/modules/c/relay.c
@@ -0,0 +1,63 @@
+/*********************************************************************************
+ * Copyright: (C) 2019 LingYun IoT System Studio
+ * All rights reserved.
+ *
+ * Filename: relay.c
+ * Description: This file
+ *
+ * Version: 1.0.0(30/01/19)
+ * Author: Guo Wenxue <guowenxue@gmail.com>
+ * ChangeLog: 1, Release initial version on "30/01/19 08:44:30"
+ *
+ ********************************************************************************/
+
+#include <stdio.h>
+#include <unistd.h>
+#include <libgen.h>
+
+#include <string.h>
+
+#include <wiringPi.h>
+#include "relay.h"
+
+int main (int argc, char **argv)
+{
+ if( argc != 2 )
+ {
+ printf("Usage: %s [on/off]\n", basename(argv[0]));
+ return -1;
+ }
+
+ wiringPiSetup();
+ relay_init();
+
+ if( !strstr(argv[1], "on") || !strstr(argv[1], "on") )
+ {
+ turn_relay(ON);
+ }
+ else if( !strstr(argv[1], "off") || !strstr(argv[1], "off") )
+ {
+ turn_relay(OFF);
+ }
+
+ return 0;
+}
+
+void relay_init(void)
+{
+ pinMode(RELAY_PIN, OUTPUT);
+}
+
+
+void turn_relay(int cmd)
+{
+ if( OFF == cmd )
+ {
+ digitalWrite ( RELAY_PIN, HIGH );
+ }
+ else
+ {
+ digitalWrite ( RELAY_PIN, LOW );
+ }
+}
+
diff --git a/modules/c/relay.h b/modules/c/relay.h
new file mode 100644
index 0000000..af47779
--- /dev/null
+++ b/modules/c/relay.h
@@ -0,0 +1,29 @@
+/********************************************************************************
+ * Copyright: (C) 2019 LingYun IoT System Studio
+ * All rights reserved.
+ *
+ * Filename: relay.h
+ * Description: This head file
+ *
+ * Version: 1.0.0(30/01/19)
+ * Author: Guo Wenxue <guowenxue@gmail.com>
+ * ChangeLog: 1, Release initial version on "30/01/19 08:49:31"
+ *
+ ********************************************************************************/
+
+#ifndef _RELAY_H_
+#define _RELAY_H_
+
+#ifndef ON
+#define ON 1
+#define OFF 0
+#endif
+
+/* I/O Pin connected to PIN#18, BCM code pin number is 24 and wPi pin number is 5 */
+#define RELAY_PIN 5
+
+void relay_init(void);
+void turn_relay(int cmd);
+
+#endif /* ----- #ifndef _RELAY_H_ ----- */
+
--
Gitblit v1.9.1