创龙科技
直播中

白珊

7年用户 129经验值
私信 关注

C6748的ADS131E04驱动程序不能正常读出数据

                    小弟学习创龙的板子有一个多月了,本以为学的差不多了,就找点事情做。第一件事就是写ADC驱动。
                     搞这个ADS131E04驱动已经有一段时间了,实在搞不定了才来此发帖,求各位大神帮帮忙。
                   遇到问题如下:
                    1、能通过SPI正常的写入数据、却不能正常的读出数据{:soso_e101:}
                  如下是一段从ADS131E04寄存器读出数据的程序,目的是从AD芯片地址为0x01到0x08寄存器里的内容读出来                        
                                   /****************************************************************************/
                                   /*                                                                                                               */
                                  /*              从AD寄存器读出数据                                                                 */
                                  /*                                                                                                                */
                                  /****************************************************************************/
                                  void Read_ADS131E04Reg()
                                  {
                                        unsigned int index=0;
                                         tx_data[0] = 0x21 ;//设置从CONFIG1寄存器所在地址为待配置寄存器的起始地址
                                          tx_data[1] = 0x07;//总共需要配置8个寄存器
                                       // 情况变量
                                      for (index = 2; index < 10; index++)
                                      {
                                        tx_data[index] =  0;
                                      }
                                     tx_len = rx_len = index;
                                     SPIDat1Config(SOC_SPI_0_REGS, (SPI_CSHOLD | SPI_DATA_FORMAT0), 0x4);
                                    SpiTransfer();
                             }
              2、此外、Dout引脚为什么只有在片选引脚为高电平的状态时才输出高电平?
              3、判忙引脚为什么一直都处在高电平状态?
              4、哪位大神有写好的ADS131E04/06/08的驱动程序,分享一下呗,万分感谢{:soso_e196:}

回帖(1)

谷雪阳

2019-11-11 09:24:19
对于spi关键是要配置时序跟数据手册上的一致,主要是配置时钟
// 配置 SPI 时钟
SPIConfigClkFormat(SOC_SPI_1_REGS, (SPI_CLK_POL_LOW | SPI_CLK_INPHASE), dataFormat);
时钟空闲时是高电平还是低电平,时钟是否延迟半个周期
举报

更多回帖

发帖
×
20
完善资料,
赚取积分