在简单学习了I2S知识的基础上,这次使用Ai8051U实现一个简单的应用。使用官方资料中一个例程,利用Ai8051U生成三角波。学过51单片机的朋友们,一定还记得:在单片机中是如何利用定时器+D/A转换器实现三角波的。其工作原理是,利用定时器改变一个变量的值,按照三角波波形的输出点的值输出对应的二进制数据,并行输出给DA转换器,通过DA转换器转换为模拟值,再利用运放处理,最后形成漂亮的三角波。
DAC0832是一个8位的DA转换器。
而在本例中,使用的是Ai8051U的I2S外设+TLV320AIC23B来生成三角波。生成原理也差不多,只不过三角波输出点的数据是通过串行方式,以I2S协议的方式输出给TLV320AIC23B,由TLV320AIC23B生成三角波输出。TLV320AIC23B是TI公司推出的一款高性能立体声音频编解码器,内置耳机输出放大器。支持MIC和LINE二选一的输入方式。输入和输出都具有可编程的增益调节功能。TLV320AIC23B的模/数转换器(ADC)和数/模转换器(DAC)集成在芯片内部,可以在8~96 kHz的采样率下,提供16 bit、20 bit、24 bit和32 bit的采样数据。ADC和DAC的输出信噪比分别可达90 dB和100 dB。
Ai8051U试验箱中,单片机与TLV320AIC23B的组合电路:
使用Ai8051U的I2S外设映射到P1.7、P1.5、P1.4引脚上。