Hallo Fieke
Das ist ein interessantes Projekt. Allerdings ist Linienfolgen nicht wirklich die Spezialdisziplin des RP6. Schnelle Motoränderungen belasten das Getriebe sehr.
Könnte das die Lösung für dein Problem sein?
Du darst die Pinabfrage selbstverständlich auch direkt als Bedingung verwenden:Code:#include "RP6RobotBaseLib.h" int main(void) { initRobotBase(); powerON(); uint8_t temp_E_INT1; uint8_t temp_SCL; uint8_t temp_SDA; DDRA &= ~E_INT1; // Datenrichtung Eingang DDRC &= ~(SCL | SDA); PORTA &= ~E_INT1; // PullUps deaktivieren PORTC &= ~(SCL | SDA); while(true) { temp_E_INT1 = PINA & E_INT1; // Pins einlesen temp_SCL = PINC & SCL; temp_SDA = PINC & SDA; if(temp_E_INT1) { writeString_P("\nINT1 is hoog\n"); } if(!temp_E_INT1) { writeString_P("\nINT1 is laag\n"); } if(temp_SCL) { writeString_P("\nSCL is hoog\n"); } if(!temp_SCL) { writeString_P("\nSCL is laag\n"); } if(temp_SDA) { writeString_P("\nSDA is hoog\n"); } if(!temp_SDA) { writeString_P("\nSDA is laag\n"); } mSleep(300); } return 0; }
GrußCode:if(PINA & E_INT1) { writeString_P("\nINT1 is hoog\n"); } else { writeString_P("\nINT1 is laag\n"); }
mic







Zitieren
Lesezeichen