Nabend,
ich steh auf dem Schlauch und verstehe es nicht. Habe den Code von hier 
zum Porterweitern genommen
http://www.mikrocontroller.net/articles/Porterweiterungen#Porterweiterung_.C3.BCber_74HC595_.28Ausgang.29
(Porterweiterung über 74HC595 Ausgang)
Mittlerweile bin ich soweit, dass die Variablen alle noch wie im 
Original stehen, also so: (Verkabelt ist auf Steckbrett direkt mit dem 
entsprechenden Pin des Controllers. Habe mich beim 74HC595 an die 
Pin-Nr. gehalten)
1  | // PORTS
  | 
2  | #define PORT_com74hc595 PORTC
  | 
3  | #define PORT_SER     PC0    //74HC595 PIN 14
  | 
4  | #define PORT_SCK     PC1    //74HC595 PIN 12
  | 
5  | #define PORT_RCK     PC2    //74HC595 PIN 11
  | 
6  | #define PORT_OE     PB3    //74HC595 PIN 13
  | 
VCC und GND natürlich angeschlossen und den übrigen Pin 10 (MR) hab ich 
dauerhaft direkt an GND geschlossen.
Ich bekomm das ding nicht zum laufen...
Beim ersten mal einschalten sind die ersten 4 Ausgänge High, dann 
nochmal kurz spannungsfrei machen (kompletter Atmega8) und dann sind es 
plötzlich nurnoch die ersten 2. Nochmal, dann leuchten die ersten beiden 
nur kurz auf und alle weiteren male bleibt alles dunkel...
Wo ist denn da der Wurm drin? Ist ja schon komisch, dass es immer das 
gleiche macht, wenns mal stromlos war
Meine main:
1  | int main(void)
  | 
2  | {
 | 
3  |     com74hc595_init();
  | 
4  |   com74hc595[0]=0b00011000;
  | 
5  |   com74hc595_out();
  | 
6  |  
  | 
7  |     while(1)
  | 
8  |     {
 | 
9  |             _delay_ms( 2000 );
  | 
10  | 
  | 
11  |     }
  | 
12  | }
  |