导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→菜鸟求助:怎么驱动 IIS (S3C44B0),谢谢![npsgsys]

 *第41454篇: 菜鸟求助:怎么驱动 IIS (S3C44B0),谢谢!

  
楼 主:npsgsys 2006年6月17日14:19
 菜鸟求助:怎么驱动 IIS (S3C44B0),谢谢!
请教:
问题1:
我的 wave 文件怎么弄到 ROM 里去呢?是不是有个软件可以把 wave 文件 变成 *.hex  文件
然后再把它烧写到 ROM 里去,有这样的软件吗?如果有的话,是什么名字?

问题2:
我的开发板(S3C44B0)是通过 IIS 来驱动 音频芯片(CS4334)的.
一般要怎样才能驱动这个芯片(也就是说要在什么条件下,这个芯片就开始工作)
是不是一个时钟给一个高电压啊?


问题3:
可以给一段初始化 CS4334 代码?

问题4:
下面这段小程序是我在资料上找的,有很多地方不理解

void __irq BDMA0_Done(void); //这里是声明中断处理函数 BDMA0_Done 。是 BDMA0 中断处理函数

void Playwave() 
{
  int sound_len,i;
  unsigned short *pWavFile;
  pWavFile=(unsigned short *)0x030000;   //wav 文件数据地址
  rINTMOD=0x0;                            //使能中断
  rINTCON=0x1;
  pISR_BDMA0=(unsigned) BDMA0_Done;        //设置 BDMA 中断 ,不知道具体的意思?
  rINTMSK=~(BIT_GLOBAL | BIT_BDMA0);       //不知道具体的意思?
  for(;;)   //循环播放声音文件
  {
   //初始化变量
   iDMADone=0 ;                          //初始化 DMA 中断结束标志  不知道为什么是这样?
   sound_len=155956 ;//                  设置声音数据长度,未处理头文件
   rBDISRC0=(1  <  <30)+(1  <  <28)+((int)(pWavFile));// DMA 源;16 位数据,增长方式 外存储区 ,这句话是什么意思啊?
   rBDIDES0=(1  <  <30)+(3  <  <28)+((int)rIISFIF);// DMA 目的:M2I0 ,内部模块,IISFIF    这句话是什么意思啊?
                                           //设置 DMA 请求源为 IIS ,中断方式,自动重载 ,使能 DMA  
   rBDICNT0=(1  <  <30)+(1  <  <26)+(3  <  <22)+(0  <  <21)+(1  <  <20)+sound_len;  // 这句话是什么意思啊?
   rBDCON0=0x0  <  <2;      // 这句话是什么意思啊?                          
   
   //IIS 初始化
   rIISCON=0x22;                           //使能发送 DMA ,接收空闲,使能分频
   rIISMOD=0xc9;                           //主模式,发送,发送模式,左通道第电平,IIS 格式,16 位
                                           //数据 256FS,32f
   rIISPSR=0x22;                           //分频因子
   rIISFCON=0xf00;                         //接收,发送 DMA 模式,使能 FIFO 
   rIISCON |=0x1;                          //使能 IIS
   while(iDMADone==0);                     //等待直到 DMA 传送结束 不知道为什么是这样?
   rIISCON=0x0;                             //禁止 IIS 
  }                                                                                
}

void __irq BDMA0_Done(void) //
{
    rI_ISPC=BIT_BDMA0;    //clear pending bit
    iDMADone=1;         //设置中断结束的标志
}

谢谢!
   


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:CQ-80C51单片机在线编程、仿真、实验开发平台

[下一篇主题]:[讨论]纵观目前的单片机论坛缺少人气的原因