打印
[技术求助]

ADS1291总是读不到数据.

[复制链接]
1973|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ihafd|  楼主 | 2014-8-13 22:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我MCU用MSP430g2303
因为SPI接口被占用了.我用I/O口摸拟SPI .但我总是读不到数据啊!
有没有ADS1291的例程?
万分感激!!!!!!

相关帖子

沙发
airwill| | 2014-8-14 10:02 | 只看该作者
官方也没有给出参考例程.
不过好在 SPI 接口并不复杂, 建议楼主借助示波器或逻辑分析仪先仔细验证一下时序.

使用特权

评论回复
板凳
ihafd|  楼主 | 2014-8-15 23:11 | 只看该作者
我是用I/O口模拟SPI的.现在发现连寄存器也写不入,读不出啊!!
我的SPI摸拟程序(MCU晶振用MSP430的DCO 16MHZ):
void SPI_SEND_ONE_DATA(uchar i)    //SPI发一个字节
{
  uchar loop;
  uchar delay;
  uchar temp;
  temp = 0x01;
  for(loop = 0; loop < 8; loop++)
  {
   if((i & (temp << loop)))
    DIN_1;
   else
     DIN_0;
   SCLK_1;
   for(delay = 5;delay > 0; delay--);
   SCLK_0;
   for(delay = 5;delay > 0; delay--);
  }
  for(delay = 20;delay> 0; delay--);
}

uchar SPI_READ_ONE_DATA(void)  //SPI收一个字节
{
  uchar loop;
  uchar delay;
  uchar temp;
  uchar i;
  for(loop = 0; loop < 8; loop++)
  {
   SCLK_1;
   for(delay = 5; delay > 0; delay--);
   temp = P1IN;
   if((temp & 0x08))
     i = (i | 0x01) << 1;
   else
     i = i << 1;
   SCLK_0;
   for(delay = 5;delay > 0; delay--);
  }
//  for(delay = 20;delay > 0; delay--);
  return i;
}

使用特权

评论回复
地板
ihafd|  楼主 | 2014-8-15 23:14 | 只看该作者
#define CS_0 (P3OUT &=~BIT1) //CS置0
#define CS_1 (P3OUT |= BIT1) //CS置1
#define SCLK_0 (P1OUT &=~BIT4)         //SCLK置0
#define SCLK_1 (P1OUT |=BIT4)          //SCLK置0
#define DIN_0 (P1OUT &=~BIT5)          //DIN置0
#define DIN_1 (P1OUT |= BIT5)         //DIN置1

  P3DIR |= BIT1;         //ADS1219 CS   输出
  P1DIR |= BIT4;         //ADS1291 SCLK
  P1DIR |= BIT5;        //ADS1291 DIN
  P1DIR &=~BIT3;         //ADS1291 DOUT  P1DIR &=~BIT3;  输入

P1的第四个脚接ADS1291的DOUT.输出数据

使用特权

评论回复
5
ihafd|  楼主 | 2014-8-16 13:49 | 只看该作者
现在可以读数据了.
苦苦作战了几天,终于搞定!
哈哈哈.

使用特权

评论回复
6
firstblood| | 2014-8-17 19:57 | 只看该作者
模拟的SPI总线的注意时序的,不行的话在程序的时序部分加上小延时的看卡的啦。

使用特权

评论回复
7
smilingangel| | 2014-8-20 22:53 | 只看该作者
摸你的SPi总线接口的,注意时序的时间长短的,即每个时序的周期长短。

使用特权

评论回复
8
XIECHEN| | 2017-6-5 18:53 | 只看该作者
楼主能共想一下代码吗?我也是SPI用IO口模拟的,读写数据不成功。我的QQ  35284316  谢谢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

291

主题

849

帖子

3

粉丝