
MCP3301
7.3
使用MCP3301与
微控制器( MCU ) SPI端口
第三时钟脉冲的下降沿,其次是
剩余的12个数据位( MSB在前) 。一旦前八
时钟发送到设备,所述microcontrol-
LER接收缓冲器将包含2个未知位(为
第2时钟时,输出为高阻抗)时,请按照
由零位,符号位和最高顺序lowed
四个比特的转换。后的第二个八
时钟已发送到设备, MCU接收
寄存器将包含最低的8位数据。通告
即,在时钟16的下降沿时,ADC已经开始
移出LSB第一个数据。
图7-5显示了同样的情景在SPI模式1,1 ,
这就要求时钟的空闲状态为高电平。如
与模式0,0 , ADC输出的数据下跌
从时钟边沿和MCU锁存数据
模数转换器在时钟的上升沿。
与大多数单片机的SPI端口,它需要
输出8位数据的时间。使用硬件SPI端口
与MCP3301是很容易的,因为每个转换
需要16个时钟周期。例如,图7-4和
图7-5显示了如何将MCP3301可以连接
用一个标准的SPI接口的微控制器。自从
MCP3301总是提供时钟数据列上的下降沿
时钟,单片机的SPI端口必须配置相匹配
此操作。 SPI模式0,0 (时钟空闲状态为低电平)和SPI
模式1,1 (时钟空闲时为高电平)是既兼容
在MCP3301 。图7-4描述了所示的操作
在SPI模式0,0 ,要求从该CLK
单片机的空闲状态为“低”状态。如图中
图中,符号位被同步输出的ADC的
CS
MCU从ADC数据锁存
在SCLK的上升沿
CLK
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
数据同步出
ADC在下降沿
D
OUT
高阻
NULL SB B11 B10
位
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0 B1
高阻
LSB第一个数据开始
出来
?
?
0
SB
B11 B10 B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
X =无关位
? =未知位
存入单片机的数据接收寄存器
第8位的传输之后
存入单片机的数据接收寄存器
的第二个8位发送后
图7-4:
与MCP3301的SPI通信采用8位段
(模式0,0 : SCLK空闲状态为低电平) 。
CS
MCU从ADC数据锁存
在SCLK的上升沿
CLK
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
数据同步出
ADC在下降沿
D
OUT
高阻
NULL SB
位
B11 B10
B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
高阻
LSB第一个数据开始
出来
?
?
0
SB
B11 B10 B9
B8
B7
B6
B5
B4
B3
B2
B1
B0
存入单片机的数据接收寄存器
第8位的传输之后
存入单片机的数据接收寄存器
的第二个8位发送后
X =无关位
? =未知位
图7-5:
与MCP3301的SPI通信采用8位段
(模式1,1 : SCLK空闲状态为高电平) 。
DS21700B第22页
2002年Microchip的科技公司