微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 消费类电子 > 基于AT90S2313-4PC的MP3无线遥控自动点播机(下)

基于AT90S2313-4PC的MP3无线遥控自动点播机(下)

时间:07-24 来源:微计算机信息 /叶又元 郑世宝 点击:
10年前可以很容易取得频率高达1GHz的256分频预分频器芯片,但这些芯片现在都听,因此我用74F161计数器来实现16分频。该器件工作频率大于100MHz,成本低于1美元且容易买到。

  我用2N5485制作了一个VCO。VCO的振荡频率主要取于L1和C12的值。C12微调电容,发射机第一次通电时,用其对频率进行微调使发射机工作在指定频率上。只有装上J1使微控制器把DAC输出设置在中间值时,才可以进行微调,之後把跳去掉。当发射机再次通电後,自动频率稳定器电路开始工作,振荡器被变容二极管D1微调到指定频率。74F161需要几伏的信号作时钟,这可以用FET振荡器实现(其它大多数形式的振荡器没有这样的能力)。

  振荡器的RF输出从L1的抽头取出以小负载的影响。RF输出用电容耦合到74F161预分频器第一级的时钟输入。调整分压器R7时钟输入端提供适当的偏置,使振荡信号触发输入分频级。把它设定在2~2.5V之间较好,最好用示波器调整设定,使74F1 61的11输出得到乾净的5~6MHz的波形。

  控制VCO微调的12位DAC U14采用TI公司带SPI接口的DAC7611。虽然AT90S2313不具备用户SPI端口(它的SPI端口只严格地配合闪存编程工作),但用PB1~PB4 I/O 可以简单地实现发送SPI数据到DAC的功能。

  图4中AT90S2313下面的跳 J1与PD6端口 连接,复位时微控制器检测该端口 的状态。如果J1处于连接状态,它只不过会把DAC设置在中间值,接著进入等待。这时你可以调节微调电容把振荡器的频率设定在最接近指定频率的地方使误差最小。北美地区所有FM广播均把频率设定 100KHz的奇数倍,随便选一个就行了。

  做完这个後,接著去掉跳 再给发射机通电。这时发射机应在几秒时间内反复调整DAC电压, 经过预分频器反复测量振荡器输出频率使其返回指定频率。这就是随後用作FM发射机模块的正常工作模式。

  从主机声卡输出的立体声音频信号先经过一个预加重网络(每个声道都要)混合成一个单声道信号,该信号 加在DAC的直流控制电压上对振荡器的输出进行调频。

  预加重网络中的RC值视立体声接收机的输出以取得较平坦的频响 目标而确定,图4中的设定值还是比较合理的。别指望选定的元件值会达到北美FM广播的去加重常数标准值75us,要考虑到还有很多存在于VCO中的因素会影响调制特性,我设定的参数值可使发射机获得比较平坦的频响。注意,图4中没有提到天 ,如果设备放在塑料壳内其发射距离能达到50码,那就很好,因 政府相关法规规定禁止使用发射半径大于50码的发射机。

  我用一片1.5x1平方英寸的小型单面PCB板制作了电路的VCO部分(如图4虚 部分所示)。电路剩下部分在一块Simm-Stick面包板上手工连 。VCO PCB板设计成SIP封装的样子垂直安装在Simm-Stick面包板上。

  软件和固件

  应用软件包括计算机上运行的应用程序和运行在遥控器上的客户固件。PC端服务软件用Visual Basic 6语言编写。

  遥控器固件用AVR汇编语言编写。FM发射机另外用一片AT90S2313稳频。现在所用软件是试用版,因此我暂时用BASCOM-AVR编译器代替AT90S2313。

  客户端应用软件

  运行在PC上的客户端应用软件主要有两个主要功能∶大多数时间它一直在检测COM1端口搜寻遥控器发给它的指令∶另一个功能是用它来浏览文件目录 指定4个文件夹作 自动点播文件夹。这些文件夹中的文件名接著就被转换成数据记录,用COM1端口的发射部分发送到遥控器上。除非文件夹的内容更改,否则只下载一次,因 这些数据存储在遥控器中的歌名列表闪存中,见照片2。

  照片2 用以控制媒体播放器上的MP3文件的播放的PC应用程序

  我详细地介绍一下第一个功能。正如前面提到的,计算机和遥控器之间通过433MHz无 连接,在PC端433MHz接收机以2400bps速率接收RF信号 把它转换成串行数据,接著把它送到COM1端口。所有数据格式和数据纠错均由NKM2401编/解码器芯片组成的硬件电路完成。这样做可以确保客户端应用软件接收到的的指令都是合法的。

  NKM2401采用8字节数据包格式。遥控器发送的所有指令由2字节同步数据(0xAA, 0x55)後跟16位指令字和4个补充字节组成。2字节指令字用来区别4种指令∶播放(停止),播放下一曲,播放前一曲,播放全部和暂停。其它14位数据用来选择当前文件夹和该文件夹内歌名的一些附加信息。

当你选出要用的文件夹时,文件夹就会打开,接著分析该文件夹然後显示出唱片长度信息。在应用中我效仿了这个功能,把它应用到了发射机和遥控器上。这样做使你可以在遥控器的LCD上看到所有歌名。另外它意味著你仅需发送数据库文件中歌曲位置的相应编号就可以点播歌曲。

客户端程序确定播放哪一首歌曲後

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top