- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 3 von 3

Thema: Laufschrift eigenbau - brauche etwas Starthilfe

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    28.09.2008
    Ort
    Aargau
    Alter
    31
    Beiträge
    8

    Laufschrift eigenbau - brauche etwas Starthilfe

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo erstmal!

    Ich möchte mir gerne eine Laufschrift bauen. Das ganze mit 8x8 LED Dot-Matrix Anzeigen. Ich habe dazu auch schon im Internet recherchiert, und herausgefunden, dass ich am besten das Schieberegister 74HC595 verwende. Dazu habe ich auch einen Schaltplan gefunden (im Anhang).
    Ich möchte das ganze mit einem ATmega8 aufbauen.

    Nun aber zu meiner eigentliche Frage. Im Moment habe ich nur eine 8x8 Matrix angeschlossen und möchte einfach nur ein stehendes M anzeigen. Dazu habe ich folgenden Bascom Code geschrieben:
    Code:
    'Text LED Dot-Matrix Anzeige
    
    
    $regfile = "M8def.dat"
    
    Config Portb = Output
    Config Portd = Output
    
    Daten Alias Portb.0
    Schieben Alias Portb.1
    Speichern Alias Portb.2
    
    $crystal = 1000000
    
    
    '*******************************************************************************
    
    Do
    
           Portd = 0
           Daten = 1
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Daten = 0
           Waitms 2
    
           Portd = &B01111111
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = &B00000010
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = &B00000100
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = &B00000100
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = &B00000010
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = &B01111111
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = 0
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
           Portd = 0
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    
    Loop
    Nun ist es aber so dass auf der Anzeige das M angezeigt wird aber gleichzeitig um eine Stelle nach vorne verschoben ein schwach leuchtendes zweites M dargestellt wird (auf dem Foto sieht man es gereade noch, ich habe leider nur meine Handykamera da).
    Weiss jemand was ich da Falsch mache??

    Gruss und vielen Dank im Vorraus!

    Michi
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 2010-11-28_21.44.02-1.jpg   schema_laufschrift.jpg  

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    41
    Beiträge
    2.009
    Das ist nach deinem Code "normal". Du setzt die neuen Daten ja schon, bevor du weitershiftest. Dieser kurze Moment bis weitergeschiftet wird, reicht schon, um die LEDs zum Glimmen zu bringen.
    Normalerweise wird dieses Output Enable/Update/Speichern/wie es auch immer genannt wird vor dem Zuweisen deaktiviert wird. Sind alle Daten geschrieben, wird wieder an der Leitung gezupft und alle Daten werden übernommen.

    Jetzt machst du's ja so:
    Code:
         Portd = neuer Wert
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Toggle Speichern
           Waitms 2
    Probiers mal so:
    Code:
           Toggle Speichern
         Portd = Wert zuweisen
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    Dann müsste das Geisterbild theoretisch verschwinden (wenns denn diese Ursache war)
    #ifndef MfG
    #define MfG

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    28.09.2008
    Ort
    Aargau
    Alter
    31
    Beiträge
    8
    Das habe ich nun versucht:

    Code:
    'Text LED Dot-Matrix Anzeige
    
    
    $regfile = "M8def.dat"
    
    Config Portb = Output
    Config Portd = Output
    
    Daten Alias Portb.0
    Schieben Alias Portb.1
    Speichern Alias Portb.2
    
    $crystal = 1000000
    
    
    '*******************************************************************************
    
    Do
           Daten = 1
           Toggle Speichern
           Portd = 0
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Daten = 0
           Waitms 2
    
           Toggle Speichern
           Portd = &B01111111
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = &B00000010
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = &B00000100
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = &B00000100
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = &B00000010
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = &B01111111
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = 0
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
           Toggle Speichern
           Portd = 0
           Toggle Schieben
           Toggle Schieben
           Toggle Speichern
           Waitms 2
    
    Loop
    Man sieht jedoch immernoch ein zweites M nur ist es dieses Mal nach hinten verschoben.
    Ich habe jedoch das Gefühl, dass die Led's von zweiten M ein wenig schwächer leuchten.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad