#1 2018-04-09 20:24:39

goodspeedmen
Учасник
З https://discord.gg/6hbs98y
Зареєстрований: 2016-10-02
Повідомлень: 81

Serial.println

bool trig = 0; 
uint8_t command = 0; 			      //Int to store app command state.
uint8_t T_command = 0;
void setup() 
{  
 Serial.begin(9600);
 
         DDRD  = 0b11111100;  // i/o  D.
         PORTD = 0b11111100;  // port D.
         DDRB  = 0b11111111;  // i/o  B.
         PORTB = 0b11111111;  // port B.
} 

  
void loop()
{
 if(Serial.available() > 0) 
   {
    command = Serial.read();
    if(command == T_command)
      {
 	   trig = 0;
      }  
    else
      {
       trig = 1;
      } 	
   if(trig == 1)
     {
	  T_command = command;
	  Serial.println(command);
	  trig = 0;
     }
   }
}

Парни нацарапал программку что-бы узнать что принимает ардуинка по блютузу, но почему то данные выводятся в порт в десятичном виде. В описании библиотеки говорится что данные выводятся в виде символов ASCII?

Когда пишу Serial.println(analogValue, BYTE); вообще не определятся макроподстановка, если пишу Serial.println(analogValue, byte); макроподстановка определяет символ но все ровно не компилируется  "error: expected primary-expression before ')' token"


=================================================================================
"
Передает данные через последовательное соединение как ASCII текст с следующим за ним символом переноса строки (ASCII символ 13 или '\r') и символом новой строки (ASCII 10 или '\n'). Пераметры и типы данных для этой функции такие же, как и для Serial.print().


Синтаксис
Serial.println(val)
Serial.println(val, format)"

  Serial.println(analogValue);       // print as an ASCII-encoded decimal
  Serial.println(analogValue, DEC);  // print as an ASCII-encoded decimal
  Serial.println(analogValue, HEX);  // print as an ASCII-encoded hexadecimal
  Serial.println(analogValue, OCT);  // print as an ASCII-encoded octal
  Serial.println(analogValue, BIN);  // print as an ASCII-encoded binary
  Serial.println(analogValue, BYTE); // print as a raw byte value

Остання редакція goodspeedmen (2018-04-09 20:25:42)

Неактивний

#2 2018-04-09 20:45:41

renoshnik
Учасник
Зареєстрований: 2017-04-03
Повідомлень: 1,025

Re: Serial.println

пиииипец ...   sad

Неактивний

#3 2018-04-09 20:54:54

Kaka
Учасник
Зареєстрований: 2018-03-21
Повідомлень: 411

Re: Serial.println

goodspeedmen пише:

почему то данные выводятся в порт в десятичном виде.

А надо в каком?

Неактивний

#4 2018-04-09 21:07:26

goodspeedmen
Учасник
З https://discord.gg/6hbs98y
Зареєстрований: 2016-10-02
Повідомлень: 81

Re: Serial.println

символы из таблицы ASCII

Неактивний

#5 2018-04-09 21:10:58

Kaka
Учасник
Зареєстрований: 2018-03-21
Повідомлень: 411

Re: Serial.println

Ну, так и выводите символьный тип, чего Вы число-то выводите?

Либо сразу опишите Ваши command и T_command  как char, либо прямо при выводе пишите не println(command), а println((char)command).

Остання редакція Kaka (2018-04-09 21:11:10)

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму