background image
宏晶科技:www.MCU-Memory.com   Mobile:13922805190(姚永平)   Tel:0755-82948409    Fax: 0755-82944243
宏晶科技:专业单片机 / 存储器供应商   www.MCU-Memory.com   STC12C5410AD 系列 1T 8051 单片机中文指南
111
附录 B:     串行外围接口(SPI)及测试程序
STC12C5410AD 系列单片机还提供另一种高速串行通信接口—— SPI  接口。SPI 是一种全双工、高速、同
步的通信总线,有两种操作模式:主模式和从模式。在主模式中支持高达 3Mbit/s  的速率(工作频率为
12MHz 时,如果 CPU 主频采用 20MHz 到 36MHz,则可更高,从模式时速度无法太快,Fosc/8 以内较好),还
具有传输完成标志和写冲突标志保护。
SPI  接口有 4 个管脚:SPICLK/P1.7, MOSI/P1.5, MISO/P1.6 和 SS/P1.4。
● SPICLK, MOSI 和 MISO  通常和两个或更多 SPI  器件连接在一起。数据通过 MOSI 由主机传送到从机,通
过 MISO
  由从机传送到主机。S P I C L K 信号在主模式时为输出,在从模式时为输入。如果 S P I 系统被禁止,即
SPEN
  (SPCTL.6)=0(复位值),这些管脚都可作为 I/O  口使用。
● /SS 为从机选择管脚。在典型的配置中,SPI 主机使用 I/O  口选择一个 SPI 器件作为当前的从机。
  SPI 从器件通过其 /SS 脚确定是否被选择。如果满足下面的条件之一,/SS 就被忽略:
  -如果 SPI 系统被禁止,即 SPEN(SPCTL.6)=0(复位值)
  -如果 SPI 配置为主机,即 MSTR(SPCTL.4)=1,并且 P1.4  配置为输出(通过 P1M0.4  和 P1M1.4)
  -如果 /SS 脚被忽略,即 SSIG(SPCTL.7)位= 1,该脚配置用于 I/O 口功能。
注:即使 SPI 被配置为主机(MSTR = 1)
,它仍然可以通过拉低 /SS  脚配置为从机(如果 P1.4  配置为输
入且 SSIG=0)
。要使能该特性,应当置位 SPIF(SPSTAT.7)。
   典型连接如 SPI 图 1~3 所示。
8位移位寄存器
读数据缓冲区
CPU 时钟
    分频器
4, 16, 64, 128
选择
SPI 控制
SPI 状态寄存器
时钟逻辑
SPI 控制寄存器

管脚
控制
逻辑
MISO
P1.6
MOSI
P1.5
SPICLK
P1.7
SS
P1.4
  SPI
中断请求
内部
数据
总线
S P I 时钟(主机)
clock
MSTR
SPEN
SPR1
SPR0
SPIF
SSIG
SPEN
DORD
MSTR
CPHA
CPOL
SPR1
SPR0
MSTR
SPEN
SPI 方框图
STC12C5410AD 系列 1T 8051 单片机 SPI 功能模块特殊功能寄存器 
 SPI Management SFRs
Mnemonic Add
Name
  7
 6
 5
 4
 3
 2
 0
Reset value
SPCTL
85h
SPI Control Register
SSIG
 SPEN
 DORD
MSTR
CPOL CPHA
SPR1 SPR0 0000,0000
SPSTAT
84h
SPI Status Register
SPIF
 WCOL
 -
 -
 -
 -
00xx,xxxx
SPDAT
86h
SPI Data Register
0000,0000
WCOL