求大神指点,C6748的ADS131E04驱动程序问题 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3513|回复: 2
打印 上一主题 下一主题

求大神指点,C6748的ADS131E04驱动程序问题

[复制链接]

13

主题

34

帖子

1203

积分

金牌会员

Rank: 6Rank: 6

积分
1203
跳转到指定楼层
楼主
发表于 2015-7-4 15:25:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
                           小弟学习创龙的板子有一个多月了,本以为学的差不多了,就找点事情做。第一件事就是写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:}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-7-5 17:44:13 | 只看该作者
对于spi关键是要配置时序跟数据手册上的一致,主要是配置时钟
// 配置 SPI 时钟
SPIConfigClkFormat(SOC_SPI_1_REGS, (SPI_CLK_POL_LOW | SPI_CLK_INPHASE), dataFormat);
时钟空闲时是高电平还是低电平,时钟是否延迟半个周期
回复 支持 反对

使用道具 举报

13

主题

34

帖子

1203

积分

金牌会员

Rank: 6Rank: 6

积分
1203
板凳
 楼主| 发表于 2015-7-5 18:03:58 | 只看该作者
本帖最后由 shanghai1943 于 2015-7-5 18:11 编辑
Lewis 发表于 2015-7-5 17:44
对于spi关键是要配置时序跟数据手册上的一致,主要是配置时钟
// 配置 SPI 时钟
SPIConfigClkFormat(SOC_SP ...


SPI时钟这个配置过,配置如下
                 CPOL=0   空闲时为低电平
                 CPHA =1 偶数下降沿数据传输,也即延迟半个周期。
但是如上配置后,SPI能写入数据,但是不能读出数据;
请求大神指点!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-4-29 17:13 , Processed in 0.050388 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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