社区导航

 
查看: 2780|回复: 2

[求助] 有关MC9S08DZ系列SPI通讯

[复制链接]

2

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2012-3-31 16:45:09 | 显示全部楼层 |阅读模式

我用的是MC9S08DZ16芯片和CJ125进行SPI通讯,我将命令存入SPID寄存器,然后等待SPRF位置1,然后读取SPID寄存器值,为什么读到的还是我发送的命令

void init_spi(){ 
  SPIC2=0x10;
  SPIS=0xB0;        
  SPIBR=0x70;
  SPIC1=0x5e;
}

void WriteOneChar(uchar dat) {
  while(!SPIS_SPTEF);
  SPID=dat;
}

void ReadOneChar(uchar cmd,uchar comdlength) {
  uchar i;
  i=0;
  WriteOneChar(cmd);
  while(i<comdlength){
    WriteOneChar(0x00);
     while(SPIS_SPRF!=1);
  buffer=SPID;
  i++; 
  }
}

void main(){
  delay_50ms(2);
  init_spi();
  ReadOneChar(0x6c,1);
  while(1){   
   显示buffer[0]的值

  }

}

我读到的buffer[0]一直是我发送的6c,也就是108



回复

使用道具 举报

8

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2012-4-12 16:11:15 | 显示全部楼层
buffer=SPID;
是不是要改为  buffer=SPID;


回复

使用道具 举报

8

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2012-4-12 16:11:49 | 显示全部楼层
buffer=SPID;


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-12-19 01:58 , Processed in 0.132412 second(s), 16 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表