cs5532配置 通道设置寄存器 求指点

[复制链接]
7533|27
mage心寒 发表于 2014-3-18 15:28 | 显示全部楼层
@xyz549040622   可以把你的读cs5532的函数给我参考一下吗??谢谢。。。
xyz549040622 发表于 2014-3-18 15:29 | 显示全部楼层
  1. uint32_t CS5532ReadData(void)//向CS5532读寄存器中的数据
  2. {
  3.         uint8_t u8i;
  4.         uint32_t u32ReadValue = 0;
  5.         ClrBit_CSCLK();//时钟拉低
  6.         ClrBit_SDO();
  7.         ClrBit_SDI();        
  8.         for(u8i = 0;u8i < 8;u8i++)//8个清串口时钟
  9.         {
  10.                 DrvSYS_Delay(2);
  11.                 SetBit_CSCLK();//时钟拉高
  12.                 DrvSYS_Delay(2);
  13.                 ClrBit_CSCLK();//时钟拉低
  14.         }
  15.         ClrBit_CSCLK();//时钟拉低
  16.         DrvSYS_Delay(2);
  17.         for(u8i = 0;u8i < 32; u8i++)
  18.         {

  19.                 if(Get_SDO_Bit() == 1) //假如读取的是高电平
  20.                 {
  21.                         u32ReadValue|=0x00000001;  //把高电平给了最低位,因为MSB优先
  22.                 }
  23.                 DrvSYS_Delay(2);
  24.                 SetBit_CSCLK();//时钟拉高
  25.                 DrvSYS_Delay(2);
  26.                 ClrBit_CSCLK();//时钟拉低
  27.                 if(u8i < 31)//最后一次应该不移位才对
  28.                 {
  29.                 u32ReadValue<<=1;//
  30.                 }
  31.         }
  32.         ClrBit_CSCLK();//时钟拉低
  33.         SetBit_SDO();//
  34.         DrvSYS_Delay(2);
  35.         ClrBit_SDO();//
  36.         return u32ReadValue>>11;
  37. }
mage心寒 发表于 2014-3-18 15:30 | 显示全部楼层
xyz549040622 发表于 2014-3-18 15:28
不好意思,刚看到

没事,我调试的时间不够,有的地方还没有摸透,手头还有一个ctp的项目,追的紧,所以只好来论坛求助了。。打扰你了。。。
xyz549040622 发表于 2014-3-18 16:47 | 显示全部楼层
mage心寒 发表于 2014-3-18 15:30
没事,我调试的时间不够,有的地方还没有摸透,手头还有一个ctp的项目,追的紧,所以只好来论坛求助了。 ...

我是正好刚用到这个东西,其实,你是俺的前辈,哈哈
mage心寒 发表于 2014-3-18 17:12 | 显示全部楼层
xyz549040622 发表于 2014-3-18 16:47
我是正好刚用到这个东西,其实,你是俺的前辈,哈哈

我好长时间没上了,我大学就用这个了,你的程序跟https://bbs.21ic.com/forum.php?mod=viewthread&tid=683584这个帖子的一模一样,对我没啥用,你对cs5532as的了解,贴的这个帖子上面写了除了cs其它三个IO口必须设置为双向IO模式,我个人认为SDO设置成输入其它两个设置成输出应该是可以的,但是读出来的数据是0。
  2.上面那个帖子我总觉得有点问题,为什么最后一位不移位,最后读出来的值右移11位是为了方面计算?
  3.看你之前写的帖子跟这个总体的时序是差不多的,数据都是FF,换成这个数据就对了?精度怎样?
  4.估计我们两个差不多大,反正这个问题要好好请教你了,我没时间测试他,有现成的是最好的,但是现成拿过来直接用,自己获得太少,不过当前问题还是先解决读RV的问题,我现在用M3IO模拟RV返回值1都市error我表示我很无语,你加下我QQ吧,应该后续大家互相探讨的机会比较多,QQ:2656351599  
@xyz549040622
xyz549040622 发表于 2014-3-18 17:23 | 显示全部楼层
mage心寒 发表于 2014-3-18 17:12
我好长时间没上了,我大学就用这个了,你的程序跟https://bbs.21ic.com/forum.php?mod=viewthread&tid=683 ...

哈哈。。我加你了
it_nothing 发表于 2015-11-11 17:37 | 显示全部楼层
mage心寒 发表于 2014-3-18 17:12
我好长时间没上了,我大学就用这个了,你的程序跟https://bbs.21ic.com/forum.php?mod=viewthread&tid=683 ...

你好,可以把你cs5532的程序让我参考一下吗,我这一直通讯不上
mage心寒 发表于 2015-11-30 14:24 | 显示全部楼层
it_nothing 发表于 2015-11-11 17:37
你好,可以把你cs5532的程序让我参考一下吗,我这一直通讯不上

5532我之前问的时候结贴的时候已经贴上了,不好意思最近一直没有21了
https://bbs.21ic.com/icview-702208-1-1.html这是结贴的

还有说明一下5532由于精度高,所以防干扰是很有必要的,我帖子里面写到稳定十几分钟就是因为裸露在一个干扰比较大的环境下。。这个才是难点。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部