网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> 服务导航 >> 帮助中心 >> C2000 >> 文章正文
  有没有用2407驱动过X5043的?           ★★★ 【字体:
有没有用2407驱动过X5043的?
作者:61IC客服    文章来源:本站原创    点击数:    更新时间:2006-7-22    

 

问题如下:

我用IO口模拟SPI时序能控制了,但是用2407的硬件SPI,却不受控
void spi_init(void)
{
  *MCRA=0XFF;
  *PBDATDIR = *PBDATDIR | 0X0800;    //IOPB5--输出方式
  *SPICCR=0X0007;          //8 CHAR BIT,  SPICLK DROP OUT DATA,SPICLK RISE IN DATA
  *SPICTL=0X0006;          //MASTER,DISABLE INT
  *SPIBRR=0X007f;          
  *MCRB=(*MCRB|0X001C)&0XFFDF;            
  *PCDATDIR=(*PCDATDIR|0X2000)|0x0020;
  *SPICCR=*SPICCR|0X0080;
}

void outbyte( unsigned char byte)       //输出一个数据到25045,此数据可能为地址,先导字,写入的数据等
{
    cs_l();
    //*SPITXBUF=byte*256;
    *SPITXBUF=byte;
    while(1)
    {
        if((*SPISTS & 0X40)==0X40)    break;
    }
    *SPIRXBUF=*SPIRXBUF;
    cs_h();
}       


unsigned char inbyte(void)              /*得到一个数据,此数据可能为状态寄存器数据,读出的单元数据等*/
{
      unsigned char back;
  
      cs_l();
    *SPITXBUF=0;
    while(1)
    {
        if((*SPISTS & 0X40)==0X40)    break;
    }
    back=*SPIRXBUF;
    cs_h();
    
      return(back);
}

我现在的疑问是:2407的SPI只发送8位的数据的时候,是否需要将发送的数据左移8位?另我的程序有地方有问题的吗?
谢谢

解答如下:

void spi_init(void)
{
  *MCRA=0XFF;
  *PBDATDIR = *PBDATDIR | 0X0800;    //IOPB5--输出方式
  
  *MCRB=(*MCRB|0X001C)&0XFFDF;            
  *PCDATDIR=(*PCDATDIR|0X2000)|0x0020;
  
  *SPICCR=0X0007;          //8 CHAR BIT,  SPICLK DROP OUT DATA,SPICLK RISE IN DATA
  *SPICTL=0X000e;          //MASTER,DISABLE INT
  *SPIBRR=0X007f;          
  
  *SPICCR=*SPICCR|0X0080;
}
void outbyte( unsigned char byte)       //输出一个数据到25045,此数据可能为地址,先导字,写入的数据等
{
    *SPITXBUF=byte*256;
    while(1)
    {
        if((*SPISTS & 0X40)==0X40)    break;
    }
    *SPIRXBUF=*SPIRXBUF;
}       


unsigned char inbyte(void)              /*得到一个数据,此数据可能为状态寄存器数据,读出的单元数据等*/
{
      unsigned char back;
      
    *SPITXBUF=0;
    while(1)
    {
        if((*SPISTS & 0X40)==0X40)    break;
    }
    back=(*SPIRXBUF)&0x00ff;
    
      return(back);
}

 

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    2407的地址数据引脚一般用来…
    2407A的SPI到底有没有发送中…
    F2407A FLASH烧写问题
    DSP2407A Fash 空间
    2407A有没有工作温度在-55~+…
    DSP2407能不用外部RAM仿真吗…
    CPLD与目标板2407A之间怎样接…
    2407的can模块是不是只是一个…
    关于2407的ADC
    有关2407A扩展外部双口RAM的…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号