cygarm
驱动牛犊
驱动牛犊
  • 注册日期2006-11-29
  • 最后登录2013-12-29
  • 粉丝0
  • 关注0
  • 积分649分
  • 威望324点
  • 贡献值0点
  • 好评度62点
  • 原创分0分
  • 专家分0分
阅读:2374回复:18

s3c2440/WINCE4.2的系统,当系统正在发声时,挂起系统再唤醒有时没有声音,这是怎么回事?

楼主#
更多 发布于:2007-06-06 14:29
大家好,我现在系统需要做睡眠唤醒功能,可是奇怪的是,当系统正在发声时,挂起,再唤醒有时会没有声音。比如播放视频文件的时候,唤醒之后有时有声音,视频文件正常播放,有时就没声音了,之后点击触摸屏,没声音,再点击一次,有声音,此时调试串口会出现一个堆栈溢出的错误。检查发现发现是正常唤醒的时候会重新调用wav_iocontrol函数写音频数据,再启动DMA传输,可是没正常唤醒的时候就没有调用wav_iocontrol函数,所以也就没有声音。
不知道有没有人遇到这样的问题,检查了两天,我的音频的硬件传输层应该是没有问题,因为出错的时候根本都还没有启动硬件传输,没有找到问题。
NAND Flash烧录器|烧写器|编程器
cygarm
驱动牛犊
驱动牛犊
  • 注册日期2006-11-29
  • 最后登录2013-12-29
  • 粉丝0
  • 关注0
  • 积分649分
  • 威望324点
  • 贡献值0点
  • 好评度62点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-06-07 20:08
wince_lover兄好!!
我曾经尝试过在audio的powerup函数里边加上一个CeSetPowerEevent()函数去触发一个线程去执行StartupOutputDMA(),StartupOutputDMA()函数里边有一个transferdata()负责具体发送音频数据,可是此时会出现Data abort 的线程错误,不成功,你有没有QQ我向你请教一下。
hzwwin 兄:
一般sansung的BSP的kernel里边会有一个power文件实现睡眠唤醒的具体的事情,你应该只需要调用一个函数就可以了。
NAND Flash烧录器|烧写器|编程器
游客

返回顶部