Mini 3D-Cube [Prototyp halbfertig]
Moderator: T.Hoffmann
@Robo9 Wow, sieht Klasse aus.
Bist aber mutig, gleich mit Zeitmultiplexing zu arbeiten.
Bist aber mutig, gleich mit Zeitmultiplexing zu arbeiten.
Ja nur aus Erfahrung und Fehlern wird man schlau.
@Robo9 ich finde das es sehr gut geworden ist, also ob ich das alles so gut hin bekommen hätte mit den Biegen, also ich finde das du sehr gut gearbeitet hast.
Mit Freundlichen Grüßen Sh@rk
Mit Freundlichen Grüßen Sh@rk
Danke
habe mir ne Schablone gebohrt damit die alle den gleichen abstand haben und sie dan gelötet
Mfg Robo9
habe mir ne Schablone gebohrt damit die alle den gleichen abstand haben und sie dan gelötet
Mfg Robo9
- alexStyles
- Auserwählter
- Beiträge: 2333
- Registriert: So, 20.08.06, 16:51
- Wohnort: Düsseldorf
- Kontaktdaten:
Ich finds auch echt super
Hab Ich das jetzt richtig verstanden bist du auch ein Anfänger in Sachen Mikrocontrolling oder schon ein kleiner Pro ???
MfG Alex
Hab Ich das jetzt richtig verstanden bist du auch ein Anfänger in Sachen Mikrocontrolling oder schon ein kleiner Pro ???
MfG Alex
bin eigentlich ein Anfänger mit Erfahrung.Wie gesagt habe ich so was schon mal in der schule gehabt aber dort haben wir nur programmiert und ein bischen grundstruktur des Controllers. Aber ich währe nie auf die idee gekommen so was selber zu machen.
Mfg Robo9
Mfg Robo9
- alexStyles
- Auserwählter
- Beiträge: 2333
- Registriert: So, 20.08.06, 16:51
- Wohnort: Düsseldorf
- Kontaktdaten:
Achso
Ich werde ja nun auch bald mal anfangen mit dem Programmieren
Ich freu mich schon so *gg*
MfG Alex
Ich werde ja nun auch bald mal anfangen mit dem Programmieren
Ich freu mich schon so *gg*
MfG Alex
Wie sieht denn für dein Beispiel der Programmcode aus?...kannst du das Listing dafür mal hier Posten?
Am besten für die Ansteuerung aller 27 LED´s.
So könnte man sich anhand deines Listings mehr Infos aneignen und schon mal selbst herumexperimentieren.
Würde mich Freuen.
Am besten für die Ansteuerung aller 27 LED´s.
So könnte man sich anhand deines Listings mehr Infos aneignen und schon mal selbst herumexperimentieren.
Würde mich Freuen.
@Andy was meinst genau mit Listing?
Momentan werden nur 18 Leds angesteuert, da der Atmega8 nicht genügend I/Os-Pins hat.
Momentan werden nur 18 Leds angesteuert, da der Atmega8 nicht genügend I/Os-Pins hat.
Ich meinte damit das Programm als Solches, was du Geschrieben hast, nennt man dieses denn nicht auch Listing?....hmmm...oki...aber jetzt weißt du ja, was ich meinte...lol
Das mit dem AtMega8 und nur den 18 LED´s wußte ich ja...aber ich hatte Gedacht, das du das Programm schon für den 32er fertig hättest.
Aber das für den ATMega8 tut es dann ja auch... müßte man dann halt nur für die anderen IO Ports erweitern...
Wäre ja auch nur um mal einen Einblick in die Größe und dem Umfang einer solchen Programierung zu bekommen,
damit die User einen ungefähren Eindruck bekommen, wieviel 2 KB´s sind...weil ja nur 4KB in dem BasCom Programm freigegeben werden (is halt ne Demo)
Das mit dem AtMega8 und nur den 18 LED´s wußte ich ja...aber ich hatte Gedacht, das du das Programm schon für den 32er fertig hättest.
Aber das für den ATMega8 tut es dann ja auch... müßte man dann halt nur für die anderen IO Ports erweitern...
Wäre ja auch nur um mal einen Einblick in die Größe und dem Umfang einer solchen Programierung zu bekommen,
damit die User einen ungefähren Eindruck bekommen, wieviel 2 KB´s sind...weil ja nur 4KB in dem BasCom Programm freigegeben werden (is halt ne Demo)
Aso, jetzt habe ich es verstanden.
Klar kann ich machen. Aber mein Code ist noch nicht ganz fertig. Bestimmt kann man da noch was optimieren.
Ist außerdem sehr umfangreich und nicht sehr leicht überschaubar. Da ich auch noch mit Unterprogrammen, IF-Funktionen, Pause über Variabel arbeitete... und nur teilweise kommentiert habe.
Also hier der Code von meinem 3D-Cube (nur 18 Leds werden angesteuert):
Klar kann ich machen. Aber mein Code ist noch nicht ganz fertig. Bestimmt kann man da noch was optimieren.
Ist außerdem sehr umfangreich und nicht sehr leicht überschaubar. Da ich auch noch mit Unterprogrammen, IF-Funktionen, Pause über Variabel arbeitete... und nur teilweise kommentiert habe.
Also hier der Code von meinem 3D-Cube (nur 18 Leds werden angesteuert):
Code: Alles auswählen
$regfile = "m8def.dat" 'definieren des verwendeten Chips
$crystal = 1000000 'definieren des verwendeten externen Quarz (8MHz)
Dim P As Integer
Dim Ol As Bit
Ddrd = &B11111111
Ddrb = &B111111
Ddrc = &B111111
Leda1 Alias Portc.0
Leda2 Alias Portc.1
Leda3 Alias Portc.2
Leda4 Alias Portc.3
Leda5 Alias Portc.4
Leda6 Alias Portc.5
Leda7 Alias Portb.0
Leda8 Alias Portb.1
Leda9 Alias Portb.2
Ledb1 Alias Portb.4
Ledb2 Alias Portb.5
Ledb3 Alias Portd.0
Ledb4 Alias Portd.1
Ledb5 Alias Portd.2
Ledb6 Alias Portd.3
Ledb7 Alias Portd.4
Ledb8 Alias Portd.5
Ledb9 Alias Portd.6
Do
Ol = 0
P = 200
Gosub Drehung
Gosub Drehung
P = 150
Gosub Drehung
Gosub Drehung
P = 100
Gosub Drehung
Gosub Drehung
P = 50
Gosub Drehung
Gosub Drehung
P = 1000
Ol = 1
Gosub Drehung
Ol = 0
Gosub Alloff
'-- Fallen der Blöcke
P = 200
Gosub Fallen
'-- Leuchten komplett unten, mitte, oben...
P = 300
Gosub Alloff
Gosub Hochrunter
Gosub Hochrunter
P = 150
Gosub Hochrunter
Gosub Hochrunter
P = 100
Gosub Hochrunter
Gosub Hochrunter
'-- Punkt der sich bewegt
P = 100
Gosub Fleda1
Gosub Fleda2
Gosub Fleda3
Gosub Fleda6
Gosub Fleda9
Gosub Fleda8
Gosub Fleda7
Gosub Fleda4
Gosub Fledb1
Gosub Fledb2
Gosub Fledb3
Gosub Fledb6
Gosub Fledb9
Gosub Fledb8
Gosub Fledb7
Gosub Fledb4
Gosub Fledb1
Gosub 2punkt
Gosub 2punkt
Gosub 2punkt
'2 Punkt zu zwei Vierecken
Ol = 1
Gosub 2punkt
Ol = 0
Ol = 0
Gosub 2punkt
Ol = 1
Gosub 2punkt
Ol = 0
Waitms 1000
Gosub Alloff
P = 200
Ol = 1
Gosub Fleda1
Gosub Fleda4
Gosub Fleda5
Gosub Fleda9
Gosub Fleda7
Gosub Fleda8
Waitms 1000
Gosub Fledb1
Gosub Fledb2
Gosub Fledb3
Gosub Fledb6
Gosub Fledb9
Gosub Fledb5
Ol = 0
Waitms 1000
Gosub Alloff
P = 400
Gosub Diablinken
Gosub Diablinken
P = 200
Gosub Diablinken
Gosub Diablinken
P = 100
Gosub Diablinken
Gosub Diablinken
P = 400
Gosub Aidrehen
Gosub Aidrehen
P = 200
Gosub Aidrehen
Gosub Bidrehen
Gosub Aidrehen
P = 100
Gosub Aidrehen
Gosub Bidrehen
Gosub Aidrehen
Loop
'-------------------------------------------------------------------------------------------------- außerhalb Loop / ab Hier Unterprogramme ----------------------------------------------------------------------------------------
Aidrehen:
Leda5 = 1
Leda2 = 1
Leda8 = 1
Waitms P
Gosub Alloff
Leda5 = 1
Leda3 = 1
Leda7 = 1
Waitms P
Gosub Alloff
Leda5 = 1
Leda4 = 1
Leda6 = 1
Waitms P
Gosub Alloff
Leda1 = 1
Leda5 = 1
Leda9 = 1
Waitms P
Gosub Alloff
Return
Bidrehen:
Ledb5 = 1
Ledb2 = 1
Ledb8 = 1
Waitms P
Gosub Alloff
Ledb5 = 1
Ledb3 = 1
Ledb7 = 1
Waitms P
Gosub Alloff
Ledb5 = 1
Ledb4 = 1
Ledb6 = 1
Waitms P
Gosub Alloff
Ledb1 = 1
Ledb5 = 1
Ledb9 = 1
Waitms P
Gosub Alloff
Return
Diablinken:
Gosub Adiarechtsunten
Waitms P
Gosub Alloff
Gosub Bdialinksoben
Waitms P
Gosub Alloff
Return
Adiarechtsunten:
Leda1 = 1
Leda4 = 1
Leda5 = 1
Leda9 = 1
Leda7 = 1
Leda8 = 1
Return
Bdialinksoben:
Ledb1 = 1
Ledb2 = 1
Ledb3 = 1
Ledb6 = 1
Ledb9 = 1
Ledb5 = 1
Return
Fallen:
Gosub Fleda3
Gosub Fleda2
Gosub Fleda1
Leda1 = 1
Gosub Fleda6
Gosub Fleda5
Gosub Fleda4
Leda4 = 1
Gosub Fleda9
Gosub Fleda8
Gosub Fleda7
Leda7 = 1
Gosub Fledb3
Gosub Fledb2
Gosub Fledb1
Ledb1 = 1
Gosub Fledb6
Gosub Fledb5
Gosub Fledb4
Ledb4 = 1
Gosub Fledb9
Gosub Fledb8
Gosub Fledb7
Ledb7 = 1
Return
2punkt:
'-- 2 Punkte die sich bewegen
Leda1 = 1
Ledb7 = 1
Waitms P
Gosub Alloff
Leda2 = 1
Ledb8 = 1
Waitms P
Gosub Alloff
Leda3 = 1
Ledb9 = 1
Waitms P
Gosub Alloff
Leda6 = 1
Ledb6 = 1
Waitms P
Gosub Alloff
Leda9 = 1
Ledb3 = 1
Waitms P
Gosub Alloff
Leda8 = 1
Ledb2 = 1
Waitms P
Gosub Alloff
Leda7 = 1
Ledb1 = 1
Waitms P
Gosub Alloff
Leda4 = 1
Ledb4 = 1
Waitms P
Gosub Alloff
Return
Nzeichen1:
Leda1 = 1
Leda2 = 1
Leda3 = 1
Leda5 = 1
Leda7 = 1
Leda8 = 1
Leda9 = 1
Return
Nzeichen2:
Ledb1 = 1
Ledb2 = 1
Ledb3 = 1
Ledb5 = 1
Ledb7 = 1
Ledb8 = 1
Ledb9 = 1
Return
' -- Hoch und runter (beginnt mit mitte -> oben -> mitte -> unten)
Hochrunter:
Gosub Mitte
Waitms P
Gosub Alloff
Gosub Oben
Waitms P
Gosub Alloff
Gosub Mitte
Waitms P
Gosub Alloff
Gosub Unten
Waitms P
Gosub Alloff
Return
Unten:
Leda1 = 1
Leda4 = 1
Leda7 = 1
Ledb1 = 1
Ledb4 = 1
Ledb7 = 1
Return
Mitte:
Leda2 = 1
Leda5 = 1
Leda8 = 1
Ledb2 = 1
Ledb5 = 1
Ledb8 = 1
Return
Oben:
Leda3 = 1
Leda6 = 1
Leda9 = 1
Ledb3 = 1
Ledb6 = 1
Ledb9 = 1
Return
Drehung:
Ledb2 = 1
Leda2 = 1
Ledb8 = 1
Leda8 = 1
Waitms P
Gosub Alloff
Leda3 = 1
Ledb3 = 1
Leda7 = 1
Ledb7 = 1
Waitms P
Gosub Alloff
Leda4 = 1
Ledb4 = 1
Leda6 = 1
Ledb6 = 1
Waitms P
Gosub Alloff
Leda1 = 1
Ledb1 = 1
Leda9 = 1
Ledb9 = 1
Waitms P
Gosub Alloff
Return
Allon:
Leda1 = 1
Leda2 = 1
Leda3 = 1
Leda4 = 1
Leda5 = 1
Leda6 = 1
Leda7 = 1
Leda8 = 1
Leda9 = 1
Ledb1 = 1
Ledb2 = 1
Ledb3 = 1
Ledb4 = 1
Ledb5 = 1
Ledb6 = 1
Ledb7 = 1
Ledb8 = 1
Ledb9 = 1
Return
Alloff:
If Ol = 0 Then
Leda1 = 0
Leda2 = 0
Leda3 = 0
Leda4 = 0
Leda5 = 0
Leda6 = 0
Leda7 = 0
Leda8 = 0
Leda9 = 0
Ledb1 = 0
Ledb2 = 0
Ledb3 = 0
Ledb4 = 0
Ledb5 = 0
Ledb6 = 0
Ledb7 = 0
Ledb8 = 0
Ledb9 = 0
End If
Return
Fleda1:
Leda1 = 1
Waitms P
If Ol = 0 Then
Leda1 = 0
End If
Return
Fleda2:
Leda2 = 1
Waitms P
If Ol = 0 Then
Leda2 = 0
End If
Return
Fleda3:
Leda3 = 1
Waitms P
If Ol = 0 Then
Leda3 = 0
End If
Return
Fleda4:
Leda4 = 1
Waitms P
If Ol = 0 Then
Leda4 = 0
End If
Return
Fleda5:
Leda5 = 1
Waitms P
If Ol = 0 Then
Leda5 = 0
End If
Return
Fleda6:
Leda6 = 1
Waitms P
If Ol = 0 Then
Leda6 = 0
End If
Return
Fleda7:
Leda7 = 1
Waitms P
If Ol = 0 Then
Leda7 = 0
End If
Return
Fleda8:
Leda8 = 1
Waitms P
If Ol = 0 Then
Leda8 = 0
End If
Return
Fleda9:
Leda9 = 1
Waitms P
If Ol = 0 Then
Leda9 = 0
End If
Return
Fledb1:
Ledb1 = 1
Waitms P
If Ol = 0 Then
Ledb1 = 0
End If
Return
Fledb2:
Ledb2 = 1
Waitms P
If Ol = 0 Then
Ledb2 = 0
End If
Return
Fledb3:
Ledb3 = 1
Waitms P
If Ol = 0 Then
Ledb3 = 0
End If
Return
Fledb4:
Ledb4 = 1
Waitms P
If Ol = 0 Then
Ledb4 = 0
End If
Return
Fledb5:
Ledb5 = 1
Waitms P
If Ol = 0 Then
Ledb5 = 0
End If
Return
Fledb6:
Ledb6 = 1
Waitms P
If Ol = 0 Then
Ledb6 = 0
End If
Return
Fledb7:
Ledb7 = 1
Waitms P
If Ol = 0 Then
Ledb7 = 0
End If
Return
Fledb8:
Ledb8 = 1
Waitms P
If Ol = 0 Then
Ledb8 = 0
End If
Return
Fledb9:
Ledb9 = 1
Waitms P
If Ol = 0 Then
Ledb9 = 0
End If
Return
Zuletzt geändert von Pehu am Mi, 10.01.07, 20:45, insgesamt 1-mal geändert.
Also ersteinmal Danke dafür, das du meine Bitte erfüllt hast.
So Leute...das sind jetzt ca. 2KB....
Also ihr seht, das das ganze nu doch nicht so einfach ist, wie ihr vermutet habt...
Steckt ne menge Arbeit drin...
So...nu kommt Ihr...
Und was macht ihr nu ???....ganz recht
So Leute...das sind jetzt ca. 2KB....
Also ihr seht, das das ganze nu doch nicht so einfach ist, wie ihr vermutet habt...
Steckt ne menge Arbeit drin...
So...nu kommt Ihr...
Und was macht ihr nu ???....ganz recht
So habe das Bord zusammengelötet und es funktioniert super.
habe das How² von Pehu angewendet und schon nen bischen rumexperemtiert.
das löten hat 1 1/2 h gedauert.
Pehu war bei dir auch noch ein teil Übrig?????
das Teil ist ein IC wo mehrere Mikroschalter drauf sind
Mfg Robo9
habe das How² von Pehu angewendet und schon nen bischen rumexperemtiert.
das löten hat 1 1/2 h gedauert.
Pehu war bei dir auch noch ein teil Übrig?????
das Teil ist ein IC wo mehrere Mikroschalter drauf sind
Mfg Robo9
Hm, komisch bei mir waren keine Dipschalter dabei. Nur Jumpers, wie man die von Mainboards kennt.
Jumpers waren auch da bei.
Es sind alle teile dabei diem na für das Bord braucht und die in der Liste stehen aber das Mäuseklavie ist übrich geblieben. na ja mal sehen was ich damit mache
Mfg Robo9
Es sind alle teile dabei diem na für das Bord braucht und die in der Liste stehen aber das Mäuseklavie ist übrich geblieben. na ja mal sehen was ich damit mache
Mfg Robo9
@Jay Staatsgeheimnis. Scherz bei Seite. Ich habe meinen Code bereits oben gepostet.
Jedoch nur mit 18 Leds, da ich an meinem 3D-Cube noch nicht weitergearbeitet habe.
Da mir wieder eine andere geile Idee/Projekt einfällt.
Somit wird der 3D-Cube erstmal stehen.
Jedoch nur mit 18 Leds, da ich an meinem 3D-Cube noch nicht weitergearbeitet habe.
Da mir wieder eine andere geile Idee/Projekt einfällt.
Somit wird der 3D-Cube erstmal stehen.