Siren
/
SIREN_MODULE
Programma Siren
main.cpp@0:2bd507b775d3, 2018-04-06 (annotated)
- Committer:
- Wonderjack996
- Date:
- Fri Apr 06 10:57:42 2018 +0000
- Revision:
- 0:2bd507b775d3
Programma Siren
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Wonderjack996 | 0:2bd507b775d3 | 1 | #include "mbed.h" |
Wonderjack996 | 0:2bd507b775d3 | 2 | #include "TCPSocket.h" |
Wonderjack996 | 0:2bd507b775d3 | 3 | #include "EthernetInterface.h" |
Wonderjack996 | 0:2bd507b775d3 | 4 | |
Wonderjack996 | 0:2bd507b775d3 | 5 | #define MY_DEFAULT_IP_ADDR "10.51.23." |
Wonderjack996 | 0:2bd507b775d3 | 6 | #define MY_DEFAULT_MASK "255.255.255.0" |
Wonderjack996 | 0:2bd507b775d3 | 7 | #define MY_DEFAULT_GATEWAY "10.51.23.254" |
Wonderjack996 | 0:2bd507b775d3 | 8 | |
Wonderjack996 | 0:2bd507b775d3 | 9 | #define MESSAGE_RUN "RUN" |
Wonderjack996 | 0:2bd507b775d3 | 10 | #define MESSAGE_IDLE "IDLE" |
Wonderjack996 | 0:2bd507b775d3 | 11 | |
Wonderjack996 | 0:2bd507b775d3 | 12 | //new server windows 2012 ctosw00014.cto.st.com |
Wonderjack996 | 0:2bd507b775d3 | 13 | #define SIREN_SERVER_NAME "10.51.37.30" |
Wonderjack996 | 0:2bd507b775d3 | 14 | #define SIREN_SERVER_PORT 8897 |
Wonderjack996 | 0:2bd507b775d3 | 15 | |
Wonderjack996 | 0:2bd507b775d3 | 16 | #define LWIP_ICMP 1 |
Wonderjack996 | 0:2bd507b775d3 | 17 | #define MEMP_NUM_SYS_TIMEOUT 16 |
Wonderjack996 | 0:2bd507b775d3 | 18 | |
Wonderjack996 | 0:2bd507b775d3 | 19 | #if defined(TARGET_ARCH_MAX) |
Wonderjack996 | 0:2bd507b775d3 | 20 | #define CHECKSUM_GEN_ICMP 0 |
Wonderjack996 | 0:2bd507b775d3 | 21 | #endif |
Wonderjack996 | 0:2bd507b775d3 | 22 | |
Wonderjack996 | 0:2bd507b775d3 | 23 | #if !CHECKSUM_GEN_ICMP |
Wonderjack996 | 0:2bd507b775d3 | 24 | iecho->chksum = 0; |
Wonderjack996 | 0:2bd507b775d3 | 25 | #endif |
Wonderjack996 | 0:2bd507b775d3 | 26 | |
Wonderjack996 | 0:2bd507b775d3 | 27 | DigitalIn bit0(D9); |
Wonderjack996 | 0:2bd507b775d3 | 28 | DigitalIn bit1(D8); |
Wonderjack996 | 0:2bd507b775d3 | 29 | DigitalIn bit2(D7); |
Wonderjack996 | 0:2bd507b775d3 | 30 | DigitalIn bit3(D6); |
Wonderjack996 | 0:2bd507b775d3 | 31 | DigitalIn bit4(D5); |
Wonderjack996 | 0:2bd507b775d3 | 32 | DigitalIn bit5(D4); |
Wonderjack996 | 0:2bd507b775d3 | 33 | DigitalIn bit6(D3); |
Wonderjack996 | 0:2bd507b775d3 | 34 | DigitalIn bit7(D2); |
Wonderjack996 | 0:2bd507b775d3 | 35 | |
Wonderjack996 | 0:2bd507b775d3 | 36 | DigitalIn configurazione_rele(PB_11); //NO - 1, NC - 0 |
Wonderjack996 | 0:2bd507b775d3 | 37 | DigitalIn rele_ventola(PB_10); |
Wonderjack996 | 0:2bd507b775d3 | 38 | DigitalIn semaforo_1(PE_10); |
Wonderjack996 | 0:2bd507b775d3 | 39 | DigitalIn semaforo_2(PE_12); |
Wonderjack996 | 0:2bd507b775d3 | 40 | DigitalIn semaforo_3(PE_14); |
Wonderjack996 | 0:2bd507b775d3 | 41 | DigitalIn semaforo_4(PE_15); |
Wonderjack996 | 0:2bd507b775d3 | 42 | DigitalIn alimentazione(PE_7); |
Wonderjack996 | 0:2bd507b775d3 | 43 | |
Wonderjack996 | 0:2bd507b775d3 | 44 | EthernetInterface eth; |
Wonderjack996 | 0:2bd507b775d3 | 45 | TCPSocket socket; |
Wonderjack996 | 0:2bd507b775d3 | 46 | |
Wonderjack996 | 0:2bd507b775d3 | 47 | int main() |
Wonderjack996 | 0:2bd507b775d3 | 48 | { |
Wonderjack996 | 0:2bd507b775d3 | 49 | char ip_scheda[100]; |
Wonderjack996 | 0:2bd507b775d3 | 50 | int val = (1*bit0.read())+(2*bit1.read())+(4*bit2.read())+(8*bit3.read())+(16*bit4.read())+(32*bit5.read())+(64*bit6.read())+(128*bit7.read()); |
Wonderjack996 | 0:2bd507b775d3 | 51 | sprintf(ip_scheda, "%s%d",MY_DEFAULT_IP_ADDR,val); |
Wonderjack996 | 0:2bd507b775d3 | 52 | |
Wonderjack996 | 0:2bd507b775d3 | 53 | eth.set_network(ip_scheda, MY_DEFAULT_MASK, MY_DEFAULT_GATEWAY); |
Wonderjack996 | 0:2bd507b775d3 | 54 | eth.connect(); |
Wonderjack996 | 0:2bd507b775d3 | 55 | const char *ip = eth.get_ip_address(); |
Wonderjack996 | 0:2bd507b775d3 | 56 | printf("IP address is: %s\n\r", ip ? ip : "No IP"); |
Wonderjack996 | 0:2bd507b775d3 | 57 | |
Wonderjack996 | 0:2bd507b775d3 | 58 | while(true) |
Wonderjack996 | 0:2bd507b775d3 | 59 | printf("valore: %d\n\r", rele_ventola.read()); |
Wonderjack996 | 0:2bd507b775d3 | 60 | |
Wonderjack996 | 0:2bd507b775d3 | 61 | // Open a socket on the network interface, and create a TCP connection to mbed.org |
Wonderjack996 | 0:2bd507b775d3 | 62 | socket.open(ð); |
Wonderjack996 | 0:2bd507b775d3 | 63 | socket.connect(SIREN_SERVER_NAME, SIREN_SERVER_PORT); |
Wonderjack996 | 0:2bd507b775d3 | 64 | |
Wonderjack996 | 0:2bd507b775d3 | 65 | // Send a simple http request |
Wonderjack996 | 0:2bd507b775d3 | 66 | char sbuffer[] = "alarm"; |
Wonderjack996 | 0:2bd507b775d3 | 67 | int scount = socket.send(sbuffer, sizeof sbuffer); |
Wonderjack996 | 0:2bd507b775d3 | 68 | printf("sent %d [%.*s]\r\n", scount, strstr(sbuffer, "\r\n")-sbuffer, sbuffer); |
Wonderjack996 | 0:2bd507b775d3 | 69 | |
Wonderjack996 | 0:2bd507b775d3 | 70 | // Close the socket to return its memory and bring down the network interface |
Wonderjack996 | 0:2bd507b775d3 | 71 | socket.close(); |
Wonderjack996 | 0:2bd507b775d3 | 72 | eth.disconnect(); |
Wonderjack996 | 0:2bd507b775d3 | 73 | |
Wonderjack996 | 0:2bd507b775d3 | 74 | printf("Done\n"); |
Wonderjack996 | 0:2bd507b775d3 | 75 | } |
Wonderjack996 | 0:2bd507b775d3 | 76 |