裸机编程的IIS程序,赵老师已经写的很是明白了,他的博客地址
http://blog.csdn.net/zhaocj/archive/2010/05/08/5570424.aspx
所以这里我自己也不写关于IIS的一些原理了,我想自己总结一下自己编写IIS程序中间的心得和问题。
首先对于IIS编程,要明白三个重点
1. IIS总线,对于IIS总线2440来说有五根线,分别是IISSCLK IISLRCLK CDCLK IISDI IISDO ,其中后面俩跟是数据的输入输出,前面三根是iis通信的时钟。其实对于IIS的时序等等2440硬件已经做好了,我们只有设置几个寄存器就好了。
2. L3总线,对于2440的IIS音频通信IIS只是数据的流通,产生音频还需要音频芯片UDA1341。音频数据通过IIS总线传输到UDA1341,2440通过L3总线来控制UDA1341芯片的初始化,复位,时钟设置,寄存器等等所以要使能够放音,首先要设置好UDA1341芯片。对于L3总线有几点要注意:
1. L3总线顾名思义只有三根线,L3MODE L3DATA L3CLOCK ,引脚连接到GPB2-4,首先对于IO的初始化设置应该置为output,一开始我设置成了TOUT了。
2.对于L3总线有写地址和数据之分,对于写地址L3MODE为L(0),写数据L3MODE为H(1),时钟和模式开始都应该为1