Відповісти

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

Назад

Огляд теми (нові повідомленні вгорі)

Kaka
2018-04-09 21:10:58

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

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

goodspeedmen
2018-04-09 21:07:26

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

Kaka
2018-04-09 20:54:54
goodspeedmen пише:

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

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

renoshnik
2018-04-09 20:45:41

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

goodspeedmen
2018-04-09 20:24:39
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

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