RP6 Base header, port Initialisierung.
Hallo,
ich wollte mir die Grundeinstellung für die Ports ansehen, komme aber mir den Beschreibungen nicht klar und das dort so viele Fehler drin sind kann ich eigentlich nicht glauben, deshalb muss es da eine andere Antwort geben.
Also dort steht z.B.:
Code:
// ---------------------------------------------------
// PORTB
#define SL4 (1 << PINB7) // Output
#define ACS_L (1 << PINB6) // Output
#define START (1 << PINB5) // Input
#define PWRON (1 << PINB4) // Output
#define ACS_PWRH (1 << PINB3) // Output
#define ACS (1 << PINB2) // INT2 (Input)
#define SL5 (1 << PINB1) // Output
#define SL6 (1 << PINB0) // Output
// Initial value of port and direction registers.
#define INIT_DDRB 0b01011000
#define INIT_PRTB 0b00000000
// ---------------------------------------------------
Hinter den Pins steht also Input oder auch Output, vergleiche ich das mit der DDRB Anweisung steht dort aber was ganz anderes, für mich würde die Zeile so aussehen:
#define INIT_DDRB 0b11011011
Kann mir das mal jemand erklären?
Schöne Grüße
Thomas
Re: RP6 Base header, port Initialisierung.
Zitat:
Zitat von ThomasD
Kann mir das mal jemand erklären?
Es sieht so aus, als ob alle SLx in der Beschreibung als Output bezeichnet sind, beim Init aber als Input konfiguriert werden. Darüber, was es damit auf sich hat, sollte die Hardware oder der restliche Code Aufschluss geben. Es könnte z.B. sein, dass hier Open-Collector-Outputs gebildet werden.