please dont rip this site

PIC Microcontoller SPI Input / Ouput Method

16C73 SPI Slave Mode

Josef Hanzal, M. S. [snail at iol.cz] of Snail Instruments +420-311-624433 says:

I have used SPI on PIC16C73 in slave mode to catch data sent to MAX7213 LED display driver. As far as I remember, it worked without much troubles. Extracted code below. The underscored bit names are #defines including the proper register, like #define _C STATUS,0


 CBLOCK __GPRAM
        TEMPW, TEMPS, TEMPF
        FLAGS ...
        SSPADR...
        ....
 ENDC
 CBLOCK 0x60
        SSPDAT:SSPBLEN
 ENDC

#define _FSSPDT FLAGS,6

; ================================================================
; INTERRUPT--INTERRUPT--INTERRUPT--INTERRUPT--INTERRUPT--INTERRUPT
; ================================================================
        ORG     4
        _INT_SAVE_REG TEMPW, TEMPS
SSPINT: BTFSS   _SSPIF
        GOTO    INTER
        BCF     _SSPIF
        BTFSC   _FSSPDT         ;flag indicates if address or data
        GOTO    SSPI0           ;was received, it is MAX7213 specific
        MOVF    SSPBUF,W
        ADDLW   SSPDAT
        MOVWF   SSPADR
        BSF     _FSSPDT
        GOTO    IEND
SSPI0:  MOVFF   FSR,TEMPF
        MOVFF   SSPADR,FSR
        MOVFF   SSPBUF,INDF
        MOVFF   TEMPF,FSR
        GOTO    IEND
INTER:  BTFSS   _INTF           ;RB0 connected to CS of Maxim
        GOTO    IEND
        BCF     _INTF
        BCF     _FSSPDT
        BSF     _FDSUPD
        ;GOTO   IEND
IEND:   _INT_RESTORE_REG TEMPW,TEMPS
        RETFIE

SPI inicialization:

 LDB    SSPCON,B'00110101'      ;ENABLE SPI SLAVE, RECEIVE ON RISING EDGE
 LDB    RCSTA,1<<SPEN|1<<CREN   ;ENABLE RECEIVE, ENABLE SERIAL ASYNC. COMM.

Macros:
 MOVFF S,D =  MOVF S,W; MOVWF D
 LDB F,K   =  MOVLW K; MOVWF F



file: /Techref/microchip/16c73/spislave.htm, 2KB, , updated: 2006/4/7 21:07, local time: 2024/3/28 14:37,
TOP NEW HELP FIND: 
44.200.39.110:LOG IN

 ©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://www.massmind.org/techref/microchip/16c73/spislave.htm"> PIC Microcontoller Input / Ouput Method - 16C73 SPI Slave Mode</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here: 
if you want a response, please enter your email address: 
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

 

Welcome to massmind.org!

 

Welcome to www.massmind.org!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  .