CN117493230A - 基于DSP的Mcbsp实现SPI接口的数据存储方法 - Google Patents

基于DSP的Mcbsp实现SPI接口的数据存储方法 Download PDF

Info

Publication number
CN117493230A
CN117493230A CN202311462081.2A CN202311462081A CN117493230A CN 117493230 A CN117493230 A CN 117493230A CN 202311462081 A CN202311462081 A CN 202311462081A CN 117493230 A CN117493230 A CN 117493230A
Authority
CN
China
Prior art keywords
data
register
mcbsp
sending
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311462081.2A
Other languages
English (en)
Inventor
葛宇
宋宇宸
吴文韬
邱晨
谭燕林
刘海马
路峻豪
高祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lianyungang Jierui Electronics Co Ltd
Original Assignee
Lianyungang Jierui Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lianyungang Jierui Electronics Co Ltd filed Critical Lianyungang Jierui Electronics Co Ltd
Priority to CN202311462081.2A priority Critical patent/CN117493230A/zh
Publication of CN117493230A publication Critical patent/CN117493230A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/16Memory access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种基于DSP的Mcbsp实现SPI接口的数据存储方法,包含主控芯片DSP28335和数据存储芯片EEPROM。通过配置DSP28335的Mcbsp模块的各控制寄存器,使其实现SPI接口功能,Mcbsp为主设备,EEPROM为从设备,完成将伺服控制系统的控制参数存储到EEPROM中,并完成数据回读和校验。本发明将Mcbsp模块配置成SPI模式,完成对EEPROM的数据读写,Mcbsp模块可以实现SPI的基本功能且具有更大的灵活性,EEPROM数据存储安全可靠,通用性强。

Description

