Twitter.h Anpassung an ESP
hallo
ich bin verzweifeln,
ich habe versucht die twitter.h den esp anzupassen. hier die neue twitter.h
mit folgenden sketch wollte ich einen tweet versenden
ich bekomme dann folgende fehlermeldung: es sieht aus als würde die neue twitter.h nicht richtig eingebunden?
arduino: 1.6.9 (windows 7), board: "generic esp8266 module, 80 mhz, 40mhz, dio, 115200, 512k (64k spiffs), ck, disabled, none"
sketch\esp_twitter_test.ino.cpp.o:(.text.setup+0x2c): undefined reference `twitter::post(char const*)'
sketch\esp_twitter_test.ino.cpp.o:(.text.setup+0x30): undefined reference `twitter::wait(print*)'
sketch\esp_twitter_test.ino.cpp.o: in function `setup':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:28: undefined reference `twitter::post(char const*)'
sketch\esp_twitter_test.ino.cpp.o: in function `hardwareserial::begin(unsigned long)':
c:\users\mb\appdata\local\arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/hardwareserial.h:75: undefined reference `twitter::wait(print*)'
sketch\esp_twitter_test.ino.cpp.o: in function `setup':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:38: undefined reference `twitter::twitter(char const*)'
sketch\esp_twitter_test.ino.cpp.o: in function `__static_initialization_and_destruction_0':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:14: undefined reference `twitter::twitter(char const*)'
collect2.exe: error: ld returned 1 exit status
exit status 1
fehler beim kompilieren für das board generic esp8266 module.
ich bin verzweifeln,
ich habe versucht die twitter.h den esp anzupassen. hier die neue twitter.h
code: [select]
#include <inttypes.h>
#include <pgmspace.h>
#include <esp8266wifi.h>
#include <wificlient.h>
#include <wifiudp.h>
class twitter
{
private:
uint8_t parsestatus;
int statuscode;
const char *token;
wificlient client;;
public:
twitter(const char *user_and_passwd);
bool post(const char *msg);
bool checkstatus(print *debug = null);
int wait(print *debug = null);
int status(void) { return statuscode; }
};
// see more at: http://www.esp8266.com/viewtopic.php?f=29&t=7276#sthash.bthuanld.0cgpv0gk.dpuf
mit folgenden sketch wollte ich einen tweet versenden
code: [select]
#include <esp8266wifi.h>
#include "twitter.h"
#include <wificlient.h>
#include <wifiudp.h>
const char* ssid = "fritz!box fon wlan 7170";
const char* password = "------------------";
wifiserver server(80);
wificlient client;
twitter twitter("----------------------------------");
char msg[] = "hello, world! i'm arduino!super3";
void setup()
{
ich bekomme dann folgende fehlermeldung: es sieht aus als würde die neue twitter.h nicht richtig eingebunden?
arduino: 1.6.9 (windows 7), board: "generic esp8266 module, 80 mhz, 40mhz, dio, 115200, 512k (64k spiffs), ck, disabled, none"
sketch\esp_twitter_test.ino.cpp.o:(.text.setup+0x2c): undefined reference `twitter::post(char const*)'
sketch\esp_twitter_test.ino.cpp.o:(.text.setup+0x30): undefined reference `twitter::wait(print*)'
sketch\esp_twitter_test.ino.cpp.o: in function `setup':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:28: undefined reference `twitter::post(char const*)'
sketch\esp_twitter_test.ino.cpp.o: in function `hardwareserial::begin(unsigned long)':
c:\users\mb\appdata\local\arduino15\packages\esp8266\hardware\esp8266\2.3.0\cores\esp8266/hardwareserial.h:75: undefined reference `twitter::wait(print*)'
sketch\esp_twitter_test.ino.cpp.o: in function `setup':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:38: undefined reference `twitter::twitter(char const*)'
sketch\esp_twitter_test.ino.cpp.o: in function `__static_initialization_and_destruction_0':
c:\users\mb\documents\arduino\esp_twitter_test/esp_twitter_test.ino:14: undefined reference `twitter::twitter(char const*)'
collect2.exe: error: ld returned 1 exit status
exit status 1
fehler beim kompilieren für das board generic esp8266 module.
zur ergänzung die originale twitter.h und der sketch für den uno mit ethernet. mit dem uno und ethernet geht es wunderbar : vieleicht gibt es eine anpassung den esp oder habe ich falsch gemacht. wer kann meinen angepassten oben genannten code mit dem esp mal testen?
twitter.h :
sketch zum versenden vom test- tweet
twitter.h :
code: [select]
/*
twitter.cpp - arduino library post messages twitter using oauth.
copyright (c) neocat 2010-2011. right reserved.
library distributed in hope useful,
without warranty; without implied warranty of
merchantability or fitness particular purpose.
*/
// ver1.2 - use <udp.h> support ide 0019 or later
// ver1.3 - support ide 1.0
#ifndef twitter_h
#define twitter_h
#include <inttypes.h>
#include <avr/pgmspace.h>
#if defined(arduino) && arduino > 18 // arduino 0019 or later
#include <spi.h>
#endif
#include <ethernet.h>
#if defined(arduino) && arduino < 100 // earlier arduino 1.0
#include <ethernetdns.h>
#endif
class twitter
{
private:
uint8_t parsestatus;
int statuscode;
const char *token;
#if defined(arduino) && arduino < 100
client client;
#else
ethernetclient client;
#endif
public:
twitter(const char *user_and_passwd);
bool post(const char *msg);
bool checkstatus(print *debug = null);
int wait(print *debug = null);
int status(void) { return statuscode; }
};
#endif //twitter_h
sketch zum versenden vom test- tweet
code: [select]
#if defined(arduino) && arduino > 18 // arduino 0019 or later
#include <spi.h>
#endif
#include <ethernet.h>
//#include <ethernetdns.h> needed in arduino 0022 or earlier
#include <twitter.h>
byte mac[] = { 0xde, 0xad, 0xbe, 0xef, 0xfe, 0xed };
byte ip[] = { 192, 168, 178, 101 };
twitter twitter("750719951103750144-fus537uzajegj21wtvi4mlgo5cg80m8");
char msg[] = "hello, world! i'm arduino!super2";
void setup()
{
delay(1000);
ethernet.begin(mac, ip);
serial.begin(9600);
serial.println("connecting ...");
if (twitter.post(msg)) {
int status = twitter.wait();
if (status == 200) {
serial.println("ok.");
} else {
serial.print("failed : code ");
serial.println(status);
}
} else {
serial.println("connection failed.");
}
}
void loop()
{
}
Arduino Forum > International > Deutsch (Moderator: uwefed) > Twitter.h Anpassung an ESP
arduino
Comments
Post a Comment