⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 关于spi总线的读写程序一点探讨.txt

📁 这是有关SPI总线的一段读写程序
💻 TXT
字号:
关于SPI总线的读写程序一点探讨  

 

一个SPI接口的器件(即DI,DO,SCLK,CS四条线的借口),它的要求是: 
MCU写(write):在时钟的下降沿把数据存入器件内的寄存器 
MCU读(read):在时钟的上升沿把数据从器件内的寄存器读入单片机。 
而且要求单片机在上升沿进行对器件的读写,数据变化要求在时钟高电平时进行。 
当sclk=1,cs从高跳到低表示开始。cs为高表示没有选中器件。它的时序图如下: 
对于这样一个要求的SPI借口器件我写了一个单片机写的程序不知道 
OUTOFFSETWRITE EQU 30H 
OUTOFFSETREAD EQU 31H 
CS EQU P1.0 
SCLK EQU P1.2 
DOU EQU P1.1 
DIN EQU P1.3 
ORG 0000H 
JMP MAIN 
ORG 004BH 
MAIN: 
MOV SP,#60H 
;开始子程序 
START: 
setb sclk 
nop 
nop 
clr cs 
NOP 
RET 
;结束子程序 
SETB CS 
NOP 
NOP 
NOP 
RET 
;写子程序 
WRITE: 
SETB SCLK 
MOV R1,#08H 
CLR C 
MOV A,OUTOFFSETWRITE 
AGAIN1: 
RLC A 
MOV DIN,C 
CLR SCLK 
DJNZ R1,AGAIN1 
SETB SCLK 
RET 
;读子程序 
WRITE: 
SETB SCLK 
CLR C 
MOV R1,#08H 
MOV A,OUTOFFSETREAD 
AGAIN2: 
MOV C,DOU 
RLC A 
CLR SCLK 
DJNZ R1,AGAIN2 
SETB SCLK 
RET 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -