一直在学习单片机,先从简单的学起,打算先学会AT89S52再往Atmega8/162 STM8之类的发展。 我想在家里铺设一根RS485总线,挂载多个从机用电脑统一控制,其中就需要一个音频效果控制的功能,正巧手头上有两枚PT2315,【PS:PT2315是一枚集成了音量控制、高低音控制、左右声道均衡控制、等响度、静音功能的IC】但是这个芯片必须靠I2C总线来控制,所以当务之急是学会使用I2C总线,去年暑假张静茹给我讲过PT2315的一帧完整数据的组成,以及发送方式,今年寒假我结合网络上的资料,和网上的ADC采集程序,根据自己的理解写了个程序,没想到编译一遍过,0错误0警告,而且实验非常成功。由于制作的时候没拍照,所以就拍了成品图,具体效果见视频 PS:我的另外一个昵称叫 “无语·兄” 视频里我用的这个昵称 板子全貌:
左上角的那根电线是音频输入和音频输出(双声道),右面的是串口通信,下面的是9V电源,中间的2X5P插针是ISP下载接口
为了方便连接,音频输入输出采用了莲花接头:
放一首小苹果作为测试音乐(日期偏早,是因为那天写的程序):
一帧完整的数据组成:
音量代码对照:
高低音对照表:
均衡控制:
电路图:
功能框图:
电脑通过串口发送指令,单片机把收到的数据通过I2C发送给PT2315,从而完成电脑对PT2315的控制,我这只是手动敲代码演示其功能,下一步可以写个上位机,免去敲代码的麻烦 录的视频是1080P的,可是上传到优酷就压缩了,所以清晰度打了折扣PS:我的另外一个昵称叫 “无语·兄” 视频里我用的这个昵称 flash: http://player.youku.com/player.php/sid/XMTQ2NzMzNzM0OA==/v.swf