Verbesserungsvorschläge zu eigenem kleinen Programm

Gast #1668079
Lesenswert?

Hallo,
habe mal ein Lauflicht / Blinklicht programmiert für nen Atmega8.
Dafür habe ich 20 leds in einer bestimmten Form (Kreis) angeordnet, aber 
beim löten einfach anch lust und Laune an die Pins des Atmega gehängt, 
deswegen die komischen Portreihenfolge ^^
Also mit 2 tastern kann man einmal alle Leds blinken lassen und mit dem 
2. taster kann man ein lauflicht ( immer 2 Leds an ) Über den Kreis 
laufen lassen.
Schaut euch das mal an und sagt, was amn verbesser müsste / könnte.
Bin grade am Anfang und hoffe ich lern damit noch was

gruß
Angehängte Dateien:
#1668099
Lesenswert?

@  Klaus (Gast)

>Dafür habe ich 20 leds in einer bestimmten Form (Kreis) angeordnet, aber
>beim löten einfach anch lust und Laune an die Pins des Atmega gehängt,
>deswegen die komischen Portreihenfolge ^^

Sehr sinnvoll. Schaltplan? Gibts sicher nicht.

>Schaut euch das mal an und sagt, was amn verbesser müsste / könnte.
>Bin grade am Anfang und hoffe ich lern damit noch was

Na dann hör gleich mal wieder auf mit so einem Müll. Zeichne VORHER 
einen soliden Schaltplan, DANN baue die Schaltung auch so auf.

Warum muss für EINE LED immer mehrere Pins geschaltet werden?

Dein Programm ist in typischer Anfängermanier geschrieben. Ist 
verständlich. Besser ist es, das ganze über Arrays und Schleifen zu 
machen. Ist deutlich kleiner und übersichtlicher.

MFG
Falk
Gast #1669714
Lesenswert?

Ok Danke für die Mühr deinerseits.

Also die internen Pullaps benötige ich nich, hab extern welche.
Wenn ich das jetzt richtig sehe, läuft das LED-Licht beginnend von Portb 
über den Portc und endet dann am Portd richtig??

Wobei immer 2 Leds ansind und die 3. ausgeht. richtig ?
#1669780
Lesenswert?

@  Klaus (Gast)

>Also die internen Pullaps benötige ich nich, hab extern welche.

Kann man machen, ist aber unnötig. Ausserdem musst du dann 
sinnvollerweise prüfen, ob das Pin LOW ist und nicht wie bei dir HIGH. 
Sonst ist nämlich den Schalter offen und nicht geschlossen.

http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Eing.C3.A4nge_.28Wie_kommen_Signale_in_den_.C2.B5C.29

>Wenn ich das jetzt richtig sehe, läuft das LED-Licht beginnend von Portb
>über den Portc und endet dann am Portd richtig??

Ja, ist nur als Beispiel gedacht. Kann man ja jetzt sehr leicht und 
übersichtlich ändern.

>Wobei immer 2 Leds ansind und die 3. ausgeht. richtig ?

Ja.

MfG
Falk
Gast #1669790
Lesenswert?

ich habe die tster als activ high angeschlossen, weil das grade auf der 
platine so gut passte und die haben somit ein 0 Signal im grundzustand.

Noch mal danke, dann wrde ich mal deinen Code an meine zusammengefuschte 
platine anpassen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren