发明名称 SPI控制器及通信方法
摘要 本发明涉及一种SPI控制器,包括内部总线接口模块,寄存器模块,数据转换模块,状态与中断控制模块,发送和接收数据缓存器,还包括有限状态机,用于根据寄存器模块中控制寄存器寄存的SPI传输参数和波特率寄存器寄存的SCLK波特率参数产生SS和SCLK输出。本发明提供的改进型SPI控制器,1)当被配置为主机时,SS输出完全由SPI控制器硬件自动控制,无需软件控制模拟SS输出,2)接收数据缓存器中数据的读取是可选的,减少了不必要的CPU读取接收数据缓存器操作,上述两点大大减少CPU操作SPI控制器时所需的软件控制,从而提高CPU的使用率。
申请公布号 CN103064805B 申请公布日期 2015.12.09
申请号 CN201210572669.9 申请日期 2012.12.25
申请人 深圳先进技术研究院 发明人 段长江;聂泽东
分类号 G06F13/20(2006.01)I 主分类号 G06F13/20(2006.01)I
代理机构 深圳市科进知识产权代理事务所(普通合伙) 44316 代理人 宋鹰武
主权项 一种SPI控制器,包括内部总线接口模块,用于经内部总线实现CPU操作SPI控制器;寄存器模块,接收通过内部总线接口模块传输的CPU对SPI控制器的配置;数据转换模块,用于输出数据并串转换和输入数据串并转换;状态与中断控制模块,用于报告SPI控制器的状态和产生中断,其特征在于,还包括有限状态机,用于根据寄存器模块中控制寄存器寄存的SPI传输参数和波特率寄存器寄存的SCLK波特率参数产生SS输出电平和SCLK输出;发送数据缓存器和接收数据缓存器,分别用于缓存待传输和接收到的数据;所述有限状态机包括空闲、开始、传输和结束四个状态;SPI控制器控制SS管脚工作过程为:当CPU配置SPI控制器为从机时,SPI控制器硬件自动配置SS管脚为输入,并连接到外部的SPI主机的SS输出电平,此状态下只有当SS输入电平为低电平时,SPI控制器才与外部的SPI主机进行通信;当CPU配置SPI控制器为主机时,判断SPI主机系统类型,若为单SPI主机系统,不需检测MODF信号,CPU配置SPI控制器不使能MODF信号,SPI控制器硬件自动配置SS管脚为输出,SS输出电平由SPI控制器根据SPI传输参数硬件控制;若为多SPI主机系统,需检测MODF信号,CPU配置SPI控制器使能MODF信号,SPI控制器硬件自动配置SS管脚为输入,SPI控制器检测SS输入,如果SS输入电平为低电平,则有其他的SPI主机正在操作SPI总线,SPI控制器硬件自动配置为从机,并向CPU报告MODF信号;如果SS输入电平为高电平,则没有其他的SPI主机在操作SPI总线,SPI控制器工作在主机模式,之后CPU配置SPI控制器不使能MODF信号,SPI控制器硬件自动配置SS管脚为输出,SS输出电平由SPI控制器根据SPI传输参数硬件控制。
地址 518055 广东省深圳市南山区西丽大学城学苑大道1068号
您可能感兴趣的专利