Bluetooth hc05 library

Dependents:   Nucleo_bt

Revision:
0:15a264bf1590
Child:
1:8d4296aafa55
diff -r 000000000000 -r 15a264bf1590 hc05.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hc05.cpp	Thu Aug 16 21:09:39 2018 +0000
@@ -0,0 +1,435 @@
+#include "mbed.h"
+#include "at.h"
+#include "hc05.h"
+
+
+void bt_modul_hc05::initUART(UART num, unsigned long baudrate, _IRQ interrupt)
+{
+    switch(num)  {
+        case UART1 :
+            at0.device_init(baudrate, interrupt);
+            t_interrupt = interrupt;
+            break;
+        case UART6 :
+            at1.device_init1(baudrate, interrupt);
+            t_interrupt1 = interrupt;
+            break;
+    }
+
+}
+
+char *bt_modul_hc05::get_version(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+VERSION?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+VERSION?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+}
+
+char *bt_modul_hc05::set_reset(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+RESET\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+RESET\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+}
+
+char *bt_modul_hc05::set_default_settings(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+ORGL\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+ORGL\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_address(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+ADDR?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(4);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+ADDR?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(4);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_name(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+NAME?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+NAME?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_device_name(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+RNAME?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+RNAME?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_role(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+ROLE?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+ROLE?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_device_class(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+CLASS?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+CLASS?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_giac(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+IAC?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+IAC?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_inquiry(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+INQM?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+INQM?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_pincode(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+PSWD?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(4);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+PSWD?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(4);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_uart(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+UART?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+UART?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_inqm(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+INQ?\r\n", "");
+
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+
+        case UART6 :
+            at1.at_send1("AT+INQ?\r\n", "");
+
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_init(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+INIT\r\n", "");
+
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(2);
+            } else  {
+                return at0.buffer;
+            }
+
+
+        case UART6 :
+            at1.at_send("AT+INIT\r\n", "");
+
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(2);
+            } else  {
+                return at1.buffer;
+            }
+
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_modul_state(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+STATE?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+STATE?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_addr_mode(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+CMODE?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+CMODE?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+char *bt_modul_hc05::get_fixed_addr(UART num)
+{
+    switch(num)  {
+        case UART1 :
+            at0.at_send("AT+BIND?\r\n", "");
+            if(t_interrupt == OFF)  {
+                return at0.getAnswer(3);
+            } else  {
+                return at0.buffer;
+            }
+
+        case UART6 :
+            at1.at_send1("AT+BIND?\r\n", "");
+            if(t_interrupt1 == OFF)  {
+                return at1.getAnswer(3);
+            } else  {
+                return at1.buffer;
+            }
+
+    }
+    return 0;
+
+}
+
+
+