「ArduinoとGPSモジュールの通信」
GT720Fの信号線について
GT720Fからはシリアル通信でマイコン等にデータを送信します。
特にArduinoではTTLレベルの信号が必要なのですが、
GT720Fの説明ではRS232Cレベルであるとしか書いてありません。
しかし!使っていない2つの信号線からTTLレベルの信号が出力されている!
ことが知られています。
というわけで、Arduinoとの通信にはこのTTLレベルの信号線を使いましょう。
Arduinoの通信用ピンについて
Arduino側はシリアル通信の設定をします。
ソフトウェアシリアルという機能を使うので、デジタルピンならどれでも通信できます。
普段の書き込みに使用するデジタルピン0,1以外を使えばいいでしょう。(ここでは4と5をつかう。)
また、Arduinoの5VとGNDを接続しましょう。
配線は簡単(つなげるだけ!)
下の図を参考にして接続してください。
・Arduinoから5Vを供給
・GNDを共有
・GT720FのTX,RXをArduinoのデジタルピン5,4に接続
これで準備OKです。
GT720Fに信号を送ることはないのでGT720FのRXは接続する必要は特にないのですが、一応つないでおきます。
配線するときは、TXをRXに、RXをTXにつなげることを間違えないようにしましょう。
[GT-720Fのピンアサイン]
[Arduino側の配線]
プログラムも簡単(書き込むだけ!)
Aruduino側に書き込むプログラムはいたって単純です。
ソフトウェアシリアルライブラリを使って受信開始すれば、
シリアルポートにて何が受信されたかを確認することができるはずです。
普段はシリアルモニタには何も表示されないはずなので、
何かが表示されたらそれでひとまずOKです。
[Arduinoのスケッチ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #include <SoftwareSerial.h> // 5:RX,4:TXでシリアル通信する宣言 SoftwareSerial mySerial(5, 4); char moji; void setup (){ // 9600 bpsで接続(パソコンとの通信 Serial.begin(9600); // 9600 bpsで接続(GT-720Fとの通信) mySerial.begin(9600); // 最初に1度だけ Start を表示(通信の確認) Serial.println("Start"); } void loop (){ //mojiという変数にGT-720Fから受信した文字を格納する moji = mySerial.read(); //格納された文字が-1(意味のないデータ)ではなければ if(moji != -1){ //その文字をパソコンに送信する Serial.print(moji); } } |
syntax2html |