7)等待两个时钟周期以确保McBSP内部逻辑稳定
将McBSP配置成SPI模式主机模式的程序如下所示:
STM SPCR1 SPSA0
STM 0000H SPSD0 ; 串行接口接收器被禁止并且处于复位状态
STM SPCR2 SPSA0
STM 0000HSPSD0 ; 串行发送接收器被禁止并且处于复位状态
STM RCR1 SPSA0
STM 0020HSPSD0 ;接收帧长度为12bit
STM RCR2 SPSA0
STM 0021HSPSD0 ;第一个接收帧同步脉冲之后的帧同步脉冲被忽略
STM XCR1 SPSA0
STM 0000HSPSD0 ;发送帧长度为8bit
STM XCR2 SPSA0
STM 0001HSPSD0 ;第一个发送帧同步脉冲之后的帧同步脉冲被忽略
STM SRGR1 SPSA0
STM 0009H SPSD0 ; CLKGDV=9CLKG=1MHz
STM SRGR2 SPSA0
STM 20FFHSPSD0 ;采样率发生器时钟由CPU时钟提供
STM PCR SPSA0
STM 0A7FHSPSD0 ; FSXCLKX输出FSRCLKR输入
STM SPCR1 SPSA1
STM 1801hSPSD1 ;使McBSP处于时钟停止模式并使能接收器
STM SPCR2 SPSA1
ORM #00C1HSPSD1 ;使能发送器,帧同步发生器,采用率产生器
RPT #2
NOP
中断服务程序:
AD_RECV: SSBX SXM
AND #0FFFCHa ;存储A/D转换的数据
RSBX SXM
RETE
结束语
本文详细介绍了ADC芯片MAX147与TI公司的数字处理器TMS320C5402之间的串行接口电路设计及程序设计实现了多路数据采集系统该系统设计方案,接口电路简单方便,程序采用汇编语言编程,运行稳定,速度快,适用于语音处理,声波振动信号采集,具有较高的实用价值及广泛的应用前景