网站公告列表

  没有公告

加入收藏
设为首页
联系本站
您现在的位置: AnalogCN安诺电子 >> 文章 >> 技术交流 >> 文章正文
  BF533与PowerPC SPI通信调试笔记         ★★★ 【字体:
BF533与PowerPC SPI通信调试笔记
作者:lczsx200…    文章来源:Internet    点击数:    更新时间:2007-1-17    

SPI通信调试笔记:
一、SPI硬件连接
    这里做BlackFin533兼容SPI口与PowerPC405 CPU的SCP口进行通信,由于PowerPC405 CPU的SCP口不完全兼容SPI,这样我们为了支持两个器件之间的双向通信,在保证数据信号建立时间和保持时间的前提下,牺牲一点传输速度,我们把SPI的时钟信号往后推迟1/4个时钟周期,利用硬件实现,具体实现方案待定!这样,我们的传输速度会有所降低,但是仍然能够保证我们传输码率为3Mbps的影音压缩文件。保守估计,SPI的最高传输速度应该在15Mbps。
BF533的MISO------------PPC 405的SCP_TXD
BF533的MOSI------------PPC 405的SCP_RXD
BF533的SCK-------------PPC 405的SCP_CLK 时钟延时1/4个时钟周期
BF533的SPISS(PF0)----PPC 405的SCP_ENO_N
二、配置SPI寄存器(BF533)

#define TIMOD_T 0x0001
#define TIMOD_R 0x0000

    void Drv_Config_slave_read()
{
 
 *pSPI_CTL = (((*pSPI_CTL)&0xFFFC)|TIMOD_R);
}

void Drv_config_slave_write()
{
 *pSPI_CTL |= (((*pSPI_CTL)&0xFFFC)|TIMOD_T)  |EMISO;  
}

void Drv_Config_master_read()
{
 *pSPI_CTL = (((*pSPI_CTL)&0xFFFC)|TIMOD_R) | EMISO; 
}
void Drv_config_master_write()
{
 
 *pSPI_CTL |= (((*pSPI_CTL)&0xFFFC)|TIMOD_T);
}

void Drv_config_to_master()
{
 *pSPI_FLG = FLS1;
 // Set baud rate SPI_SCK = HCLK/(2*SPIBAUD) SCK 
 *pSPI_BAUD = 2;
 // configure spi port
 // 8-bit data, MSB first, SPI Master
 

 *pSPI_CTL = MSTR;
}

void Drv_config_to_slave()
{
 *pSPI_CTL = PSSE;
}

void Drv_SPI_enable()
{
 *pSPI_CTL |= SPE ;
 
}

void Drv_SPI_disable()
{
 *pSPI_CTL &= ~SPE ;
 
}


三、注意事项
    为了与PowerPC 405之间正常通信,应该设置SPI_CTL的CPOL为1;
    在本应用中BF533设为从机。
 

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    前置放大器在移动医疗服务系
    便携式多通道大容量生理信号
    防腐监测仪的设计与应用
    基于AD1674的酶标仪的设计
    基于C/S模式的JRTPLIB库的测
    ffmpeg与jrtplib相结合应用
    blackfin模拟摄像头驱动中的
    可编程逻辑在数字信号处理系
    发现VDSP4.5一个BUG:单步调
    VDSP5.0双核工程下sml3中的变
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    版权所有:AnalogCN安诺电子 湘ICP备06016315号