質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

解決済

1回答

2219閲覧

Arduinoにおけるシングルクオーテーションとダブルクオーテーションの使い分けについて

gutora123

総合スコア18

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2016/12/03 00:51

###前提・実現したいこと
Arduino-Xbee...Xbee-Arduino という構成でシリアル通信を試みています。

###発生している問題・エラーメッセージ

送信側からSerial.print('D'); で送信して
受信側のSerial.read()=='D'; で受信しようとしております。
それだと上手くいくのですが
送信側からSerial.print(”D”); で送信して
受信側のSerial.read()==”D”; で受信しようとするとうまくいきません。

シングルクオーテーションならchar型、ダブルクオーテーションならString型ということはわかっているのですが、同じ型同士で送受信できないのはどうしてなのでしょうか。
複数の文字列を送受信したいと思っているのでString型を使いたいです。
原因、解決策等わかる方おりましたらご教授お願い致します。

###該当のソースコード
以下は成功したシングルクオーテーションの方のソースコードです。
送信側
int BUTTON=2;

void setup() {
pinMode(BUTTON,INPUT);
Serial.begin(9600);

}

void loop() {
if(digitalRead(BUTTON)==HIGH){
Serial.print('D');
delay(10);
}
}


受信側
int LED=5;

void setup() {
pinMode(BELL,OUTPUT);
Serial.begin(9600);

}

void loop() {
if(Serial.available()>0){
if(Serial.read()=='D'){
digitalWrite(BELL,HIGH);
delay(1000);
digitalWrite(BELL,LOW);
}
}
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Serial.read()は、1バイトずつしかデータを取れません(リファレンス)。

文字列を読み取るにはSerial.readString()という別関数が必要になります。

投稿2016/12/03 01:13

maisumakun

総合スコア145121

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gutora123

2016/12/04 13:25

そうなんですか!ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問