基于DSP的Mcbsp实现SPI接口的数据存储方法
技术领域
本发明属于伺服控制技术领域,特别是SPI接口进行数据存储的技术领域,尤其涉及一种基于DSP的Mcbsp实现SPI接口的数据存储方法。
背景技术
伺服控制系统作为现代工业自动化与运动控制的支撑技术之一,以其高精度的控制性能、高动态性能、应用范围广等优点,被广泛应用于机床、纺织、机械臂、机器人等工业领域和航空、航天、海洋等军事领域中。一方面,在伺服控制系统中,常需用到多个SPI接口,诸如EEPROM、FLASH、AD转换器、数字信号处理器等等。而常用于伺服控制的主控芯片DSP28335,仅有1个SPI接口,此时就需要扩展SPI接口。
另一方面,伺服控制系统需要频繁的更新控制参数,并将参数存储在存储芯片中。由于Flash更适合存储音频数据、程序等不需要频繁更新、数据量大的场景,EEPROM则更适合存储伺服控制系统的这种需要频繁更新数据、数据量小的场景。因此,亟需一种通用性强、安全可靠、数据存储方法。
发明内容
本发明的目的在于针对在数据存储时,常采用的如Flash、EEPROM、铁电存储器等,大都是采用SPI数据传输协议进行读写,当DSP28335的SPI功能模块已被使用亦或是SPI引脚被复用为其他功能时,无法实现数据存储等问题,提供一种基于DSP的Mcbsp实现SPI接口的数据存储方法,能够在没有剩余的SPI模块时,将Mcbsp模块配置成SPI接口,完成数据存储功能。本发明将Mcbsp模块配置成SPI模式,完成对EEPROM的数据读写,Mcbsp模块可以实现SPI的基本功能且具有更大的灵活性,EEPROM数据存储安全可靠,通用性强。
实现本发明目的的技术解决方案为:一种基于DSP的Mcbsp实现SPI接口的数据存储方法,该方法基于DSP28335的多通道缓冲串行口Mcbsp以及带电可擦可编程只读存储器EEPROM,所述方法包括将DSP的Mcbsp模块配置成SPI接口模式,通过SPI通信对EEPROM进行数据的读写。
进一步地,所述将DSP的Mcbsp模块配置成SPI接口模式,包括:定义硬件接口,将DSP28335部分引脚复用为Mcbsp功能,设置Mcbsp为SPI的主设备,定义数据发送MDXA为主出从进MOSI,数据接受MDRA主进从出MISO,发送时钟MCLKXA为时钟信号SCLK,发送帧同步MFSXA为从设备使能信号CS。
进一步地,所述将DSP的Mcbsp模块配置成SPI接口模式,还包括:配置Mcbsp接口为SPI接口,Mcbsp为主设备,EEPROM为从设备。
进一步地,所述配置具体包括以下步骤:
步骤1,串口控制寄存器SPCR1与SPCR2中,XRST=RRST=GRST=0,清空发送控制器和接受控制器,复位采样速率发生器,完成McBSP模块复位操作;
步骤2,SPCR1寄存器中,DLB=0,禁止数字回环模式;
步骤3,SPCR1寄存器与引脚控制寄存器PCR中,CLKSTP=11b、CLKXP=0、CLKRP=1,使能Mcbsp时钟停止模式,同时配置SPI模式为低无效有延时状态,McBSP在先于CLKX的上升沿1/2个周期发送数据,在CLKR的下降沿接受数据;
步骤4,PCR寄存器中,CLKXM=1,配置Mcbsp为主设备;
步骤5,PCR寄存器、采样率产生器寄存器SRGR1和SRGR2中,SCLKME=0、CLKSM=1、CLKGDV=20h,选择内部低速时钟经过32分频后作为CLKG时钟,CLKSM采样率发生器输入时钟模式位;FSXM=1、FSGM=0、FSXP=1,配置FSX引脚是根据FSGM为驱动的输出引脚,每次数据有DXR1传输到XSR1,发送器与驱动FSX上的帧脉冲同步,引脚FSX低有效;
步骤6,接受控制寄存器RCR2和发送控制寄存器XCR2中,RDATALY=XDATALY=1;
步骤7,串口控制寄存器SPCR1中,RJUST=0,配置数据接受寄存器DRR内数据右对齐且0填充高位;接受控制寄存器RCR1和发送控制寄存器XCR1中,RWDLEN1=XWDLEN1=0,配置数据位数为8bit;
步骤8,接受控制寄存器RCR1和发送控制寄存器XCR1中,GRST=XRST=RRST=FRST=1,使能发送器和接受器,使能采样率产生器的帧同步逻辑单元。
进一步地,所述EEPROM采用HWD25CMW芯片,其可通过SPI接口访问,存储空间为2Mbits,单页大小256Bytes,读写速度最高5MHz,18位地址位,8位数据位,支持字节写操作。
进一步地,所述通过SPI通信对EEPROM进行数据的读写中,写数据具体包括以下步骤:
步骤1,拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
步骤2,发送使能写操作指令06h,给低位数据发送DXR1寄存器赋值0x0006;
步骤3,等待数据发送完成:检测到串口控制寄存器SPCR1的接收器准备位RRDY置1,表示接收器准备从数据接受寄存器DRR读取数据;并读取低位数据接受寄存器DRR1中的值;
步骤4,发送写数据操作指令02h,给DXR1寄存器赋值0x0002,以实现写数据操作,并重复步骤3,等待数据发送完成;
步骤5,发送写数据的存放地址;
步骤6,发送写数据;
步骤7,拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的写入或读取;
步骤8,读状态寄存器,判断数据是否写入完成,若完成,重复执行步骤7。
进一步地,步骤5所述发送写数据的存放地址,具体包括:先通过DXR1寄存器发送地址的高2位,重复步骤3,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复步骤3,等待数据发送完成;
步骤6所述发送写数据,具体包括:先通过DXR1寄存器发送数据的低8位,重复步骤3,等待数据发送完成;再发送数据的高8位,重复步骤3,等待数据发送完成;完成写数据的操作。
进一步地,步骤8所述读状态寄存器,判断数据是否写入完成,具体包括:发送读状态寄存器操作指令05h,读取EEPROM状态寄存器的最低位REDAY的状态,给DXR1寄存器赋值0x0005,重复步骤3,等待数据发送完成;再发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复步骤3,等待数据发送完成;然后读取DRR1寄存器的最低位,“0”表示空闲即数据写入完成,“1”表示正再执行操作。
进一步地,所述通过SPI通信对EEPROM进行数据的读写中,读数据具体包括以下步骤:
步骤1,拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
步骤2,发送读数据操作指令03h,给DXR1寄存器赋值0x0003,以实现读数据操作;
步骤3,等待数据发送完成:检测到SPCR1寄存器的接收器准备位RRDY置1,表示接收器准备从DRR寄存器读取数据;并读取DRR1寄存器中的值;
步骤4,发送读数据的读取地址:先通过DXR1寄存器发送地址的高2位,重复步骤3,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复步骤3,等待数据发送完成;
步骤5,获取读数据:先发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复步骤3,等待数据发送完成;读取DRR1寄存器中的数据,完成数据读取;
步骤6,拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的的写入或读取。
进一步地,所述通过SPI通信对EEPROM进行数据的读写中,采用取反校验:在两个不同的地址写入数据和该数据取反后的值,在读取这两个地址上的数据后,进行数据校验。
本发明与现有技术相比,其显著优点为:
(1)本发明可以实现多个SPI接口功能,在SPI接口被占用或SPI引脚复用为其他功能时,依然可以采用将Mcbsp模块配置成SPI模式,实现用SPI数据传输协议进行数据存储。
(2)本发明将Mcbsp模块配置成SPI模式,可以实现SPI的基本功能,且具备串行字长度可选、进行8位数据传输时可选择LSB或MSB为起始位、帧同步脉冲和时钟信号的极性可编程、内部时钟和帧同步脉冲的产生可编程等特殊功能,具有很大的灵活性。
(3)本发明选用成都华微电子的国产化EEPROM:HWD25CMW作为数据存储芯片,其可通过SPI接口访问,存储空间为2Mbits,单页大小256Bytes,读写速度最高5MHz,18位地址位,8位数据位,支持字节写操作,数据写入前无需进行擦除操作。
(4)本发明采用取反校验。在写入数据无校验和的情况下,通过在两个不同的地址写入该数据和该数据取反后的值,在读取这两个地址上的数据后,进行数据校验,增加了数据存储的准确性。
下面结合附图对本发明作进一步详细描述。
附图说明
图1是基于DSP的Mcbsp实现SPI接口的数据存储结构图。
图2是用DSP的Mcbsp实现SPI接口寄存器配置图。
图3是国产化EEPROM芯片的操作指令图。
图4是采用DSP的Mcbsp模拟SPI接口对国产化EEPROM进行写数据的时序图。
图5是采用DSP的Mcbsp模拟SPI接口对国产化EEPROM进行读数据的时序图。
图6是取反校验实现示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明将提供一种DSP的Mcbsp实现SPI接口的数据存储方法,基本原理如下:包含了主控芯片DSP28335和数据存储芯片EEPROM(带电可擦可编程只读存储器)。通过配置DSP28335的Mcbsp模块的各控制寄存器,使其实现SPI接口功能,Mcbsp为主设备,EEPROM为从设备。采用SPI通信协议,完成伺服控制系统的控制参数存储到EEPROM中,并进行数据回读和校验。
在一个实施例中,结合图1,提供了一种基于DSP的Mcbsp实现SPI接口的数据存储方法,复用DSP28335的Mcbsp接口为SPI接口(串行外设接口),并用SPI通信对EEPROM进行数据的读写。该方法具体过程包括:
步骤1,将DSP的Mcbsp模块配置成SPI接口模式;
步骤2,采用SPI接口对EEPROM进行数据的写入和读取。
进一步地,在其中一个实施例中,步骤1具体包括:
步骤1-1,定义硬件接口:
将DSP28335该部分引脚复用为Mcbsp功能。由于SPI通信是高速、同步、全双工总线式的,它以主从方式工作,通常有一个主设备和一个或多个从设备,需要4根线,MOSI(主出从进),MISO(主进从出),SCLK(时钟信号,由主设备产生),CS(从设备使能信号,由主设备控制,低电平选中)。设置Mcbsp为SPI的主设备,定义数据发送MDXA为主出从进MOSI,数据接受MDRA主进从出MISO,发送时钟MCLKXA为时钟信号SCLK,发送帧同步MFSXA为从设备使能信号CS。
步骤1-2,配置Mcbsp接口为SPI接口,Mcbsp为主设备,EEPROM为从设备。具体包括以下步骤:
(1)串口控制寄存器SPCR1与串口控制寄存器SPCR2中,XRST=RRST=GRST=0,清空发送控制器和接受控制器,复位采样速率发生器,完成McBSP模块复位操作;
(2)SPCR1寄存器中,DLB=0,禁止数字回环模式;
(3)串口控制寄存器SPCR1与引脚控制寄存器PCR中,CLKSTP=11b、CLKXP=0、CLKRP=1,使能Mcbsp时钟停止模式,同时配置SPI模式为低无效有延时状态,McBSP在先于CLKX的上升沿1/2个周期发送数据,在CLKR的下降沿接受数据;
(4)PCR寄存器中,CLKXM=1,配置Mcbsp为主设备;
(5)PCR寄存器、采样率产生器寄存器SRGR1和SRGR2中,SCLKME=0、CLKSM=1、CLKGDV=20h,选择内部低速时钟经过32分频后作为CLKG时钟,CLKSM采样率发生器输入时钟模式位;FSXM=1、FSGM=0、FSXP=1,配置FSX引脚是根据FSGM为驱动的输出引脚,每次数据有DXR1传输到XSR1,发送器与驱动FSX上的帧脉冲同步,引脚FSX低有效。
(6)接受控制寄存器RCR2和发送控制寄存器XCR2中,RDATALY=XDATALY=1,此设置为FSX上的信号提供正确的建立时间;
(7)串口控制寄存器SPCR1中,RJUST=0,配置数据接受寄存器DRR内数据右对齐且0填充高位;RCR1寄存器和XCR1寄存器中,RWDLEN1=XWDLEN1=0,配置数据位数为8bit;
(8)RCR1寄存器和XCR1寄存器中,GRST=XRST=RRST=FRST=1,使能发送器和接受器,使能采样率产生器的帧同步逻辑单元。
进一步地,在其中一个实施例中,步骤2所述采用SPI接口对EEPROM进行数据的写入和读取,具体包括:
步骤2-1,采用国产化EEPROM:HWD25CMW作为数据存储芯片。其可通过SPI接口访问,存储空间为2Mbits,单页大小256Bytes,读写速度最高5MHz,18位地址位,8位数据位,支持字节写操作。所选的国产化EEPROM芯片的操作指令如图3所示。
步骤2-2,采用DSP的Mcbsp模拟SPI接口对国产化EEPROM进行写数据,写数据的时序图如图4所示,具体包括以下几个步骤:
(1)拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
(2)发送使能写操作指令06h,由于配置Mcbsp的SPI接口数据右对齐且0填充高位,故给低位数据发送寄存器DXR1赋值0x0006,以实现使能写操作;
(3)等待数据发送完成。检测SPCR1寄存器的接收器准备位RRDY置1,表示接收器准备从数据接受寄存器DRR读取数据;并读取低位数据接受寄存器DRR1中的值;
(4)发送写数据操作指令02h,给DXR1寄存器赋值0x0002,以实现写数据操作,并重复(3)操作,等待数据发送完成;
(5)发送写数据的存放地址。由于EEPROM为18位地址位,8位数据位,先通过DXR1寄存器发送地址的高2位,重复(3)操作,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复(3)操作,等待数据发送完成;
(6)发送写数据。由于存储的为16位的数据,故先通过DXR1寄存器发送数据的低8位,重复(3)操作,等待数据发送完成;再发送数据的高8位,重复(3)操作,等待数据发送完成;完成写数据的操作;
(7)拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的的写入或读取。
(8)读状态寄存器,判断数据是否写入完成。发送读状态寄存器操作指令05h,读取EEPROM状态寄存器的最低位REDAY的状态,给DXR1寄存器赋值0x0005,重复(3)操作,等待数据发送完成;再发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复(3)操作,等待数据发送完成;然后读取DRR1的最低位,“0”表示空闲即数据写入完成,“1”表示正再执行操作。若完成,重复(7)操作。
步骤2-3,采用DSP的Mcbsp模拟SPI接口对国产化EEPROM进行读数据,读数据的时序图如图5所示,具体包括以下几个步骤:
(1)拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
(2)发送读数据操作指令03h,给DXR1寄存器赋值0x0003,以实现读数据操作;
(3)等待数据发送完成。检测SPCR1寄存器的接收器准备位RRDY置1,表示接收器准备从DRR寄存器读取数据;并读取DRR1寄存器中的值;
(4)发送读数据的读取地址。先通过DXR1寄存器发送地址的高2位,重复(3)操作,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复(3)操作,等待数据发送完成;
(5)获取读数据。先发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复(3)操作,等待数据发送完成;读取DDR1寄存器中的数据,完成数据读取;
(6)拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的的写入或读取。
步骤2-4,将读取的数据进行取反校验:在两个不同的地址写入该数据和该数据取反后的值,在读取这两个地址上的数据后,进行数据校验,实现方式如图6所示。
本发明所述的数据存储方法可以实现多个SPI接口功能,将Mcbsp模块配置成SPI模式,不仅可以实现SPI的基本功能,而且功能配置更具灵活性;选用国产化EEPROM作为数据存储芯片,可通过SPI接口访问,读写速度快,支持字节写操作,数据写入前无需进行擦除操作;在写入数据无校验和的情况下,对读取的数据进行取反校验,增加了数据存储的准确性。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于DSP的Mcbsp实现SPI接口的数据存储方法,该方法基于DSP28335的多通道缓冲串行口Mcbsp以及带电可擦可编程只读存储器EEPROM,其特征在于,所述方法包括将DSP的Mcbsp模块配置成SPI接口模式,通过SPI通信对EEPROM进行数据的读写。
2.根据权利要求1所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述将DSP的Mcbsp模块配置成SPI接口模式,包括:定义硬件接口,将DSP28335部分引脚复用为Mcbsp功能,设置Mcbsp为SPI的主设备,定义数据发送MDXA为主出从进MOSI,数据接受MDRA主进从出MISO,发送时钟MCLKXA为时钟信号SCLK,发送帧同步MFSXA为从设备使能信号CS。
3.根据权利要求1所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述将DSP的Mcbsp模块配置成SPI接口模式,还包括:配置Mcbsp接口为SPI接口,Mcbsp为主设备,EEPROM为从设备。
4.根据权利要求3所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述配置具体包括以下步骤:
步骤1,串口控制寄存器SPCR1与SPCR2中,XRST=RRST=GRST=0,清空发送控制器和接受控制器,复位采样速率发生器,完成McBSP模块复位操作;
步骤2,SPCR1寄存器中,DLB=0,禁止数字回环模式;
步骤3,SPCR1寄存器与引脚控制寄存器PCR中,CLKSTP=11b、CLKXP=0、CLKRP=1,使能Mcbsp时钟停止模式,同时配置SPI模式为低无效有延时状态,McBSP在先于CLKX的上升沿1/2个周期发送数据,在CLKR的下降沿接受数据;
步骤4,PCR寄存器中,CLKXM=1,配置Mcbsp为主设备;
步骤5,PCR寄存器、采样率产生器寄存器SRGR1和SRGR2中,SCLKME=0、CLKSM=1、CLKGDV=20h,选择内部低速时钟经过32分频后作为CLKG时钟,CLKSM采样率发生器输入时钟模式位;FSXM=1、FSGM=0、FSXP=1,配置FSX引脚是根据FSGM为驱动的输出引脚,每次数据有DXR1传输到XSR1,发送器与驱动FSX上的帧脉冲同步,引脚FSX低有效;
步骤6,接受控制寄存器RCR2和发送控制寄存器XCR2中,RDATALY=XDATALY=1;
步骤7,串口控制寄存器SPCR1中,RJUST=0,配置数据接受寄存器DRR内数据右对齐且0填充高位;接受控制寄存器RCR1和发送控制寄存器XCR1中,RWDLEN1=XWDLEN1=0,配置数据位数为8bit;
步骤8,接受控制寄存器RCR1和发送控制寄存器XCR1中,GRST=XRST=RRST=FRST=1,使能发送器和接受器,使能采样率产生器的帧同步逻辑单元。
5.根据权利要求4所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述EEPROM采用HWD25CMW芯片,其可通过SPI接口访问,存储空间为2Mbits,单页大小256Bytes,读写速度最高5MHz,18位地址位,8位数据位,支持字节写操作。
6.根据权利要求5所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述通过SPI通信对EEPROM进行数据的读写中,写数据具体包括以下步骤:
步骤1,拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
步骤2,发送使能写操作指令06h,给低位数据发送DXR1寄存器赋值0x0006;
步骤3,等待数据发送完成:检测到串口控制寄存器SPCR1的接收器准备位RRDY置1,表示接收器准备从数据接受寄存器DRR读取数据;并读取低位数据接受寄存器DRR1中的值;
步骤4,发送写数据操作指令02h,给DXR1寄存器赋值0x0002,以实现写数据操作,并重复步骤3,等待数据发送完成;
步骤5,发送写数据的存放地址;
步骤6,发送写数据;
步骤7,拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的写入或读取;
步骤8,读状态寄存器,判断数据是否写入完成,若完成,重复执行步骤7。
7.根据权利要求6所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,步骤5所述发送写数据的存放地址,具体包括:先通过DXR1寄存器发送地址的高2位,重复步骤3,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复步骤3,等待数据发送完成;
步骤6所述发送写数据,具体包括:先通过DXR1寄存器发送数据的低8位,重复步骤3,等待数据发送完成;再发送数据的高8位,重复步骤3,等待数据发送完成;完成写数据的操作。
8.根据权利要求6所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,步骤8所述读状态寄存器,判断数据是否写入完成,具体包括:发送读状态寄存器操作指令05h,读取EEPROM状态寄存器的最低位REDAY的状态,给DXR1寄存器赋值0x0005,重复步骤3,等待数据发送完成;再发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复步骤3,等待数据发送完成;然后读取DRR1寄存器的最低位,“0”表示空闲即数据写入完成,“1”表示正再执行操作。
9.根据权利要求6所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述通过SPI通信对EEPROM进行数据的读写中,读数据具体包括以下步骤:
步骤1,拉低发送帧同步MFSXA引脚,使能CS片选信号,选中芯片;
步骤2,发送读数据操作指令03h,给DXR1寄存器赋值0x0003,以实现读数据操作;
步骤3,等待数据发送完成:检测到SPCR1寄存器的接收器准备位RRDY置1,表示接收器准备从DRR寄存器读取数据;并读取DRR1寄存器中的值;
步骤4,发送读数据的读取地址:先通过DXR1寄存器发送地址的高2位,重复步骤3,等待数据发送完成;再分别依次发送地址的中间8位和低8位,重复步骤3,等待数据发送完成;
步骤5,获取读数据:先发送伪数据,通过DXR1寄存器发送伪数据0x0011,重复步骤3,等待数据发送完成;读取DRR1寄存器中的数据,完成数据读取;
步骤6,拉高发送帧同步MFSXA引脚,取消片选,以便开始下一次数据的的写入或读取。
10.根据权利要求1所述的基于DSP的Mcbsp实现SPI接口的数据存储方法,其特征在于,所述通过SPI通信对EEPROM进行数据的读写中,采用取反校验:在两个不同的地址写入数据和该数据取反后的值,在读取这两个地址上的数据后,进行数据校验。
CN202311462081.2A 2023-11-03 2023-11-03 基于DSP的Mcbsp实现SPI接口的数据存储方法 Pending CN117493230A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311462081.2A CN117493230A (zh) 2023-11-03 2023-11-03 基于DSP的Mcbsp实现SPI接口的数据存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311462081.2A CN117493230A (zh) 2023-11-03 2023-11-03 基于DSP的Mcbsp实现SPI接口的数据存储方法

