📄 spisr.sdi
字号:
,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,;
,,,; SPISR.ASM MPB Ver:1.0 14-9-05
,,,;...............................................................
,,,;
,,,; SPI Slave Receiver program
,,,;
,,,; Waits for BCD data sent from master and displays it
,,,;
,,,;
,,,;
,,,;
,,,;
,,,;
,,,;
,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,
,,, PROCESSOR 16F877 ; define MPU
00002007,3731,, __CONFIG 0x3731 ; XT clock (4MHz)
,,,
,,,; LABEL EQUATES ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,
,,, INCLUDE "P16F877.INC" ; Standard register labels
,,,
,,,
,,,
,,,
,,,; Initialise ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,
,,, ORG 0 ; Place machine code
00000000,0000,, NOP ; Required for ICD mode
,,,
00000001,1683 1303,, BANKSEL TRISD
00000003,0188,, CLRF TRISD ; Display outputs
00000004,0194,, CLRF SSPSTAT ; Default clock timing
,,,
00000005,1283 1303,, BANKSEL PORTD
00000007,3005,, MOVLW B'00000101' ; SPI slave mode, SS disabled
00000008,0094,, MOVWF SSPCON ; SPI clock = 1MHz
,,,
,,,
,,,; MAIN LOOP ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,
00000009,1694,, BSF SSPCON,SSPEN ; Enable SPI mode
0000000A,1D8C,wait,wait BTFSS PIR1,SSPIF ; wait for SPI interrupt
0000000B,280A,, GOTO wait
,,,
0000000C,0813,, MOVF SSPBUF,W ; get data
0000000D,0088,, MOVWF PORTD ; and display
0000000E,118C,, BCF PIR1,SSPIF ; clear interrupt flag
0000000F,280A,, GOTO wait ; repeat main loop
,,,
,,,
,,,
,,, END ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -