Serial и типы данных

Sinergy
Offline
Зарегистрирован: 14.10.2012

Доброе время суток!

Возникла ситуация которую не получается решить.

Общаюсь с шилдом по средствам  Serial. Тип данных использую char. Но в процессе обмена информацией получаю от шилда всякий мусор и шилд аналогично не понимает мои команды. Скорость обмена данными стоит одинаковая.

Мусор, получаемый обратно выглядит примерно так: «ÿà ä()Åüàÿ»

Код программы:

#include <SoftwareSerial.h>
SoftwareSerial cell(6,7);  
void setup(){
  Serial.begin(9600);
  cell.begin(9600);
  delay(500);
  Serial.println("Go run");
  delay(500);
 }
void loop(){
  if (cell.available()){
   char in=cell.read();
    Serial.print(in);
  }  
  if (Serial.available()){
    cell.write(Serial.read());
  }
}

Более подробно по шилду: http://iteadstudio.com/store/index.php?main_page=product_info&products_id=413

Я так понимаю здесь аналогичная проблема http://arduino.ru/forum/apparatnye-voprosy/ne-mogu-nastroit-svyaz-s-serial-routera-po-uarts-arduino

Насколько я понимаю проблема в типе данных. Только как подправить код не понимю.

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Очень похоже на проблему с кодировками или с настройкапи четности и стоп-битов. Вы каким терминалом смотрите?

Sinergy
Offline
Зарегистрирован: 14.10.2012

Терминал который встроен в Arduino IDE

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Посмотрел по ссылке. Там идет пример, в который включена библиотека "NewSoftSerial" - может с ней нужно? А скорость по-умолчанию у шилда 9600?

Sinergy
Offline
Зарегистрирован: 14.10.2012

http://arduino.cc/en/Reference/SoftwareSerial

Там сказано что: The version of SoftwareSerial included in 1.0 and later is based on the NewSoftSerial library by Mikal Hart.

http://arduiniana.org/libraries/newsoftserial/

Download

The latest version of NewSoftSerial is available here: NewSoftSerial12.zip. Note: don’t download this if you have Arduino 1.0 or later. As of 1.0, NewSoftSerial is included in the Arduino core (named SoftwareSerial).

Получаеться я как бы использую NewSoftSerial бибилиотеку. 

На более старых версиях ардуины мой скетч не компилируеться.

 

 

Sinergy
Offline
Зарегистрирован: 14.10.2012

 

Неужели на этом форуме нет людей, которые разбираются в подобных вещах?

Listiev
Offline
Зарегистрирован: 10.02.2013

Sinergy пишет:

Возникла ситуация которую не получается решить.

Аналогичная проблема. Связанная, скорее всего, с serial. Потому как если отказаться от обмена с serial - всё тогда ОК.

У Вас, кстати, на ПК какая операционка?