3471|1

5310

帖子

453

TA的资源

五彩晶圆(高级)

楼主
 

基于Hercules 的工业“安全”控制系统-SPI学习 [复制链接]

基于Hercules 的工业“安全”控制系统-SPI学习

资源说明:
HALCoGen 03.05.02
TMS570LS04x/03x 16/32-Bit RISC Flash Microcontroller  Technical Reference Manual
一、SPI功能逻辑图

MibSPI可以配置正常功能SPI和多缓冲SPI, 上电或一个系统级的复位后,每个模块中的寄存器位被设置为默认状态。复位位被设置为1后该寄存器才是可写的。
二 、兼容性(SPI)模式配置
下面软件配置步骤的详细列表,发送或接收的数据前应执行的。
只要SPIENA保持低, 整个时间,正在配置SPI, 寄存器进行编程的顺序是不重要的.
•通过设置RESET位启用SPI
•通过设置在SPIPC0寄存器相应位,设置SIMO,SOMI,CLK和可选CSX,ENA引脚配置为SPI功能。
•配置模块功能的Master或Slave使用CLKMOD和MASTER位。
•配置使用SPIFMTx寄存器所需的SPI数据格式。
•如果该模块选择为主机的功能,可使用SPIDELAY寄存器配置延时参数。
•如果需要使用SPIINT0寄存器使能中断。
•选择要使用的CS通过设置在SPIDAT1寄存器CSNR位。
•如果需要配置在SPIDAT1寄存器CSHOLD和WDEL位。
•通过设置DFSEL位选择数据字格式,选择配置SPIFMTx寄存器(0到3)的数来用于通信。
•设置LOOPBACK位内部连接发送器和接收器。
(此功能是用来进行自我测试。不要配置到外部设备的正常通信)。
•SPI配置后设置SPIENA 为1。
•使用SPIDAT1和SPIBUF寄存器,进行发送和接收数据。
•写下一个数据到SPIDAT1寄存器前,用户必须等待TXFULL 复位或TXINT。
•从SPIBUF寄存器读取数据之前,用户必须等待 RXEMPTY  复位或RXINT
三、HALCoGen初始化的了解
SPI Global Control Register 1 (SPIGCR1)-Bit0
SPIGCR1[1]:CLKMOD             时钟模式
SPIGCR1[0]:MASTER              主,从机模式
SPI Interrupt Register (SPIINT0)
SPIINT0[24] :ENABLE HIGHZ      SPIENA脚高阻抗使能
SPI Interrupt Register (SPIINT0)
SPIINT0[9]:TXINT                  发送中断。
SPIINT0[8]:RXINT                  接收中断。
SPIINT0[6]:OVRNINT            接收溢出中断。
SPIINT0[4]:BITERR        位错误中断。
SPIINT0[3]:DESYNC             无法同步从机中断。 (主模式)
SPIINT0[2]:PARERR             奇偶错误中断
SPIINT0[1]:TIMEOUT            SPIENA引脚超时中断。
SPIINT0[0]:DLNERR             数据长度错误中断(线)选择。
SPI Interrupt Level Register (SPILVL)
SPILVL[9]TXINTLVL                    发送中断级  
SPILVL[8]RXINTLVL                    接收中断级
SPILVL[6]RXOVRNINTLVL         接收溢出中断级
SPILVL[4]BITERRLVL                 位错误中断级
SPILVL[3]DESYNCLVL               无法同步从机中断级。 (主模式)
SPILVL[2]PARERRLVL               奇偶错误中断级
SPILVL[1]TIMEOUTLVL              SPIENA引脚超时中断级。
SPILVL[0]DLENERRLVL            数据长度错误中断级(线)选择。
SPI Data Format Registers (SPIFMT)
Shift LSB first      SPIFMT[20]:SHIFTDIR                    数据格式x移位方向
Wait for Enable   SPIFMT[21]:WAITENA                         主站等待从站的数据格式XENA信号
Parity enable     SPIFMT[22]: PARITYENA                           数据格式x奇偶使能。
Odd parity        SPIFMT[23]: PARPOL                         奇偶极性
Clock Polarity       SPIFMT[17]: POLARITY                      SPI数据格式x时钟极性
Clock Phase          SPIFMT[16]: PHASE                                   SPI数据格式x时钟延迟
Wdelay            SPIFMT[31..24]:WDELAY                  传输的数据格式XX=0,1,2,3)之间延迟
Charlen              SPIFMT[4..0]: CHARLEN                   SPI数据格式x的数据字的长度
Baudrate          Brformatx=VCLK1/(PRESCALEx+1);SPICLK(VCLK) 波特率
SPI Delay Register (SPIDELAY)
SPIDELAY[31..24]:C2TDELAY:片选激活发送开始
SPIDELAY[23..16]:T2CDELAY:发送结束片选无效
SPIDELAY[ 7..0 ]:C2EDELAY:片选ENA超时
SPIDELAY[15..8 ]:T2EDELAY:发送完成ENA无效超时
SPI Pin Control Register 0 (SPIPC0) GIOSPI功能选择脚
SPI Pin Control Register 1 (SPIPC1) SPI功能脚方向
SPI Pin Control Register 2 (SPIPC2) SPI功能脚电平
SPI Pin Control Register 3 (SPIPC3) SPI读功能脚电平
SPI Pin Control Register 4 (SPIPC4) 置位SPI功能脚
SPI Pin Control Register 5 (SPIPC5) 清除SPI功能脚
SPI Pin Control Register 6 (SPIPC6) SPI功能脚开漏使能
SPI Pin Control Register 7 (SPIPC7) SPI功能脚拉控制启用/禁用
SPI Pin Control Register 8 (SPIPC8) SPI功能脚上,下拉选择

最新回复

:carnation:  详情 回复 发表于 2013-7-27 09:54
 
点赞 关注(1)

回复
举报

1万

帖子

16

TA的资源

版主

沙发
 

写得很详细顶一下

:carnation:
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表