OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 13387|回复: 14

谁用过ads1256啊,现在调试出现问题,求助啊!

[复制链接]

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-1-25
在线时间
16 小时
发表于 2014-3-9 15:51:00 | 显示全部楼层 |阅读模式

  引脚连接:ADS_CLK      PB13 
    ADS_DIN     PB15
    ADS_DOUT     PB14
    ADS_DRDY     PB8
    ADS_CS       PB5
    ADS_RESET    PB6           

  初始化有下面几个函数:
SPI有关的初始化

void SPI_ADS1256_Init(void)
{
  SPI_InitTypeDef  SPI_InitStructure;
  GPIO_InitTypeDef GPIO_InitStructure;
  
  RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOB, ENABLE );//PORTB?±??????
  RCC_APB1PeriphClockCmd( RCC_APB1Periph_SPI2,  ENABLE );//SPI2?±??????
  //PB13 SCK    PB15 MOSI
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 | GPIO_Pin_15;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; 
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
    //PB14 MISO
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14;
   //GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  // GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_Init(GPIOB, &GPIO_InitStructure);


  SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;   //?????????¤
  SPI_InitStructure.SPI_Mode = SPI_Mode_Master;         //?÷?ú????
  SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;        //8??????
  SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;         //SCLK?????±????????
  SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;         //SCLK????????????????
  SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;          //???ú???????????í??????????????GPIO???????ú
  SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4;   //APB2?ò??APB1×?????????1/2~1/256·???
  SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;       //??????????MSB??????
  SPI_InitStructure.SPI_CRCPolynomial = 7;          //CRC?????????à????
  SPI_Init(SPI2, &SPI_InitStructure);


  /* Enable SPI1  */
  SPI_Cmd(SPI2, ENABLE);
}
//其他几个引脚的初始化

void ADS1256_GPIO_init(void)
{
 GPIO_InitTypeDef GPIO_InitStructure;
 //CS  reset ?????è??
 //CS  PB5
 //RESET PB6
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
 GPIO_InitStructure.GPIO_Pin= GPIO_Pin_5 | GPIO_Pin_6;
 GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP; //--????????????
 GPIO_InitStructure.GPIO_Speed= GPIO_Speed_10MHz;  //--GPIO·­×???????50MHz

 GPIO_Init(GPIOB , &GPIO_InitStructure); //--????????????????GPIO?????÷?? 

  // DRDY?????è??  PB8
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
 GPIO_InitStructure.GPIO_Pin= GPIO_Pin_8;
 GPIO_InitStructure.GPIO_Mode= GPIO_Mode_IPU; //--????????????
 GPIO_InitStructure.GPIO_Speed= GPIO_Speed_10MHz;  //--GPIO·­×???????50MHz
 GPIO_Init(GPIOB , &GPIO_InitStructure); //--????????????????GPIO?????÷??

}

//芯片初始化

void ADS1256_Init(void)
{
 ADS_CS_LOW();
  ADS_RESET = 1;
 ADS1256WREG(ADS1256_STATUS,0x00);               //
 delay_us(10);
 ADS1256WREG(ADS1256_MUX,0x08);                  //
 delay_us(10);
 ADS1256WREG(ADS1256_ADCON,0x00);                //
 delay_us(10);
 ADS1256WREG(ADS1256_DRATE,ADS1256_DRATE_2_5SPS);  //
 delay_us(10);
 ADS1256WREG(ADS1256_IO,0x00);                   // IO
 delay_us(10);
 //ADS_CS_HIGH();
}

 

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-1-25
在线时间
16 小时
 楼主| 发表于 2014-3-9 15:53:18 | 显示全部楼层

//还有spi写字节函数:
u8 SPI_SendByte(u8 byte)
{
  /* Loop while DR register in not emplty */
  while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET);

  /* Send byte through the SPI1 peripheral */
  SPI_I2S_SendData(SPI2, byte);

  /* Wait to receive a byte */
  while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);

  /* Return the byte read from the SPI bus */
  return SPI_I2S_ReceiveData(SPI2);
}

 

回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2014-3-9 15:58:45 | 显示全部楼层
问题是什么,芯片初始化成功了么?先看SPI能不能跑起来
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-1-25
在线时间
16 小时
 楼主| 发表于 2014-3-9 16:00:50 | 显示全部楼层
SPI应该是可以了,发现输出的结果一直是 ffffff
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2014-3-9 16:05:10 | 显示全部楼层
你可以先试着写一个寄存器再读出来,看数值对不对,对的话是芯片初始化不对,否则就是SPI初始化不对
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-1-25
在线时间
16 小时
 楼主| 发表于 2014-3-9 16:20:19 | 显示全部楼层
好的,谢谢额!
回复 支持 反对

使用道具 举报

9

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
144
金钱
144
注册时间
2014-1-25
在线时间
16 小时
 楼主| 发表于 2014-3-9 17:28:13 | 显示全部楼层
还真是错了,发送和接收的不同,改了好几个设置还是不对,慢慢搞吧
回复 支持 反对

使用道具 举报

12

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2014-10-24
在线时间
4 小时
发表于 2015-6-13 21:51:41 | 显示全部楼层
回复【7楼】shouzhou:
---------------------------
不知道你是怎么解决的我的也是一直读出是ffffff
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-22
在线时间
11 小时
发表于 2019-7-26 20:50:59 | 显示全部楼层
嗯啊 发表于 2015-6-13 21:51
回复【7楼】shouzhou:
---------------------------
不知道你是怎么解决的我的也是一直读出是ffffff

楼主有没有103系列ADS1256可行程序,找了好久,都没有找到
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-22
在线时间
11 小时
发表于 2019-7-26 20:51:56 | 显示全部楼层
楼主程序怎么解决的?我也是同样的问题
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2019-7-15
在线时间
11 小时
发表于 2019-8-2 16:00:13 | 显示全部楼层
楼主发一份stm32f103ZET6的ADS1256的代码,万分感谢
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-7-22
在线时间
9 小时
发表于 2019-9-11 17:10:34 | 显示全部楼层
zheng21he 发表于 2019-8-2 16:00
楼主发一份stm32f103ZET6的ADS1256的代码,万分感谢

楼主调好了吗?我也挑了好久出不来
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-7-22
在线时间
9 小时
发表于 2019-9-11 17:11:27 | 显示全部楼层
123456xyx 发表于 2019-7-26 20:51
楼主程序怎么解决的?我也是同样的问题

你解决了吗?我也有这个问题
回复 支持 反对

使用道具 举报

1

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2014-12-1
在线时间
12 小时
发表于 2020-4-10 10:36:45 | 显示全部楼层
为什么我试的只有将spi波特率分频设为256,才可以,其他的都不行?是频率太高了吗?
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2020-5-13
在线时间
5 小时
发表于 2021-8-22 11:58:41 | 显示全部楼层
嗯啊 发表于 2015-6-13 21:51
回复【7楼】shouzhou:
---------------------------
不知道你是怎么解决的我的也是一直读出是ffffff

请问解决了吗?我也读出ffffff
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-29 06:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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