5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 1679|回复: 4
打印 上一主题 下一主题

关于航模2.4G模块芯片CYRF6936的SPI通信问题??

[复制链接]
跳转到指定楼层
楼主
发表于 2012-5-11 18:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
主控芯片是MAGE88,不过是用普通IO口模拟SPI通信
PC2接MISO,PC3接MOSI,PC4接CLK,PC5接SS
写好程序后,发现没用,不能读写,请前辈们看看问题在哪:
PC3,PC4,PC5设置输出,PC2设置输入,下面程序直接用PC2,PC3,PC4,PC5表示

void WriteByte(uchar  data)
{
      uchar i;
      for(i=0;i<8;i++)
      {
            if(data&0x80)  PC3=1;
            else                PC3=0;
            PC4=1;
            nop();nop();
            PC4=0;
            data<<=1;
      }
}
uchar ReadByte()
{
       uchar j,nn;
       for(j=0;j<8;j++)
       {
             nn<<=1;
             if(PC2==1)  nn |= 0x01;
             PC4=1;
             nop();nop();
             PC4=0;
       }
       return  nn;
}

void   SpiWriteByte(uchar  addr,uchar   data)
{  
      PC5=0;
      PC4=0;
      WriteByte(addr);
      nop();nop();
      WriteByte(data);
      PC5=1;
}
uchar  SpiReadByte(uchar  addr)
{
      uchar   mm;
      PC5=0;
      PC4=0;
      WriteByte(addr);
      nop();nop();
      mm=ReadByte();
      PC5=1;
      return  mm;
}
还有,文档上说可以做三线SPI用,不过固件必须确保MOSI引脚处于高阻状态是什么意思????

欢迎继续阅读楼主其他信息

沙发
 楼主| 发表于 2012-5-12 09:23 | 只看该作者
自己顶下
3
发表于 2012-5-13 08:44 | 只看该作者
6936使用前,复位2MS,SPI才工作
4
发表于 2012-5-13 10:30 | 只看该作者
高阻态就是把它悬空
5
 楼主| 发表于 2012-5-13 14:07 | 只看该作者

回复 藤椅 虎门小段 的帖子

谢谢,没错,不过这芯片手册也太失败了上也没写呢?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

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