Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:3eda4839be5c, 2018-04-23 (annotated)
- Committer:
- angelocarrieri
- Date:
- Mon Apr 23 14:11:40 2018 +0000
- Revision:
- 0:3eda4839be5c
- Child:
- 1:7f5f80b47892
Comandi AT
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
angelocarrieri | 0:3eda4839be5c | 1 | |
angelocarrieri | 0:3eda4839be5c | 2 | #include "mbed.h" |
angelocarrieri | 0:3eda4839be5c | 3 | #include "string.h" |
angelocarrieri | 0:3eda4839be5c | 4 | #include "stdio.h" |
angelocarrieri | 0:3eda4839be5c | 5 | #include "stdlib.h" |
angelocarrieri | 0:3eda4839be5c | 6 | #include "Serial.h" |
angelocarrieri | 0:3eda4839be5c | 7 | #include "ATCmdParser.h" |
angelocarrieri | 0:3eda4839be5c | 8 | #include "UARTSerial.h" |
angelocarrieri | 0:3eda4839be5c | 9 | |
angelocarrieri | 0:3eda4839be5c | 10 | // Diumensione massima del vettore TxB e del vettore RxB |
angelocarrieri | 0:3eda4839be5c | 11 | #define TxBDIM 20 |
angelocarrieri | 0:3eda4839be5c | 12 | #define RxBDIM 20 |
angelocarrieri | 0:3eda4839be5c | 13 | |
angelocarrieri | 0:3eda4839be5c | 14 | // Numero dei byte da inviare allo SLAVE per l'accensione del led |
angelocarrieri | 0:3eda4839be5c | 15 | #define NumByte 16 |
angelocarrieri | 0:3eda4839be5c | 16 | |
angelocarrieri | 0:3eda4839be5c | 17 | // Configurazione della porta seriale del computer |
angelocarrieri | 0:3eda4839be5c | 18 | Serial pc(USBTX, USBRX); |
angelocarrieri | 0:3eda4839be5c | 19 | |
angelocarrieri | 0:3eda4839be5c | 20 | DigitalOut led(LED1); |
angelocarrieri | 0:3eda4839be5c | 21 | |
angelocarrieri | 0:3eda4839be5c | 22 | // Configurazione della porta UART |
angelocarrieri | 0:3eda4839be5c | 23 | // UARTSerial UART(PA_2,PA_3,9600); |
angelocarrieri | 0:3eda4839be5c | 24 | |
angelocarrieri | 0:3eda4839be5c | 25 | UARTSerial serial = UARTSerial(PA_2, PA_3); |
angelocarrieri | 0:3eda4839be5c | 26 | ATCmdParser at = ATCmdParser(&serial, "\r\n"); |
angelocarrieri | 0:3eda4839be5c | 27 | |
angelocarrieri | 0:3eda4839be5c | 28 | char buffer[100]; |
angelocarrieri | 0:3eda4839be5c | 29 | |
angelocarrieri | 0:3eda4839be5c | 30 | char TxB[TxBDIM]; |
angelocarrieri | 0:3eda4839be5c | 31 | char RxB[RxBDIM]; |
angelocarrieri | 0:3eda4839be5c | 32 | char x[10]; |
angelocarrieri | 0:3eda4839be5c | 33 | |
angelocarrieri | 0:3eda4839be5c | 34 | // Vettore che conterrà i byte da trasmettere al led |
angelocarrieri | 0:3eda4839be5c | 35 | // uint8_t VettoreLED[NumByte]; |
angelocarrieri | 0:3eda4839be5c | 36 | |
angelocarrieri | 0:3eda4839be5c | 37 | int i=0; |
angelocarrieri | 0:3eda4839be5c | 38 | int j=0; |
angelocarrieri | 0:3eda4839be5c | 39 | |
angelocarrieri | 0:3eda4839be5c | 40 | int TxSIZE; |
angelocarrieri | 0:3eda4839be5c | 41 | int RxSIZE; |
angelocarrieri | 0:3eda4839be5c | 42 | |
angelocarrieri | 0:3eda4839be5c | 43 | volatile char input; |
angelocarrieri | 0:3eda4839be5c | 44 | volatile bool bStop; |
angelocarrieri | 0:3eda4839be5c | 45 | |
angelocarrieri | 0:3eda4839be5c | 46 | |
angelocarrieri | 0:3eda4839be5c | 47 | int main() |
angelocarrieri | 0:3eda4839be5c | 48 | { |
angelocarrieri | 0:3eda4839be5c | 49 | pc.baud(9600); |
angelocarrieri | 0:3eda4839be5c | 50 | |
angelocarrieri | 0:3eda4839be5c | 51 | |
angelocarrieri | 0:3eda4839be5c | 52 | |
angelocarrieri | 0:3eda4839be5c | 53 | while(1) |
angelocarrieri | 0:3eda4839be5c | 54 | { |
angelocarrieri | 0:3eda4839be5c | 55 | if ((at.send("AT") && at.recv("OK"))==1) |
angelocarrieri | 0:3eda4839be5c | 56 | { |
angelocarrieri | 0:3eda4839be5c | 57 | printf("Rilevato"); |
angelocarrieri | 0:3eda4839be5c | 58 | led=1; |
angelocarrieri | 0:3eda4839be5c | 59 | } |
angelocarrieri | 0:3eda4839be5c | 60 | } |
angelocarrieri | 0:3eda4839be5c | 61 | /* at.send("AT\r\n"); |
angelocarrieri | 0:3eda4839be5c | 62 | |
angelocarrieri | 0:3eda4839be5c | 63 | if (at.recv("OK")==true) |
angelocarrieri | 0:3eda4839be5c | 64 | { |
angelocarrieri | 0:3eda4839be5c | 65 | printf("Rilevato"); |
angelocarrieri | 0:3eda4839be5c | 66 | } |
angelocarrieri | 0:3eda4839be5c | 67 | |
angelocarrieri | 0:3eda4839be5c | 68 | else |
angelocarrieri | 0:3eda4839be5c | 69 | { |
angelocarrieri | 0:3eda4839be5c | 70 | at.read(buffer,2); |
angelocarrieri | 0:3eda4839be5c | 71 | printf("\r\nRisposta:%c",*buffer); |
angelocarrieri | 0:3eda4839be5c | 72 | }*/ |
angelocarrieri | 0:3eda4839be5c | 73 | |
angelocarrieri | 0:3eda4839be5c | 74 | |
angelocarrieri | 0:3eda4839be5c | 75 | |
angelocarrieri | 0:3eda4839be5c | 76 | // reset vettore in trasmissione |
angelocarrieri | 0:3eda4839be5c | 77 | /* for(i=0;i<TxBDIM;i++) |
angelocarrieri | 0:3eda4839be5c | 78 | { |
angelocarrieri | 0:3eda4839be5c | 79 | TxB[i]='\0'; |
angelocarrieri | 0:3eda4839be5c | 80 | } |
angelocarrieri | 0:3eda4839be5c | 81 | |
angelocarrieri | 0:3eda4839be5c | 82 | // reset vettore in ricezione |
angelocarrieri | 0:3eda4839be5c | 83 | for(j=0;i<RxBDIM;j++) |
angelocarrieri | 0:3eda4839be5c | 84 | { |
angelocarrieri | 0:3eda4839be5c | 85 | RxB[i]='\0'; |
angelocarrieri | 0:3eda4839be5c | 86 | }*/ |
angelocarrieri | 0:3eda4839be5c | 87 | |
angelocarrieri | 0:3eda4839be5c | 88 | |
angelocarrieri | 0:3eda4839be5c | 89 | /* |
angelocarrieri | 0:3eda4839be5c | 90 | // Configurazione dei parametri della SPI |
angelocarrieri | 0:3eda4839be5c | 91 | SPI myspi(PA_7, PA_6, PA_5, NC); |
angelocarrieri | 0:3eda4839be5c | 92 | myspi.format(16, 0); |
angelocarrieri | 0:3eda4839be5c | 93 | myspi.frequency(3333333.3);*/ |
angelocarrieri | 0:3eda4839be5c | 94 | |
angelocarrieri | 0:3eda4839be5c | 95 | /* |
angelocarrieri | 0:3eda4839be5c | 96 | // Il primo led emette la luce verde |
angelocarrieri | 0:3eda4839be5c | 97 | for(i = 0; i <= 3; i++) |
angelocarrieri | 0:3eda4839be5c | 98 | VettoreLED[i]=136; |
angelocarrieri | 0:3eda4839be5c | 99 | |
angelocarrieri | 0:3eda4839be5c | 100 | for(i = 4; i <= 7; i++) |
angelocarrieri | 0:3eda4839be5c | 101 | VettoreLED[i]=136; |
angelocarrieri | 0:3eda4839be5c | 102 | |
angelocarrieri | 0:3eda4839be5c | 103 | for(i = 8; i <= 11; i++) |
angelocarrieri | 0:3eda4839be5c | 104 | VettoreLED[i]=136; |
angelocarrieri | 0:3eda4839be5c | 105 | |
angelocarrieri | 0:3eda4839be5c | 106 | for(i = 12; i <= NumByte-1; i++) |
angelocarrieri | 0:3eda4839be5c | 107 | VettoreLED[i]=136; |
angelocarrieri | 0:3eda4839be5c | 108 | |
angelocarrieri | 0:3eda4839be5c | 109 | // Ciclo per l'invio dei frame al primo led |
angelocarrieri | 0:3eda4839be5c | 110 | for(j = 0; j < NumByte; j++) |
angelocarrieri | 0:3eda4839be5c | 111 | myspi.write(VettoreLED[j]); */ |
angelocarrieri | 0:3eda4839be5c | 112 | |
angelocarrieri | 0:3eda4839be5c | 113 | |
angelocarrieri | 0:3eda4839be5c | 114 | /*if ((RxB[0]=='O') && (RxB[1]=='K')) |
angelocarrieri | 0:3eda4839be5c | 115 | for(j = 0; j < RxBDIM; j++) |
angelocarrieri | 0:3eda4839be5c | 116 | { |
angelocarrieri | 0:3eda4839be5c | 117 | if (RxB[j]==NULL) |
angelocarrieri | 0:3eda4839be5c | 118 | { |
angelocarrieri | 0:3eda4839be5c | 119 | L=1; |
angelocarrieri | 0:3eda4839be5c | 120 | } |
angelocarrieri | 0:3eda4839be5c | 121 | }*/ |
angelocarrieri | 0:3eda4839be5c | 122 | |
angelocarrieri | 0:3eda4839be5c | 123 | |
angelocarrieri | 0:3eda4839be5c | 124 | |
angelocarrieri | 0:3eda4839be5c | 125 | |
angelocarrieri | 0:3eda4839be5c | 126 | |
angelocarrieri | 0:3eda4839be5c | 127 | } |
angelocarrieri | 0:3eda4839be5c | 128 | |
angelocarrieri | 0:3eda4839be5c | 129 | |
angelocarrieri | 0:3eda4839be5c | 130 | |
angelocarrieri | 0:3eda4839be5c | 131 | |
angelocarrieri | 0:3eda4839be5c | 132 | |
angelocarrieri | 0:3eda4839be5c | 133 | |
angelocarrieri | 0:3eda4839be5c | 134 | |
angelocarrieri | 0:3eda4839be5c | 135 | |
angelocarrieri | 0:3eda4839be5c | 136 | |
angelocarrieri | 0:3eda4839be5c | 137 | |
angelocarrieri | 0:3eda4839be5c | 138 | |
angelocarrieri | 0:3eda4839be5c | 139 | |
angelocarrieri | 0:3eda4839be5c | 140 | |
angelocarrieri | 0:3eda4839be5c | 141 | |
angelocarrieri | 0:3eda4839be5c | 142 | |
angelocarrieri | 0:3eda4839be5c | 143 | |
angelocarrieri | 0:3eda4839be5c | 144 | |
angelocarrieri | 0:3eda4839be5c | 145 | |
angelocarrieri | 0:3eda4839be5c | 146 | |
angelocarrieri | 0:3eda4839be5c | 147 | |
angelocarrieri | 0:3eda4839be5c | 148 | |
angelocarrieri | 0:3eda4839be5c | 149 | |
angelocarrieri | 0:3eda4839be5c | 150 | |
angelocarrieri | 0:3eda4839be5c | 151 | |
angelocarrieri | 0:3eda4839be5c | 152 | |
angelocarrieri | 0:3eda4839be5c | 153 | |
angelocarrieri | 0:3eda4839be5c | 154 | |
angelocarrieri | 0:3eda4839be5c | 155 | |
angelocarrieri | 0:3eda4839be5c | 156 | |
angelocarrieri | 0:3eda4839be5c | 157 | |
angelocarrieri | 0:3eda4839be5c | 158 | |
angelocarrieri | 0:3eda4839be5c | 159 | |
angelocarrieri | 0:3eda4839be5c | 160 | |
angelocarrieri | 0:3eda4839be5c | 161 | |
angelocarrieri | 0:3eda4839be5c | 162 | |
angelocarrieri | 0:3eda4839be5c | 163 | |
angelocarrieri | 0:3eda4839be5c | 164 | |
angelocarrieri | 0:3eda4839be5c | 165 | |
angelocarrieri | 0:3eda4839be5c | 166 | |
angelocarrieri | 0:3eda4839be5c | 167 | |
angelocarrieri | 0:3eda4839be5c | 168 | |
angelocarrieri | 0:3eda4839be5c | 169 | |
angelocarrieri | 0:3eda4839be5c | 170 | |
angelocarrieri | 0:3eda4839be5c | 171 | |
angelocarrieri | 0:3eda4839be5c | 172 | |
angelocarrieri | 0:3eda4839be5c | 173 | |
angelocarrieri | 0:3eda4839be5c | 174 | |
angelocarrieri | 0:3eda4839be5c | 175 | |
angelocarrieri | 0:3eda4839be5c | 176 | |
angelocarrieri | 0:3eda4839be5c | 177 | |
angelocarrieri | 0:3eda4839be5c | 178 | |
angelocarrieri | 0:3eda4839be5c | 179 | |
angelocarrieri | 0:3eda4839be5c | 180 | |
angelocarrieri | 0:3eda4839be5c | 181 | |
angelocarrieri | 0:3eda4839be5c | 182 | |
angelocarrieri | 0:3eda4839be5c | 183 | |
angelocarrieri | 0:3eda4839be5c | 184 | |
angelocarrieri | 0:3eda4839be5c | 185 | |
angelocarrieri | 0:3eda4839be5c | 186 | |
angelocarrieri | 0:3eda4839be5c | 187 | |
angelocarrieri | 0:3eda4839be5c | 188 | |
angelocarrieri | 0:3eda4839be5c | 189 | |
angelocarrieri | 0:3eda4839be5c | 190 | |
angelocarrieri | 0:3eda4839be5c | 191 | |
angelocarrieri | 0:3eda4839be5c | 192 |