-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: SAA1064 ansteuern ?

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    20.02.2007
    Beiträge
    341

    SAA1064 ansteuern ?

    Anzeige

    Hi,

    ich habe eine Frage zum ansteuern Des SAA1064.

    Aufgebaut habe ich die Schaltung wie im Datenblatt beschrieben als Static Mode (Also für 2 Anzeigen).

    Der Code mit dem ich versuche, das ganze anzusteuern sieht so aus:

    Code:
      I2cstart
      I2cwbyte &H70
      I2cwbyte 0 
      I2cwbyte &B1111000
      I2cstop
    Wenn ich das Protokoll richtig verstanden habe müsste doch nun folgendes gesetzt werden:

    Static Mode = an
    Die beiden anzeigen = gelöscht
    Alle Segmente = an
    Und volle Leuchtkraft

    Stimmt das so ? Bzw. stimmt die Adresse &H70 für den Static Mode, wenn ADR auf Gnd liegt ?

    Ich hoffe mir kann jemand helfen.

    mfg Yannic

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Im DB steht auf Seite 6

    C0 = 0 static mode, i.e. continuous display of digits 1 and 2
    C0 = 1 dynamic mode, i.e. alternating display of digit 1 + 3 and 2 + 4
    C1 = 0/1 digits 1 + 3 are blanked/not blanked
    C2 = 0/1 digits 2 + 4 are blanked/not blanked
    C3 = 1 all segment outputs are switched-on for segment test(1)
    C4 = 1 adds 3 mA to segment output current
    C5 = 1 adds 6 mA to segment output current
    C6 = 1 adds 12 mA to segment output current
    wobei es so anfängt

    x C6 C5 C4 C3 C2 C1 C0

    Was statt dem x steht ist egal

    Wenn du bei max. Helligkeit den Segmenttest im Staticmode haben willst musst du &B01111110 schreiben.

    Es ist für die Adresse egal, welchen Mode du nimmst. Wenn du den ADR Eingang auf GND gelegt hast ist die Adresse &H70

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    20.02.2007
    Beiträge
    341
    Hi,

    ich habe jetzt folgendes code probiert:

    Code:
    $regfile = "m16def.dat"
    
    $crystal = 16000000
    $baud = 9600
    
    
    
      I2cstart
      I2cwbyte &H70
      I2cwbyte 0
    
      I2cwbyte &B01111110
    
      I2cstop
    Passiert leider garnichts.

    Müsste es mit dem obigen code so funktionieren ?

    Kann es sein das für I2C beim Mega 16 irgendwelche fuses gesetzt werden müssen, bzw. nicht gesetzt sein dürfen ?

    mfg Yannic

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Bei mir funktioniert die Anzeige mit dem Code. Habe es mit C geschrieben und für einen R8C. Das ist mein Code
    i2c_start();
    i2c_send(0x70);
    i2c_send(0x00);
    i2c_send(01111110);
    i2c_stop();

    Das bedeutet, dass du entweder ein Problem mit der Initialisierung des I2C ist (weiß aber nicht ob und wie initialisiert werden muss) oder mit der Hardware, z.B. schlechte Verbindung oder Ähnliches. Wollte ein Bild hochladen aber die Seite vom Bildhoster streikt gerade. Wenn du es willst kann ich es später noch versuchen.

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    20.02.2007
    Beiträge
    341
    Hi,

    Danke hätte Interesse an einem Bild.

    Gibt es denn beim Mega16 fuses die die I2C beeinflussen können ?

    mfg Yannic

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Hier ist das Bild http://j68.img-up.net/?up=DSCN3006zmjdo.JPG
    Beim Mega16 gibt es normalerweiße keine Fuses für I2C.

    PS: Es leuchten deswegen 2 Anzeigen, da ich sie im Static Mode angesteuert habe, kann sie aber auch im Dynamic Mode ansteuern.

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    20.02.2007
    Beiträge
    341
    Ich habe so das ungute Gefühl das mir irgendwie der saa1064 abgeraucht ist.

    Muss ich mir nochmal einen neuen beschaffen und einen zweiten Test starten

    mfg Yannic

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Hast du den SAA gesockelt oder fix verlötet? Wenn du vermutest, dass der abgeraucht ist, weißt du wie? Löten, falsch angeschlossen,...
    Hast du ein Messgerät, mit dem du Frequenzen messen kannst? Optimal wäre ein Logikanalyzer (hast du vermutlich nicht) oder ein Oszilloskop.

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    20.02.2007
    Beiträge
    341
    Hi,

    nur ein Multimeter, welches Frequenz 10/100 Hz/1/10/100 kHz, ± 2 % messen kann.

    das ganze ist momentan auf einem steckbrett und da tauchte auch das Problem auf.

    Ich wusste nicht, dass die X Reihe trotz unterteilungen miteinander verbunden ist und hatte somit für kurze zeit +5V Gnd Sda Scl zusammengeschlossen.

    mfg Yannic

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.544
    Dann sollte normalerweiße nichts passieren. Du könntest den Takt auf der SCL Leitung messen (mit Frequenzmessung). Hast du einen 2ten Mega16? Vielleicht ist der hinüber. Sicherheitshalber einen Mega und einen SAA bestellen.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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