Gast
#408964
Hallo Leute ich würde gerne im Timerregister in Bit Togglen geht das so ??? TCCR1B ^= _BV(ICES1);
|
Anzeige
|
Bit invertieren auch im Register
Gast
#408964
Hallo Leute ich würde gerne im Timerregister in Bit Togglen geht das so ??? TCCR1B ^= _BV(ICES1);
Gast
#408965
Sollte funktionieren!
Gast
#408966
Aber im Datenblatt die Auswirkungen beachten!
Gast
#408967
Noch ne frage warum meckert der Compiler hier:
p_DATA ist ein Zeiger auf das ARRAY DATA
ISR(SIG_INPUT_CAPTURE1)
{
if(p_DATA == ( DATA + sizeof(DATA)) )
{
p_DATA = DATA + sizeof(DATA); // AM ENDE ANHALTEN
flag_send_data = 1; // DATEN IN MAIN SENDEN
}
else
{
p_DATA += 2;
*p_DATA = ICR1; // Zeit speichern
*(p_DATA+1) = ((TCCR1B & 0x40) >>6) ; // Aktuelle Flanke
auslesen
TCCR1B ^= _BV(ICES1); // Wechsele Flanke
}
}
Gast
#408968
Wo und wie hast du p_Data initialisiert? Da hier alles im INT-Handler stattfindet ist volatile angebracht!
Gast
#408969
hatte ich ja .. habe es jetzt anders bessser gemacht habe mir anstatt dem 2dim ARRAY ein 1DIM Structarray angelegt und zeige mit dem Zeiger jetzt auf die ELENTE im Struct das iss einfacher und besser Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|