Hallo zusammen, ich habe ein Schieberegister an meinem ATMega8
angeschlossen.(wie im Anhang dargestellt)
Steuerung via SPI funktioniert enínwandfrei.
Wenn ich jedoch einen Schiebevorgang stand alone losjage verändert sich
das LED Muster nicht :-(
Codeauschnitt:
bis hier hin steht der Code via SPI Modul und das Muster 0b00000011 wird
an die LED´s ausgegeben.
....
cbi schiebe_port, SIN
sbi schiebe_port, SCK
cbi schiebe_port, SCK
sbi schiebe_port, RCK
cbi schiebe_port, RCK
....
der Code sollte doch ein Schiebevorgang verursachen und das Muster
0b00000110
erzeugen oder?
Danke für eure Unterstüzung.
Luigi A. schrieb:> Codeauschnitt:>> bis hier hin steht der Code via SPI Modul und das Muster 0b00000011 wird> an die LED´s ausgegeben.>> ....> cbi schiebe_port, SIN> sbi schiebe_port, SCK> cbi schiebe_port, SCK> sbi schiebe_port, RCK> cbi schiebe_port, RCK> ....>> der Code sollte doch ein Schiebevorgang verursachen
ja sollte er.
Bist du zb sicher, dass du nicht anderwärtig gleich danach wieder das
urspüngliche Muster drüber jagst?
/Genau deswegen haben wir hier keine Freude mit Code-Schnipseln. Man
sieht einfach nicht, was sonst noch so alles passiert und welche
Nebenbedingungen existieren.
So beim Überfliegen würde ich sagen, dass es deshalb nicht geht, weil du
nach Init des SPI keinen Zugriff mehr auf die IO-Pins SCK und MOSI hast.
Wenn du nach derinem Wait1s den SPI deaktivierst, sollte sich was
ändern.