Grenade
30.07.2008, 21:08
Hallo,
also ich möchte mich zuerst einmal vorstellen.
Mein Name ist Patrick, bin vor kurzem erst 18 geworden. Ich komme aus Österreich und bin noch Schüler an einer HTL für Elektrotechnik.
O:)
Ich bin eigentlich ziemlicher Anfänger, habe aber doch schon mehrere Programme auf einem Attiny2313 und Atmega8 zum laufen gebracht.
Naja nun zu meinem Problem:
Ich habe nach längerer Zeit wieder einmal programmiert. Ich habe mir so ein Tasterprogramm auf einen Atmega 8 geflasht. Also Taster gedrückt -> LED ein, Taster nicht gedrückt LED aus.
#include <avr/io.h>
int main()
{
while(1)
{
DDRD &= ~(1 << PD2); // PortD2 als INPUT
PORTD |= (1<<PD2); // interne Pullups einschalten
if ( !(PIND & (1<<PIND2)) ) // wenn Taste gedrückt
{
PORTD |= (1<<PORTD5); // LED an
}
else // sonst
{
PORTD &= ~(1<<PORTD5); // LED aus
}
}
}
Wird der Taster dann aber gedrückt leuchtet die LED nur halb so stark wie normalerweise. Am Portpin wo die LED dranhängt habe ich nur 2,5 V gemessen! wie kommt das?
Die LED ist von Portpin über einen 1k Widerstand nach GND geschaltet.
Ist der Pin jedoch unbelastet also keine LED dann messe ich 5 V.
Ich bitte euch um Hilfe [-o< !
Danke
also ich möchte mich zuerst einmal vorstellen.
Mein Name ist Patrick, bin vor kurzem erst 18 geworden. Ich komme aus Österreich und bin noch Schüler an einer HTL für Elektrotechnik.
O:)
Ich bin eigentlich ziemlicher Anfänger, habe aber doch schon mehrere Programme auf einem Attiny2313 und Atmega8 zum laufen gebracht.
Naja nun zu meinem Problem:
Ich habe nach längerer Zeit wieder einmal programmiert. Ich habe mir so ein Tasterprogramm auf einen Atmega 8 geflasht. Also Taster gedrückt -> LED ein, Taster nicht gedrückt LED aus.
#include <avr/io.h>
int main()
{
while(1)
{
DDRD &= ~(1 << PD2); // PortD2 als INPUT
PORTD |= (1<<PD2); // interne Pullups einschalten
if ( !(PIND & (1<<PIND2)) ) // wenn Taste gedrückt
{
PORTD |= (1<<PORTD5); // LED an
}
else // sonst
{
PORTD &= ~(1<<PORTD5); // LED aus
}
}
}
Wird der Taster dann aber gedrückt leuchtet die LED nur halb so stark wie normalerweise. Am Portpin wo die LED dranhängt habe ich nur 2,5 V gemessen! wie kommt das?
Die LED ist von Portpin über einen 1k Widerstand nach GND geschaltet.
Ist der Pin jedoch unbelastet also keine LED dann messe ich 5 V.
Ich bitte euch um Hilfe [-o< !
Danke