硬汉嵌入式论坛

 找回密码
 立即注册
查看: 7018|回复: 6
收起左侧

[有问必答] VS1003B的忙检测一直无法返回

[复制链接]

3

主题

7

回帖

16

积分

新手上路

积分
16
发表于 2013-3-9 08:13:18 | 显示全部楼层 |阅读模式
做\Ex200-MP3硬件解码例程(SDIO+FatFS+VS1003B)这个例程的时候。

单步跟踪发现在

void vs1003_WriteCmd(uint8_t _ucAddr, uint16_t _usData)
{  
    while(VS1003_IS_BUSY());    /* 等待空闲 */

一直卡在这里无法返回,请问是否是芯片损坏?改如何进行进一步定位?
回复

使用道具 举报

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2013-3-9 12:24:31 | 显示全部楼层
检查下VS1003B的晶振是否起振。
回复

使用道具 举报

3

主题

7

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2013-3-9 23:30:28 | 显示全部楼层

回 armfly 的帖子

armfly:检查下VS1003B的晶振是否起振。 (2013-03-09 12:24) 
换了个晶振还是照旧。
回复

使用道具 举报

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2013-3-11 20:50:46 | 显示全部楼层
是我们的板子还是自己做的板子。  你可以测量一下晶振是否有振荡波形; BUSY口线的电平是否一直为忙.

还有晶振2个脚之间需要接1M欧的电阻,这个有没有。如果没有的话,很可能不起振。
回复

使用道具 举报

3

主题

7

回帖

16

积分

新手上路

积分
16
 楼主| 发表于 2013-3-12 01:57:10 | 显示全部楼层

回 armfly 的帖子

armfly:是我们的板子还是自己做的板子。  你可以测量一下晶振是否有振荡波形; BUSY口线的电平是否一直为忙.

还有晶振2个脚之间需要接1M欧的电阻,这个有没有。如果没有的话,很可能不起振。 (2013-03-11 20:50)

看来是真的没起振,我用万用表测的时候碰到晶振引脚就成功起振了。
但是断电再开又没有起振了。

那个1M的电阻原理图上是没有吧?电阻焊上之后是可以成功起振了。
是自己做的板子。
回复

使用道具 举报

0

主题

2

回帖

0

积分

新手上路

积分
0
QQ
发表于 2013-7-3 02:37:16 | 显示全部楼层
我的也是,必须要加上1M的电阻到晶振两旁!BUSY口线的电平是否一直为忙 解决了
但是悲剧的是在测试内部内存时一直读到的是0

                                                                     
uint8_t vs1003_TestRam(void)里加入
在    [usRegValue = vs1003_ReadReg(SCI_HDAT0); ]
下面加入调试信息
    printf(" vs1003 ram is %x \\r\\n",usRegValue);
返回0

强烈要求加入测试OK的 单纯的VS1003 的 正弦波测试代码
回复

使用道具 举报

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2013-7-4 20:32:35 | 显示全部楼层
你测试一下读其他寄存器能否读到正确值
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-20 12:05 , Processed in 0.179543 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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