Forum: Mikrocontroller und Digitale Elektronik SPI Schnittstelle in Assembler AT90PWM3B


von HDJW (Gast)


Lesenswert?

Hi, ich will eine Ansteuerung der SPI-Schnittstelle erstellen mit den 
AT90PWM3B Chip. Unten ist mein Quellcode bis jetzt, builden und in den 
Chip schreiben geht schon, aber irgendwie komm ich nicht weiter, kann 
mir da jemand helfen, ich hab das Gefühl das diesen Chip mit diesem 
Problem keiner  verwendet, deswegen finde ich auch nicht ein 
vernünftiges Beispiel..


.include "pwm3bdef.inc"
.def Temp    =r16
.def A      =r17;
.equ DDR_SPI  = DDRB
.equ DD_MISO  = 0
out   DDRB,Temp;
out    PORTB,temp

PROG:
  ldi   Temp, HIGH(0x2FF)  ;Init stack @ 0x2FF
  out   SPH, Temp
  ldi   Temp, LOW(0x2FF)
  out   SPL, Temp
  ldi   Temp, 0xFF  ;0xFF ins Arbeitsregister r16 laden
  out   DDRB, Temp  ;Inhalt von r16 ins IO-Register DDRB ausgeben

SPI_SlaveInit:
  ldi  r17,(1<<DD_MISO)
  out  DDR_SPI,r17
  ldi  r17,(1<<SPE)
  out  SPCR,r17
ret

SPI_SlaveReceive:
  in  r17,SPSR
  sbrs   r17,SPIF
  rjmp   SPI_SlaveReceive
  in  r16,SPDR
ret

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.