• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Odbiornik IR RE3265R1000 (którym chciałbym zastąpić Arduinem)
#21
No przecież miałeś zainteresować się tym portem szeregowym.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#22
No tak... oczywiście Smile
 
Odpowiedź
#23
i jeszcze, trzeba te dane zapisane w tablicy wziąć w cudzysłów?

bo wyskoczył mi błąd kompilacji:


Cytat:...[ ]
wlacz_LEDTV:2: error: 'b' was not declared in this scope

const int klawisz[1] PROGMEM = {b&11111111111111111111101000000101};

                            ^
exit status 1
'b' was not declared in this scope
 
Odpowiedź
#24
No i kurcze taki kwiatek:
Cytat:C:\Users\Leslaw K\Documents\Arduino\wlacz_TV\wlacz_TV.ino:3:1: warning: character constant too long for its type

'b&11111111111111111111101000000101'

^

Choć kompilacja przeszła.
 
Odpowiedź
#25
Był bug. Już poprawiłem.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#26
Dzięki. Jednak z tymi cudzysłowami to zły pomysł? bo po poprawce kompilator nadal:
Cytat:wlacz_TV:134: error: expected ',' or ';' before 'void'

 void setup() {

 ^

exit status 1
'B11111111111111111111101000000101' was not declared in this scope
 
Odpowiedź
#27
Może zapisywać w akceptowalnej przez kompilator formie, a przesyłać przekonwertowane?
A może niepotrzebne jest to B z przodu?

Potestuję, co zadziała...
 
Odpowiedź
#28
Oprócz prostego:  Serial.print(wartosc, BIN ); 
który może jednak obcinać bity z przodu zerowe podobno,

coś  takiego znalazłem:  
Kod:
for (byte maska = 0x80; maska; maska >>= 1)
 {
   if (maska & wartosc)
     Serial.print('1');
   else
     Serial.print('0');
 }
 Serial.println();

Jednak mam obawy, nawet jak inaczej zbuduję tę funkcję wysyłania pojedynczych wartości , czy interwały miedzy poszczególnymi wysyłkami nie maja znaczenia.... i nie pogrzebią sprawy... czy mam możliwość długościami interwałów sterować?

Z wątku: https://www.elektroda.pl/rtvforum/topic3...3b24cc5995
 
Odpowiedź
#29
To jest prefix hexadecymalny, a my mamy binarny.
Syn poprawiał kod i mu się pokićkało.
Już jest dobrze. Nie ma być B z przodu, tylko 0b.
Ten prefix mówi kompilatorowi, że znajdujące się za nim znaki, to ciąg binarny.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#30
Ok Smile
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości