SAA1064 -- I2C Probleme

OP #1988250
Lesenswert?
• ▲
▼
Hi,

Ich habe ein kleines Problem mit der Ansteuerung von 4 7-Segmentanzeigen 
mittels eines SAA1064 Treibers.
1
    
2
    i2c_start();              
3
    i2c_write(0x70);
4
    i2c_write(0x00);
5
    i2c_write(0b10010111);
6

7
    i2c_write(0b00000110);
8
    i2c_write(0b01011011);
9
    i2c_write(0b01001111);
10
    i2c_write(0b01100110);
11
       
12
    i2c_stop();

Die Anzeige soll testweise 1-2-3-4 anzeigen. Allerdings wird nur die 
erste Stelle angezeigt, dir anderen bleiben dunkel. Wenn ich das 
Test-bit 1 setze, leuchten aber alle Digits.

Als Mikrocontroller verwende ich einen PIC18F4550. Als 
Programmiersprache C (MPLAB + CCS).

Weiss jemand wo der Fehler liegen kann?
Persönliche Seite #1988399
Lesenswert?
• ▲
▼
1
    i2c_start();              
2
    i2c_write(0x70); // Adresse WRITE des SAA1064
3
    i2c_write(0x00); // Subadressing Start mit 0
4

5
    // Subadressing 0 => Daten für Control Register
6
    // C7 C6 C5 C4 C3 C2 C1 C0
7
    // 1  0  0  1  0  1  1  1
8
    // +---> don't care   
9
    //    +--> keine +12mA
10
    //       +--> keine +6mA
11
    //          +--> +3mA
12
    //             +--> no test mode
13
    //                +--> Digits 2/4 not blanked
14
    //                   +--> Digits 1/3 not blanked
15
    //                      +--> dynamic mode
16
    i2c_write(0b10010111);
17

18
    // (Subadressing autoincrement) => Daten für Digits
19
    i2c_write(0b00000110); // Digit 1
20
    i2c_write(0b01011011); // Digit 2
21
    i2c_write(0b01001111); // Digit 3
22
    i2c_write(0b01100110); // Digit 4
23
       
24
    i2c_stop();

Code sieht richtig aus.

Ich würde die externe Beschaltung des ICs prüfen, ob das Multiplex 
arbeiten kann (Stichwort C_EXT). Der Code oben verlässt sich darauf 
(dynamic Mode).

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.