Arduino Library für Jeti EX Eigenbau-Telemetrie
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo zusammen
Werden die Tastenkombinationen der Jetibox(DC16) richtig ausgewertet?
uint8_t c = jetiEx.GetJetiboxKey();
// UP+DOWN
if( c == 0x90)
{
_y2=1;
}
// LEFT+RIGHT
if( c == 0x60)
{
_y2=2;
}
Das ist doch so richtig oder?
Bei UP und Down soll die Variable _y2 auf 1 gesetzt werden!
Die JetiExSerial hat die Version:
1.0.3 07/14/2017 Allow all jetibox key combinations (thanks to ThomasL)
Bei mir werden keine Kombinationen erkannt!
Was mache ich falsch?
Gruß Micha
Werden die Tastenkombinationen der Jetibox(DC16) richtig ausgewertet?
uint8_t c = jetiEx.GetJetiboxKey();
// UP+DOWN
if( c == 0x90)
{
_y2=1;
}
// LEFT+RIGHT
if( c == 0x60)
{
_y2=2;
}
Das ist doch so richtig oder?
Bei UP und Down soll die Variable _y2 auf 1 gesetzt werden!
Die JetiExSerial hat die Version:
1.0.3 07/14/2017 Allow all jetibox key combinations (thanks to ThomasL)
Bei mir werden keine Kombinationen erkannt!
Was mache ich falsch?
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo
Nochmal
Die Anderen Tasten (einzel) werden ausgewertet!
if(c != 255){
y_c = c;
}
dtostrf(y_c,4,0, buffer2);
sprintf(JetiBoxLine2,"%0s", buffer2);
und auf der Jetibox Angezeigt
Gruß Micha
Nochmal
Die Anderen Tasten (einzel) werden ausgewertet!
if(c != 255){
y_c = c;
}
dtostrf(y_c,4,0, buffer2);
sprintf(JetiBoxLine2,"%0s", buffer2);
und auf der Jetibox Angezeigt
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Sepp62
- Offline Autor
- Elite Mitglied
- Beiträge: 294
- Dank erhalten: 153
Sepp62 antwortete auf Arduino Library für Jeti EX Eigenbau-Telemetrie
Posted 15 Okt. 2017 21:12 #291
Hm, der geänderte Code ist eingebaut. Keine Ahnung, was da schief geht:
// ISR - receiver buffer full
ISR( USART_RX_vect )
{
// uint8_t status = UCSR0A;
// uint8_t bit8 = UCSR0B; // unused
uint8_t c = UDR;
// if( c == 0x70 || c == 0xb0 || c == 0xd0 || c == 0xe0 ) // Left = 0x70, down = 0xb0, up= 0xd0, right = 0xe0
if( c != 0xf0 && (c & 0x0f) == 0 ) // check upper nibble
{
*(_pInstance->m_rxHeadPtr) = c; // write data to buffer
_pInstance->m_rxNumChar++; // increase number of characters in buffer
_pInstance->m_rxHeadPtr = _pInstance->IncBufPtr8( _pInstance->m_rxHeadPtr, _pInstance->m_rxBuf, _pInstance->RX_RINGBUF_SIZE ); // increase ringbuf pointer
}
}
VG Bernd
// ISR - receiver buffer full
ISR( USART_RX_vect )
{
// uint8_t status = UCSR0A;
// uint8_t bit8 = UCSR0B; // unused
uint8_t c = UDR;
// if( c == 0x70 || c == 0xb0 || c == 0xd0 || c == 0xe0 ) // Left = 0x70, down = 0xb0, up= 0xd0, right = 0xe0
if( c != 0xf0 && (c & 0x0f) == 0 ) // check upper nibble
{
*(_pInstance->m_rxHeadPtr) = c; // write data to buffer
_pInstance->m_rxNumChar++; // increase number of characters in buffer
_pInstance->m_rxHeadPtr = _pInstance->IncBufPtr8( _pInstance->m_rxHeadPtr, _pInstance->m_rxBuf, _pInstance->RX_RINGBUF_SIZE ); // increase ringbuf pointer
}
}
VG Bernd
von Sepp62
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo Bernd
Ist das nur bei mir so?
Oder läuft das auch bei dir nicht?
Kannst Du das mal Testen?
Gruß Micha
Ist das nur bei mir so?
Oder läuft das auch bei dir nicht?
Kannst Du das mal Testen?
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- ThLehmann
- Offline
- Platinum Mitglied
- Beiträge: 390
- Dank erhalten: 149
ThLehmann antwortete auf Arduino Library für Jeti EX Eigenbau-Telemetrie
Posted 15 Okt. 2017 22:45 #293
Hallo Micha,
im oberen Nibble wird je ein BIT für die einzelnen Tastendrücke gesetzt. Durch die geänderte Abfrage können jetzt auch Kombinationen ausgewetet werden.
Gib doch mal den Wert aus den Du empängst.
im oberen Nibble wird je ein BIT für die einzelnen Tastendrücke gesetzt. Durch die geänderte Abfrage können jetzt auch Kombinationen ausgewetet werden.
Gib doch mal den Wert aus den Du empängst.
immer schön vorsichtig landen
Gruß, Thomas
Gruß, Thomas
Last Edit:15 Okt. 2017 22:48
von ThLehmann
Letzte Änderung: 15 Okt. 2017 22:48 von ThLehmann.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Micha
- Offline
- Premium Mitglied
- Beiträge: 130
- Dank erhalten: 3
Hallo
Habe ich versucht!
uint8_t c = jetiEx.GetJetiboxKey();
if(c != 255){
y_c = c;
}
y_c = c;
dtostrf(y_c,4,0, buffer2);
sprintf(JetiBoxLine2,"%0s", buffer2);
Bei Einzelnen Tasten wird auch der richtige Wert Zurückgegeben!
224 RIGHT
112 LEFT
208 UP
176 DOWN
Wenn ich aber an der DC16 eine Tastenkombination Drücke kommt nichts an!
Gruß Micha
Habe ich versucht!
uint8_t c = jetiEx.GetJetiboxKey();
if(c != 255){
y_c = c;
}
y_c = c;
dtostrf(y_c,4,0, buffer2);
sprintf(JetiBoxLine2,"%0s", buffer2);
Bei Einzelnen Tasten wird auch der richtige Wert Zurückgegeben!
224 RIGHT
112 LEFT
208 UP
176 DOWN
Wenn ich aber an der DC16 eine Tastenkombination Drücke kommt nichts an!
Gruß Micha
von Micha
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 1.095 Sekunden