Gast
#234015
Ich verstehe es nicht. Seit einiger Zeit versuche ich ein Schieberegister (74HC595) anzusteuern. Klappt aber alles nicht so wie soll. An dem Dingen hängt ein 7-Segment Display. hier mein Test-Code _delay_ms(50); PORTA = 0b00000101; //SI high & SCK high _delay_ms(50); PORTA = 0b00000001; //SI low & SCK low _delay_ms(50); PORTA = 0b00000101; _delay_ms(50); PORTA = 0b00000001; _delay_ms(50); PORTA = 0b00000101; _delay_ms(50); PORTA = 0b00000001; _delay_ms(50); PORTA = 0b00000101; _delay_ms(50); PORTA = 0b00000001; _delay_ms(50); PORTA = 0b00000100; _delay_ms(50); PORTA = 0b00000000; _delay_ms(50); PORTA = 0b00000100; _delay_ms(50); PORTA = 0b00000000; _delay_ms(50); PORTA = 0b00000100; _delay_ms(50); PORTA = 0b00000000; _delay_ms(50); PORTA = 0b00000100; _delay_ms(50); PORTA = 0b00000000; _delay_ms(50); PORTA = 0b00000010; //RCK _delay_ms(50); PORTA = 0b00000000; _delay_ms(1000); PINA0 ist mit SI vom 74HC595 verbunden, PINA1 mit RCK (storage) und PINA2 mit SCK. Eigentlich will ich die ersten 4 Pins auf High ziehen, den Rest auf 0. Als Ausgabe erhalte ich aber 00011110 (QA...QH) ??? Wenn ich alles richtig verstanden habe, dann funktioniert das Dingen eigentlich so: Das Signal von SI wird bei einem Highpegel von SCK übernommen. Bei RCK = 1 wird das ganze dann ausgegeben. Richtig? Die erste Zahl, die ich reinschiebe entspricht dem QA, oder?