?数据从SPIRXBUF读回时是右对齐的。
9.5 SPI波特率和时钟模式
SPI模块支持 125种 不同的波特率和 4种不同的时钟模式 。SPI 最特率 为CLKOUT频率的四分之一。
9.5.1 SPI波特率的确定
SPI波特率取决于 CLKOUT和 SPIBRR的值。
(1)对于SPIBRR= 3-127
SPI波特率=CLKOUT/(SPIBRR+1)
(2) 对于SPIBRR= 0-2
SPI波特率=CLKOUT/4
SPI最特率=CLKOUT/4=10MHz
9.5.2 SPI时钟模式
SPI有 四种时钟模式,由CLOCK POLARITY 和CLOCK
PHASE位控制。 CLOCK POLARITY 位选择时钟的有效沿是上升沿还是下降沿,CLOCK PHASE位选择是否有半个时钟周期的延时。
(1)下降沿,无延时,SPI在时钟下降沿发送数据,在时钟的上升沿接收数据;
(2)下降沿,有延时,SPI在时钟下降沿前半个周期发送数据,在时钟的下降沿接收数据;
(3)上升沿,无延时,SPI在时钟上升沿发送数据,在时钟的下降沿接收数据;
(4)上升沿,有延时,SPI在时钟上升沿前半个周期发送数据,在时钟的上升沿接收数据。
4种时钟模式如图9-4所示。
9.6 SPI的复位和初始化系统复位使SPI管脚功能被选定为通用输入,要 对SPI的配置,需要做以下工作:
(1) 设置SPI SW RESET位(SPICCR.7)的值为0,强制
SPI复位;
(2) 初始化SPI的配置、格式、波特率和管脚功能为期望值;
(3) 设置SPI SW RESET位为1,从复位状态释放SPI;
(4) 向SPIDAT或SPITXBUF写数据;
(5) 数据发送完成后(SPISTS.6=1),读取SPIRXBUF已确定接收的数据。
SPI应用实例(控制串行D/A)
DAC714是 美国BB公司生产的16位具有串行接口的数模转换器,电压输出型,输出范围是-10V+10V。
串行时钟串行数据输入引脚数据更新使能引脚数据输入使能引脚
DAC714控制时序
DSP与DAC714连接框图
SPICLK
SPICLK
SPISIMO SDI
A0*SPISTE*
A1*
SPISOMI
串行数据
SPI选通串行时钟
2407 DAC714
UP/DA
由控制时序图可知,SPI时钟模式应为下降沿,无延时。即SPI在时钟下降沿发送数据,在时钟的上升沿将数据锁存到DAC714。
第10章 CAN控制器模块世界向着网络化方向发展,测控系统也不例外。
CAN总线的出现,使 控制系统的网络化 成为可能,是国际公认的一种现场总线协议。
CAN (Controller Area Network)总线是 德国Bosch
公司 为解决 现代汽车中众多的控制单元与测试仪器之间的数据交换 而开发的一种 串行数据通信协议 。
CAN总线问世以来,以高效率、低成本和快速性等特点迅速在汽车电子、测量仪器、控制系统得到广泛的应用。
CAN协议一般用来 管理控制器、传感器、执行器和人机接口 之间的数据传输; 使用双绞线,给用户提供了一种 低成本的系统连网 方案。
由于协议本身的优点,总线上的数据绝对不会发生冲突、数据遗失等现象,使得CAN广泛 用于环境恶劣的工业现场和自动化生产线 。
LF24xx系列DSP控制器作为第一个具有片上CAN控制模块的DSP芯片,给用户提供一个设计分布式或网络化运动控制系统的无限可能。
LF240X配置了一个符合 CAN2.0B协议 的CAN模块。
CAN总线是一种多主总线,通信介质可以是绞线、同轴电缆或光导纤维,通信速率可达1Mbps,通信 距离可达10km 。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-29489-41.html