EM78P350N
8-Bit Microprocessor with OTP ROM
;for slave
PORT7 == 0X07
SPIRB == 0X0A
SPIWB == 0X0B
SPIS == 0X0C
RBF == 0
SCK_OD == 2
SDO_OD == 3
TD0 == 5
TD1 == 6
DORD == 7
SPIC == 0X0D
SBRS0 == 0
SBRS1 == 1
SBRS2 == 2
SDOC == 3
SSE == 4
SRO == 5
SPIE == 6
CES == 7
IOC7 == 0X07
TC4CR == 0X09
TM4P0 == 0
TM4P1 == 1
TM4E == 2
TM4IF == 4
TM4IE == 5
SPIF == 6
SPIE == 7
ORG 0X00
; reset vector
JMP INITIAL
ORG 0X08
BANK 0
; SPI interrupt vector
IOR
AND
IOW
RETI
TC4CR
A,@0B10111111
TC4CR
; Clear SPI interrupt flag
ORG 0X50
INITIAL:
MOV A,@0X00
IOW
IOC7
; set port7 as output
MOV PORT7,A
MOV A,@0X80
IOW TC4CR
; enable SPI interrupt
; clear SPI interrupt flag
; SPI shift enable bit
; shift left
BS
SPIC,SPIE
BC SPIS,DORD
BC SPIS,TD0
BC SPIS,TD1
BC SPIC,CES
BC SPIS,DORD
BS SPIC,SBRS0
BC SPIC,SBRS1
BS SPIC,SBRS2
BC SPIC,SDOC
ENI
;SDOstatusoutputdelaytimes:8clocks
; rising edge
; shift left
; set baud rate: /SS enable
; SDO output status control bit: High
MIAN:
BS
SPIC,SSE
SPIS,RBF
$-1
SPIC,SRO
MAIN
; SPI start transmit
; determine data receive finish
JBS
JMP
JBC
JMP
; determine data overflow
; receive data
MOV A,SPIRB
MOV PORT7,A
NOP
JMP MAIN
Product Specification (V 1.0) 09.14.2006
(This specification is subject to change without further notice)
• 47