Publications (1)

Publication Number Publication Date
CN117493230A true CN117493230A (zh) 2024-02-02

Family

ID=89673908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311462081.2A Pending CN117493230A (zh) 2023-11-03 2023-11-03 基于DSP的Mcbsp实现SPI接口的数据存储方法

Country Status (1)

Country Link
CN (1) CN117493230A (zh)

Similar Documents

Publication Publication Date Title
EP0378426A2 (en) Data transfer using bus address lines
US20110016236A1 (en) Apparatus and method for producing identifiers regardless of mixed device type in a serial interconnection
US8631179B1 (en) System and method for automatically assigning bus addresses to slave devices
CN101089838A (zh) 一种实现i2c读写时序的方法
US20100064083A1 (en) Communications device without passive pullup components
US10409749B2 (en) Semiconductor device and system provided with a communication interface
US5717948A (en) Interface circuit associated with a processor to exchange digital data in series with a peripheral device
CN101421705A (zh) 具有高储存容量的多媒体卡
CN117493230A (zh) 基于DSP的Mcbsp实现SPI接口的数据存储方法
CN1295685A (zh) 连接以不同时钟速度速率工作的设备的接口装置,和操作该接口的方法
WO1981002798A1 (en) Computer system and interface therefor
US6917994B2 (en) Device and method for automatically generating an appropriate number of wait cycles while reading a nonvolatile memory
EP1122737A1 (en) Circuit for managing the transfer of data streams from a plurality of sources within a system
CN111913904B (zh) 向利用主从通信协议的多个从属装置自动分配互不相同地址的方法及用于其的装置
CN100410898C (zh) 与填写中的快取线平行使用的可存取缓冲区及其控制方法
EP0185093A1 (en) Data transfer equipment
US20020056029A1 (en) Interface for multi-processor
JPH04233646A (ja) データ転送インタフェースモジュール
CN101021826A (zh) 桥接装置及其相关的电子系统与接口控制方法
US20220188254A1 (en) Methods for identifying target slave address for serial communication interface
KR100295683B1 (ko) 인터아이씨의 제너럴콜 어크날리지장치및 방법
KR19990008189A (ko) 전송되는 패킷을 오버래핑하여 인터페이스의 대기 시간을 감소시키는 방법 및 장치
EP2777044A1 (en) Serial memory with fast read with look-ahead
JP4747535B2 (ja) データ記録方法
CN110209609B (zh) 串行接口电路、半导体装置以及串行并行转换方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination