找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

CS5523如何初始化

[复制链接]
admin 发表于 2012-9-2 08:43:44 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
有谁用过CS5523,为什么我按照数据手册写的怎么还初始化不了?
void initialize(void)//CS5523初始化
{
uchar j,temp;
P1 = 0xF4;
delay(600); //延时600ms等待32.768Khz晶振启动
for(j=0;j<15;j++)//连续发送15字节1
{
transfer_byte(0xff);
}


transfer_byte(0xfe);//再发送一个字节0xfe



write_to_register(0x03,0x00,0x00,0x80); /* Set RS bit */
/* Test for Valid Reset */
do {
read_register(0x0B);
temp = low_byte&0x40; /* Mask RV bit to 1 */
if(temp == 0x40)
write_to_register(0x03,0x00,0x00,0x00); /* Clear RS Bit */
}
while (temp != 0x40);//这个while能通过原因是读出的0xff与上任何数都不变(说明初始化哪里还有问题,可是已经是按照手册写的啊?)
}


无论我怎么努力,SDO口还一直是高电平,所以读出来的数据一直是0xff,所以后面的操作无法继续执行.
按理论等initialize();执行后串口就在等待一个有效命令,接下来你可以校准或者直接写配制寄存器,再写通道设置寄存器,然后发送转换指令,最后监视SDO引脚,一旦出现高电平,表示转换完成,可以读取转换结果了.
我希望谁用过CS5523系列的人,给我帮助,一定一定感谢你们.
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-24 11:02 , Processed in 0.057085 second(s), 12 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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