Richtig ich habe jetzt acuh bisle combiniert und folgendes daraus
gamacht
Schiebe:
out SPDR,r16
Schiebe1:
ldi r18, SPSR
sbrs r18, SPIF
breq schiebe1
beim ersten senden springt er aus der schleife und macht weiter aber
dann beim 2. bit senden springt er nicht mehr raus und ist in einer
endlos schleife wisst ihr wocher es kommt?
Und wie ist es eigentlich möglich dass wenn ich ISP als master
initialisiere, der Compiler von AVR Studio4 beim nächsten befehl(auch
wenn es nur ein "nop" ist) das Master bit entfernt... dadurch ist
natürlich auch keine kommunikation mehr möglich.
hier meine init
equ SCHIEBE_DDR = DDRB
.equ SCHIEBE_PORT = PORTB
.equ RCK1 = DDB4 ; SS
.equ RCK2 = DDB5 ; SS
.equ SCK = DDB1 ; SCK
.equ SIN = DDB2 ; MOSI
.equ SOT = DDB3 ; MISO
;
; SCK, MOSI, SS als Ausgänge schalten
;
in temp1,SCHIEBE_DDR ;habe 2 SS wegen meiner Hardware 2
Geräte
ori temp1,(1<<SIN) | (1<<SCK) | (1<<RCK1)| (1<<RCK2)
out SCHIEBE_DDR,temp1
;
; SPI Modul konfigurieren
;
ldi temp1, 0b01010010
out SPCR, temp1 ; keine Interrupts, MSB first, Master
; CPOL = 0, CPHA =0
habe es auch schon so versucht wie im datenblatt aber es will einfach
nicht funktionieren.
habt ihr schon erfahrungen damit gemacht?