2.2 USB接口电路设计
PDIUSBD12是飞利浦公司推出的一款高性价比的 USB固件,完全符合 USB 1.1的协议规范,自带并行接口,可与多种 MCU相结合。其硬件接口如图 3所示。另外,它还支持本地的 DMA传输,为微控制系统与 PC机进行大规模数据传输提供了解决方案。PDIUSBD12所具有的挂起低功耗功能,可以满足 USB电源管理的要求,可使其应用于使用总线供电的外部设备。此外,它集成了内部上拉电阻、连通指示等功能。AT89S52控制器与 PDIUSBD12通过 8位并行总线连接(采用地址总线与数据总线复用的方式),采用 MCU与 PDIUSBD12结合的形式实现 USB数据的高速传输,使系统变得形式灵活、编程简洁、成本低廉。
2.3 显示模块及存储器扩展设计系统的显示是使用 MAX7219实现的 8位稳定静态显示 ,MAX7219是串行共阴极数码管
动态扫描显示驱动芯片,仅使用3线串行接口传送数据 ,可直接与单片机接口,用户还可以方便地修改其内部参数以实现多位 LED显示,因此可以方便地使用单片机的 USB口送出显示数据,并且其占用的时间少,方便编程及对信号的检测。
存储器扩展采用了 8片 8K的 6264芯片。他们通过地址所存芯片 74LS373和译码芯片 74LS138进行地址的所存和芯片的选择。采用 A0-A12作为它们的地址线 ,A13-A15作为 74LS138芯片的 3个引脚 ,用来与 8片 6264的选通信号相连。因此 ,第一片 6264的地址对应范围是:0000H-1FFFFH;第二片为 2000H-3FFFH,依次类推,第 7片 6264对应的地址范围是 E000-FFFFH。 3 软件部分设计
3.1 系统软件算法
采集系统的主要功能是采集各模拟量输入通道的数据 ,并将收到的信息进行存储。程序结构分为主程序和中断程序 ,其中包括初始化、信号的采集和数据处理显示输出。初始化包括定时器、终端系统、工作状态和 USB接口的初始化等。系统每隔 20ms采集一次信号 ,保证对信号有很好的跟随性。在下位机固件程序中 ,在设备接入主机后 ,首先对下位机进行系统初始化,然后进行 USB连接,被主机识别并能正常驱动,进入正常使用状态,等待数据传输。如果有 PC数据传输,则调用通讯模块接收数据,并将数据存入下位机存储器,然后调用读数据模块与显示模块进行显示;否则直接执行读数据模块并调用显示模块进行显示(显示上次存储的数据)。系统软件的流程图如图4所示。