Hi for_ro

Ich habe das Zeichen durch das Z verändern, jedoch gab es keine Änderung. Anzeige bleibt leer

In der Simulation scheint das Programm auch richtig zu laufen, aber nur wenn ich F8 drücke...
Ich programmiere den ATmega16 mit Ponyprog2000 und da kann ich auch den EEPROM separat mit der Bascom erstellten *.eep Datei beschreiben. Jedoch wenn ich den EEPROM vom ATmega16 auslese ist der immer leer. Muss man die "DATA" unbedingt ins EEPROM schreiben?

Code:

$regfile = "m16DEF.DAT"
$crystal = 16000000
Config Porta = Output
Config Portb = Output
Config Portc = Output                             'Zeilen
Config Portd = Output                             'Spalten


Dim Offset As Word
Dim Zeichen As String * 1
Dim Spalte As Byte
Dim Werte As Byte
Declare Sub Out_zeichen(byval Z As String)

Porta = &B11111111


Do
   Zeichen = "3"
   Call Out_zeichen(zeichen)


Loop

Sub Out_zeichen(byval Z As String)
   Offset = Asc(z) - 49                           'sucht Werte für Zeichen "1" ab EEProm Adresse 1
   Offset = Offset * 5                            'immer 5 Werte pro Zeichen
   Spalte = 1
   Portc = &B11111111
   Do
      Portd = 0                                   'zum Verhindern von Geisterbildern
      Incr Offset                                 'geht die 5 Werte durch
      Readeeprom Werte , Offset
      Portc = Werte                               'lädt die Werte
      Portd = Spalte                              'Gibt die Spalte frei
      Print Bin(werte)                            'zum Testen

      Shift Spalte , Left                         'erhöht auf die nächste Spalte
   Loop Until Spalte = 32                         'stoppt nach der 5. Spalte

End Sub


$eeprom
Data &B00000000                                   'Zelle 0 im EEProm nicht benutzen!!!
Data &B11111111 , &B10111101 , &B10000000 , &B10111111 , &B11111111       '1
Data &B10111101 , &B10011110 , &B10101110 , &B10110110 , &B10111001       '2
Data &B11111111 , &B00000000 , &B11111111 , &B00000000 , &B11111111       '3 TEST