Hallo
habe so ein Problem mit einem kleinen Stück Programm. Entweder zu doof für diese Welt oder sehe die groose Welt vor Augen nicht. Verwende dieses Stück Code:
CodeBox C
Die Belegung der Pins:
// Platine P173 Attiny 841 mit Quarz
// PA0 --> L2
// PA1 --> L3
// PB2 --> T2
// PA7 --> T3
// PA2 --> U/2
// PA3 --> Regler
Belegung DDR und Ports:
DDRA=0b00000011; // Port A auf Ausgang schalten
DDRB=0b00000100; // Port B auf Ausgang schalten
PORTA=0b00000011; // Port A auf aus
PORTB=0b00000100; // Port B auf aus
In der Zeile mit DDRB und PORTB liegt das Problem. Wenn ich die 1 durch eine 0 ersetze leuchtet L2 am PA0 dauerhaft.
Warum ????
achim
habe so ein Problem mit einem kleinen Stück Programm. Entweder zu doof für diese Welt oder sehe die groose Welt vor Augen nicht. Verwende dieses Stück Code:
CodeBox C
if (PINB & (1<<PINB2)) // Taster T2 { // Wenn T2 gedrückt... PORTA |=(1<<PINA0); // LED 2 ein } else { // wenn nicht PORTA &=~(1<<PINA0); // LED 2 aus } if (PINA & (1<<PINA7)) // Taster T3 { // Wenn T3 gedrückt... PORTA |=(1<<PINA1); // LED 3 ein } else { // wenn nicht PORTA &=~(1<<PINA1); // LED 3 aus }
Die Belegung der Pins:
// Platine P173 Attiny 841 mit Quarz
// PA0 --> L2
// PA1 --> L3
// PB2 --> T2
// PA7 --> T3
// PA2 --> U/2
// PA3 --> Regler
Belegung DDR und Ports:
DDRA=0b00000011; // Port A auf Ausgang schalten
DDRB=0b00000100; // Port B auf Ausgang schalten
PORTA=0b00000011; // Port A auf aus
PORTB=0b00000100; // Port B auf aus
In der Zeile mit DDRB und PORTB liegt das Problem. Wenn ich die 1 durch eine 0 ersetze leuchtet L2 am PA0 dauerhaft.
Warum ????
achim