code slot
7 berichten
• Pagina 1 van 1
code slot
Ben nieuw hier ,
maar heb met knippen en plakken
3 voorbeeldbestandjes aan elkaar proberen te knopen.
De opzet is om via een Leonardo eth en een keypad een code te versturen naar een server , die vervolgens de code controleert en er zijn ding met doet.
So far so good
Dit alles blijkt te werken.
Maar ...
slechts 1x ,
nadien is er geen verbinding meer.
Kan iemand van jullie mij zeggen hoe ik mijn verbinding kan behouden of opnieuw maken.
Alvast bedankt voor jullie hulp.
Code :
cpp code
maar heb met knippen en plakken
3 voorbeeldbestandjes aan elkaar proberen te knopen.
De opzet is om via een Leonardo eth en een keypad een code te versturen naar een server , die vervolgens de code controleert en er zijn ding met doet.
So far so good
Dit alles blijkt te werken.
Maar ...
slechts 1x ,
nadien is er geen verbinding meer.
Kan iemand van jullie mij zeggen hoe ik mijn verbinding kan behouden of opnieuw maken.
Alvast bedankt voor jullie hulp.
Code :
cpp code
#include <SPI.h>
#include <Ethernet2.h>
#include <Keypad.h>
// mac adres Arduino Leonardo
byte mac[] = { 0x90, 0xA2, 0xDA, 0x10, 0x3C, 0x1A };
char server[] = "192.168.1.115"; // name address for Macbook-air
// Set the static IP address to use if the DHCP fails to assign
IPAddress ip(192, 168, 1, 116); // ip adres Arduino Leonardo
EthernetClient client;
const byte ROWS = 4 ;
const byte COLS = 3 ;
char keys[ROWS][COLS]={
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS]= {8,7,6,5};
byte colPins[COLS]= {4,3,2};
Keypad keypad=Keypad( makeKeymap(keys), rowPins, colPins , ROWS , COLS );
const byte numChars = 32;
char receivedChars[numChars]; // an array to store the received data
static byte ndx = 0;
boolean newData = false;
String stringOne ;
void setup() {
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
Ethernet.begin(mac, ip);
}
delay(1000);
Serial.println("connecting...");
if (client.connect(server, 80)) { //voor macbook
Serial.println("connected");
}
else {
Serial.println("connection failed");
}
}
void loop()
{
char endMarker = '#';
char rc;
rc = keypad.getKey();
if(rc != NO_KEY){
if (rc != endMarker) {
receivedChars[ndx] = rc;
ndx++;
if (ndx >= numChars) {
ndx = numChars - 1;
}
}
else {
receivedChars[ndx] = '\0'; // terminate the string
ndx = 0;
newData = true;
}
}
showNewData();
if (client.available()) {
char c = client.read();
Serial.print(c);
}
}
void showNewData() {
if (newData == true) {
Serial.print("Code : ");
Serial.println(receivedChars);
stringOne = String(receivedChars);
if (client.available()) { //voor macbook
Serial.println("connected");
}
else {
Serial.println("disconnected");
client.connect(server, 80);
Serial.println("connected");
delay(1000);
}
client.println("GET /fmi-test/test_r6.php?lang=" + stringOne + " HTTP/1.1");
client.println("Host: 192.168.1.116");
client.println();
newData = false;
}
}
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: code slot
Zal aan mij liggen maar ik dit al eerder gezien of op dit of het internationale forum.......
Re: code slot
Het is logischer om een aparte functie te maken die connect, dan de header en data verstuurt, en afsluit.
Dus niet de client.connect eenmalig in setup(), maar iedere keer.
client.connect to server
schrijf header met GET of POST
schrijf gegevens
kijk met client.available() en client.read() of de server iets terug te melden heeft
dan afsluiten met client.stop()
Dus niet de client.connect eenmalig in setup(), maar iedere keer.
client.connect to server
schrijf header met GET of POST
schrijf gegevens
kijk met client.available() en client.read() of de server iets terug te melden heeft
dan afsluiten met client.stop()
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: code slot
Was jij het nou die dit al eens eerder had geschreven? Of was het As op het internationale forum. Echt een deja vu gevoel
Re: code slot
Ik heb een droste effect deja vu gevoel
Hier schreef ik hetzelfde over connect binnen setup(): http://www.arduinoforum.nl/viewtopic.php?f=8&t=2393#p18149. Misschien zit ik simpel in elkaar en heb ik maar een paar quotes om te doen alsof ik er verstand van heb
Hier schreef ik hetzelfde over connect binnen setup(): http://www.arduinoforum.nl/viewtopic.php?f=8&t=2393#p18149. Misschien zit ik simpel in elkaar en heb ik maar een paar quotes om te doen alsof ik er verstand van heb
7 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 42 gasten