Hallo,
ich hatte da noch ein paar Chips rumliegen und wie immer zu wenig Pins an meinem ATtiny45. Wie der Vorgänger wird diese Anzeige auch nur mit 2 Ader in SW-SPI angesteuert.

Bei dieser neuen Version ist es aber nicht mehr notwendig die einzelnen Ziffern vom µC aus zu multiplexen. Die einmalige Ausgabe aller 4 Ziffern wird in den kaskadierten Schieberegistern gespeichert und durch einen externen Takt zb von einem 555, an die Siebensegmentanzeige ausgegeben.

Die Inverter sorgen dafür, daß durch inaktiv schalten von Output Enable am 595 alle Ausgänge hochohmig werden, bis auf die, die gerade zur Segmentansteuerung gebraucht werden.

Jetzt brauch ich nur per SPI entsprechende Daten dann auszugeben, wenn sie wirklich anfallen und kann dadurch Recourcen zum Multiplexen einsparen.

Na gut, sowas könnte man sicher auch einfach haben. Für mich war und ist es eine schöne Übung. Konnte bisher nur 2 Ziffern realisieren, da mir noch zwei 595er fehlen.

Code:
                                               VCC                  .-----------------.
                                                +                   |       .---------)-.  irgendein
                                                |      .------------)-------)---.     | |      Takt
                                                o------)------------)-----. | .-)-----)-)-------<
                                                |      |            |     | | | | | | | |
      Seg A                                     |     ===           |     o_o_o_o_o_o_o_o
 D1.->|--o--   Q0-------------------------------)--.  GND           |    |  4017         |
   |     |B                              __     |  |                |    |1_ _ _ _ _ _ _ |
   |->|--)--   Q1---------------o------o|1 |o---o  |                |     o o o o o o o o
   |     |     Q2-------------o-)------o|  |o---)--o       ---------)--.  | | | | | | | |
         |     Q3-----------o-)-)------o|  |o---)--)------'    /|   |  |      | | |     |
         |     Q4---------o-)-)-)------o|  |o---)--)------o--O< |---)--)------. | |     |
         |     Q5-------o-)-)-)-)------o|  |o---)--)------'    \|   |  |      | | |     |
         |     Q6-----o-)-)-)-)-)------o|  |o---)--)----.   Inverter|  |      | | |     |  SPI data
         |            | | | | | |     -o|  |o---o  |    |           |  '------)-)-)-----)-------<
    Seg A|            | | | | | |   o--o|__|o---)--)--. |           |         | | |     |
 D2  ->|-o            | | | | | |   |   595     |  |  | |           |         | | |     |  SPI clock
         |            | | | | | |   |    __     |  |  | o-----------)---------)-)-)-----)-------<
 D3  ->|-o            | | | | | o---)--o|1 |o---o  |  | |           |         | | |     |
         |            | | | | o-)---)--o|  |o---)--o  | |           |         | | |     |
 D4  ->|-'            | | | o-)-)---)--o|  |o---)--)--' |      /|   |         | | |     |
                      | | o-)-)-)---)--o|  |o---)--)----)-o--O< |---)---------)-. |     |
                      | o-)-)-)-)---)--o|  |o---)--)----)-'    \|   |         | | |     |
 4 X 7 Seg            o-)-)-)-)-)---)--o|  |o---)--)----o           |         | | |     |
 mit gem. Anode       | | | | | |   | -o|  |o---o  |    |           |         | | |     |
                      | | | | | |   o--o|__|o---)--)--. |           |         | | |     |
                      | | | | | |   |    595    |  |  | |           |         | | |     |
                      | | | | | |   |    __     |  |  | |           |         | | |     |
                      | | | | | o---)--o|1 |o---|  |  | |           |         | | |     |
                      | | | | o-)---)--o|  |o---)--o  | |           |         | | |     |
                      | | | o-)-)---)--o|  |o---)--)--' |      /|   |         | | |     |
                      | | o-)-)-)---)--o|  |o---)--)----)-o--O< |---.         | | |     |
                      | o-)-)-)-)---)--o|  |o---)--)----)-'    \|   |         | | |     |
                      o-)-)-)-)-)---)--o|  |o---)--)----o           |         | | |     |
                      | | | | | |   | -o|  |o---'  |    |           |         | | |     |
                      | | | | | |   o--o|__|o------)--. |           |         | | |     |
                      | | | | | |   |    595       |  | |           |         | | |     |
                      | | | | |    ===             |  | |           |         | | |    ===
                      | | | |      GND             |  | |      /|   |         | | |    GND
                      | | |                        |  | | .--O< |---)---------)-)-.
                      | |                          |  |   |    \|   |         | | |
   eventuell         Q6                           Q0  |   |         |         | | |
   Treiber                                                          |         | | |
     /|     Digit 1                                                 |         | | |
  --< |-------------------------------------------------------------)---------' | |
     \|   D2 -------------------------------------------------------)-----------' |
       D3 ----------------------------------------------------------              |
     D4 --------------------------------------------------------------------------'




                        Pin Belegung

           74HC595N                          HEF4017B
             __                                 __
       Q1 -o|1 |o- VCC                    Q5 -o|1 |o- VCC
       Q2 -o|  |o- Q0                     Q1 -o|  |o- MR
       Q3 -o|  |o- Ds                     Q0 -o|  |o- CP0
       Q4 -o|  |o- OE (low aktiv)         Q2 -o|  |o- CP1 (low aktiv)
       Q5 -o|  |o- STcp                   Q6 -o|  |o- Q5-9 (low aktiv)
       Q6 -o|  |o- SHcp     .             Q7 -o|  |o- Q9
       Q7 -o|  |o- MR (low aktiv          Q3 -o|  |o- Q4
      GND -o|__|o- Q7'                   GND -o|__|o- Q8

PS Frisch vom Basteltisch weiß ich noch nicht ob es versteckte Fehler gibt. Bis jetzt funktioniert es perfekt. (Hoffe natürlich auch, das ich die ASCII Art fehlerfrei hinbekommen habe

Gruß
Searcher