私はArduino MegaでGSMSHIELDライブラリを使用していますが、2つの異なるシステムで次のエラーが発生します。ArduinoクラスHWSerialに 'read'という名前のメンバーがありません
/Users/-----/Documents/Arduino/libraries/GSMSHIELD/SIM900.cpp:メンバ関数 'int SIMCOM900 :: configandwait(char *)': /Users/----- /ドキュメント/ Arduino /ライブラリ/ GSMSHIELD/SIM900.cpp:62:18:エラー: 'クラスHWSerial'のメンバーに 'read'という名前のメンバーがありません connCode = _cell.read();
私はGSM.hファイルを介して、このバックトレースすることができます:私は私の人生のために、なぜを把握することはできません
public:
inline HardwareSerial(
volatile uint8_t *ubrrh, volatile uint8_t *ubrrl,
volatile uint8_t *ucsra, volatile uint8_t *ucsrb,
volatile uint8_t *ucsrc, volatile uint8_t *udr);
void begin(unsigned long baud) { begin(baud, SERIAL_8N1); }
void begin(unsigned long, uint8_t);
void end();
virtual int available(void);
virtual int peek(void);
virtual int read(void);
<snip>
:
#include "HWSerial.h"
...
HWSerial _cell;
とArduinoのHardwareSerial.hファイルこれは、Arduino開発システムのバージョン(1.6.9)の問題でない限りコンパイルされません。
ライブラリが作成されテストされたIDEのバージョンに関する情報はありません。
アイデア?
別名「ボード」は、arduinoのカーネルとはまったく異なることがあります。たとえば、c_str()などの文字列はありません。このようなケースは、あなたの問題のようなイメージです。あなたが見て、おそらく作業セットにはありません。 –
はい、わかりました。しかし、このライブラリは、UnifまたはMegaのいずれかのために作られており、#ifdefによって制御されているので、このボードで動作するはずです。それはUnoのために働くが、それはソフトウェアシリアルを使用する、私はメガのハードウェアシリアルを使用したい。だから私はそれがバージョンの問題かもしれないと思った... – Arana
あなたはそれを動作させることができましたか? – CallMeLaNN