![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
2019/0408
main.cpp@0:21b40f6bfff0, 2022-01-17 (annotated)
- Committer:
- jovanat
- Date:
- Mon Jan 17 16:01:28 2022 +0000
- Revision:
- 0:21b40f6bfff0
Jovana Trajkovic 2019/0408
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jovanat | 0:21b40f6bfff0 | 1 | |
jovanat | 0:21b40f6bfff0 | 2 | // Uvoz biblioteka |
jovanat | 0:21b40f6bfff0 | 3 | #include "mbed-os" |
jovanat | 0:21b40f6bfff0 | 4 | #include "platform/mbed_thread.h" |
jovanat | 0:21b40f6bfff0 | 5 | #include "MQTTClientMbedOs.h" |
jovanat | 0:21b40f6bfff0 | 6 | |
jovanat | 0:21b40f6bfff0 | 7 | // Definisanje direktiva |
jovanat | 0:21b40f6bfff0 | 8 | |
jovanat | 0:21b40f6bfff0 | 9 | #define VOLTAGE_SCALER 3.3f |
jovanat | 0:21b40f6bfff0 | 10 | #define YIELD_TIMEOUT_MS 1000 |
jovanat | 0:21b40f6bfff0 | 11 | #define MAX_HEIGHT 64 |
jovanat | 0:21b40f6bfff0 | 12 | #define MAX_WIDTH 128 |
jovanat | 0:21b40f6bfff0 | 13 | |
jovanat | 0:21b40f6bfff0 | 14 | // Deklaracija glavnih promenljivih |
jovanat | 0:21b40f6bfff0 | 15 | |
jovanat | 0:21b40f6bfff0 | 16 | TCPSOcket socket; |
jovanat | 0:21b40f6bfff0 | 17 | MQTTClient client(&socket); |
jovanat | 0:21b40f6bfff0 | 18 | MQTT::Message message; |
jovanat | 0:21b40f6bfff0 | 19 | |
jovanat | 0:21b40f6bfff0 | 20 | WiFiInterface *wifi; |
jovanat | 0:21b40f6bfff0 | 21 | WiFiAccessPoint *ap = new WiFiAccessPoint[count]; |
jovanat | 0:21b40f6bfff0 | 22 | |
jovanat | 0:21b40f6bfff0 | 23 | Adafruit_SSD1306_I2c myOled(i2c, rst, i2c_adress, height, width); |
jovanat | 0:21b40f6bfff0 | 24 | I2C i2c(PB_14, PB_13); |
jovanat | 0:21b40f6bfff0 | 25 | // Pisanje sporednih funkcija |
jovanat | 0:21b40f6bfff0 | 26 | |
jovanat | 0:21b40f6bfff0 | 27 | |
jovanat | 0:21b40f6bfff0 | 28 | |
jovanat | 0:21b40f6bfff0 | 29 | // Pisanje glavne funkcije |
jovanat | 0:21b40f6bfff0 | 30 | |
jovanat | 0:21b40f6bfff0 | 31 | int main() |
jovanat | 0:21b40f6bfff0 | 32 | { |
jovanat | 0:21b40f6bfff0 | 33 | while(1) |
jovanat | 0:21b40f6bfff0 | 34 | { |
jovanat | 0:21b40f6bfff0 | 35 | |
jovanat | 0:21b40f6bfff0 | 36 | wifi = WiFiInterface:;get_default_instance(); |
jovanat | 0:21b40f6bfff0 | 37 | |
jovanat | 0:21b40f6bfff0 | 38 | int count = wifi->scan(NULL, 0); |
jovanat | 0:21b40f6bfff0 | 39 | count wifi->scan(ap,count); |
jovanat | 0:21b40f6bfff0 | 40 | |
jovanat | 0:21b40f6bfff0 | 41 | wifi->connect(MBED_CONF_APP_SSID, MBED_CONF_APP_WIFI_PASSWORD, |
jovanat | 0:21b40f6bfff0 | 42 | NSAPI_SECURITY_WPA_WPA2); |
jovanat | 0:21b40f6bfff0 | 43 | |
jovanat | 0:21b40f6bfff0 | 44 | socket.open(wifi); |
jovanat | 0:21b40f6bfff0 | 45 | socket.connect(hostname, port); |
jovanat | 0:21b40f6bfff0 | 46 | |
jovanat | 0:21b40f6bfff0 | 47 | MQTTPacket_connectData = MQTT_Packet_connectData_initializer; |
jovanat | 0:21b40f6bfff0 | 48 | data.MQTTVersion = 3; |
jovanat | 0:21b40f6bfff0 | 49 | data.clientID.cstring = "custom_client_ID"; |
jovanat | 0:21b40f6bfff0 | 50 | client.connect((data)); |
jovanat | 0:21b40f6bfff0 | 51 | |
jovanat | 0:21b40f6bfff0 | 52 | client.subscribe(topic_sub, MQTT::QOS2, messageArrived)); |
jovanat | 0:21b40f6bfff0 | 53 | |
jovanat | 0:21b40f6bfff0 | 54 | char buf[100]; |
jovanat | 0:21b40f6bfff0 | 55 | sprintf(buf, "V(POT1) = %1.2f\r\n", pot1*VOLTAGE_SCALER); |
jovanat | 0:21b40f6bfff0 | 56 | |
jovanat | 0:21b40f6bfff0 | 57 | message.qos = MQTT::QOS0; |
jovanat | 0:21b40f6bfff0 | 58 | message.retained = false; |
jovanat | 0:21b40f6bfff0 | 59 | message.dup + false; |
jovanat | 0:21b40f6bfff0 | 60 | message.payload = (void*)buf; |
jovanat | 0:21b40f6bfff0 | 61 | message.payloadlen = strlen(buf)+1; |
jovanat | 0:21b40f6bfff0 | 62 | client.publish(topic, message); |
jovanat | 0:21b40f6bfff0 | 63 | |
jovanat | 0:21b40f6bfff0 | 64 | client.yield(YIELD_TIMEOUT_MS); |
jovanat | 0:21b40f6bfff0 | 65 | |
jovanat | 0:21b40f6bfff0 | 66 | |
jovanat | 0:21b40f6bfff0 | 67 | |
jovanat | 0:21b40f6bfff0 | 68 | } |
jovanat | 0:21b40f6bfff0 | 69 | |
jovanat | 0:21b40f6bfff0 | 70 | |
jovanat | 0:21b40f6bfff0 | 71 | } |