zoukankan      html  css  js  c++  java
  • Blackfin DSP(七):用SPORT口模拟SPI

    1.问题的提出

      当系统从SPI device启动时,若SCLK = 133M,则SPI的最大速度为33M。然而,有一些串行的flash设备能更快的运行,因此,如果我们使用SPORT口,它的最大速度为SCLK/2=66M

    2.硬件连接方法

      

      SPI接口只有主设备发出SCK信号,因此需要将TSCLK配置为内部产生,RSCLK配置为从外部接收,并在硬件上将它们连接在一起;

      DT1PRI作为MOSI,DR1PRI作为MISO。

      根据帧同步信号的特点,将其作为片选信号,作为SCK的门控因子,指示SCK的有效时段。

    3.配置方法

      

    void Init_SPORT1( void )  /* 由于使用SPI读写时序,所以进行初始化 */
    {
        ////////////////发送配置//////////////
        *pSPORT1_TCR1 =  TCKFE|LATFS|LTFS|TFSR|ITFS|ITCLK;
        *pSPORT1_TCR2        = 0x0007;  
        /*8位字长,正常模式*/
        
        ////////////////接收配置//////////////
        *pSPORT1_RCR1        = RCKFE|LARFS|LRFS|RFSR;
        /*rising edge采样、延迟帧同步、低电平有效、需要帧同步、外部帧同步源、外部位时钟、MSB first、禁止接收*/
        *pSPORT1_RCR2        = 0x0007;
        /*8位字长、正常模式*/
        
       /////////////发送位时钟频率设置////////
        *pSPORT1_TCLKDIV      = 0x0003;                                 // TCLK = SCLK/8; 
        *pSPORT1_TFSDIV        = 0x0008;                                 
        
        *pSPORT1_TCR1     = (*pSPORT1_TCR1 | TSPEN);
        *pSPORT1_RCR1    = (*pSPORT1_RCR1 | RSPEN); //使能SPORT1接收
        
    }

    按照如上的配置,理论上可以产生的波形如下:

    示波器实测:

            

    从图可以看出,波形的时序关系正好符合SPI的时序关系。

  • 相关阅读:
    我的扑克牌
    oc第二课
    oc入门第一课
    2014年1月3日
    iOS Navigation自定义设置Item
    iOS 在一个TableView内使用不同的Cell
    iOS 获取应用当前定位授权状态
    iOS 8显示应用角标
    Xcode 设置Pch文件
    iOS 8设置CLLocation授权
  • 原文地址:https://www.cnblogs.com/BitArt/p/3292852.html
Copyright © 2011-2022 走看看