完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
使用AD7708时发现,偶尔设备重新上电,CPU采集到AD7708输出的码值为全0或都32767.不知道是怎么回事,大部份时间芯片能正常工作,就是上电的时候会出现所有通道采集到的值都不变,一直是0或32767.以下是硬件和程序。断电后重新启动故障消失,芯片工作正常。
这是硬件连接,基准电压是2.5V,单端方式工作。 INT8U channel2[10] = {0x0f,0x1f,0x2f,0x3f,0x4f,0x5f,0x6f,0x7f,0xef,0xff}; //0-10v==0-65535 void SpiWrite (unsigned int data,unsigned char s ) { unsigned char i; //chop_select();//片选 //spi_clk_hi(); if(s == 0) s = 8; else s = 16; for(i=0;i spi_clk_lo();//低时钟 nop(); nop(); nop(); nop(); WDR(); if(data&0x80) spi_data_hi(); else spi_data_lo(); spi_clk_hi(); nop(); nop(); nop(); nop(); WDR(); data = data << 1; } //chop_unselect(); } unsigned int SpiRead (unsigned char s) { int i,data=0; //chop_select();//片选 //spi_clk_hi(); if(s == 0) s = 8; else s = 16; for(i=0;i data = data << 1; spi_clk_lo(); WDR(); nop(); nop(); nop(); nop(); if(AD7708_DATA) data |= 0x01; else data &= ~0x01; spi_clk_hi(); nop(); nop(); nop(); nop(); WDR(); } //chop_unselect(); return(data); } void AD7708Init ( void ) { chop_select();//片选 nop(); nop(); nop(); nop(); SpiWrite(0x07,0);//write I/O Control Register SpiWrite(0x30,0); SpiWrite(0x03,0);//write Filter Register SpiWrite(0x0D,0); SpiWrite(0x02,0);//ADC Control Register SpiWrite(0x0F,0); SpiWrite(0x01,0);//write Mode Register SpiWrite(0x02,0);// nop(); chop_unselect(); } void Start(unsigned char data) { SpiWrite(0X01,0);//write Mode Register SpiWrite(0x02,0);// SpiWrite(0x02,0);//ADC控制寄存器 SpiWrite(channel2[data],0); } unsigned int GegAdcValuea (unsigned char data) { unsigned int i,temp_data = 0; //AD7708Init(); chop_select(); nop(); Start(data); WDR(); while(!AD7708_READY) WDR(); SpiWrite(DATA_REG_R,0);//5 temp_data = SpiRead(1); chop_unselect(); return (temp_data); } |
|
相关推荐
3个回答
|
|
|
从现象上看,感觉就像是AD芯片死机了一样。
|
|
|
|
|
|
有可能是上电顺序导致的,最好上电后重新再reset一下,看看有没有改善
|
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
寻求ADF5355类似的微波源,在DC-15GHz内,锁频时间在1ms内
1787 浏览 0 评论
1627 浏览 0 评论
999 浏览 0 评论
1098 浏览 0 评论
ADF5355失锁: 在用ADF5355进行多次扫频时,延时给了500ms还是经常会失锁
1189 浏览 0 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
2843浏览 3评论
2086浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
2119浏览 2评论
1173浏览 2评论
使用ADI官方提供的no-OS來接收GPS L1(1575.42MHz)的資料
1405浏览 1评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 00:44 , Processed in 0.797135 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
530