测试测量
返回首页

用PC机测试MAX7300/MAX7301的端口扩展功能

2011-05-22 来源:Maxim

  MAX7300和MAX7301是通用的28端口、通用输入/输出口(GPIO)处理器外设。通过高速SPI™串行接口(MAX7301)或I²C串行接口 (MAX7300)进行控制。该应用笔记介绍了一个实用程序,PC机可以通过它来控制MAX7301或MAX7300驱动器。工程师们也可以用它熟悉驱动器的寄存器和功能。此外,在设备的软件完成之前,它可以用来直接控制MAX7301或MAX7300的寄存器,“验证”实验板原型。

  系统要求:

  一台PC机,运行操作系统为Windows® 95、98、98SE、ME、NT、2000或XP;一个并行打印端口,配置为LPT1或LPT2。

  说明

  该软件是Visual Basic 5应用程序,文件名为MAX7300.EXE,为保证正常运行,需要标准的Visual Basic运行环境库文件MSVBVM50.DLL。该程序使用DriverLINX™并口驱动免费软件DLPortIO.DLL,提供Win32 DLL的硬件I/O功能,这是标准的Visual Basic所不提供的。Windows NT

和2000用户还要求DLPortIO.SYS内核模式驱动。这些驱动软件的版权都归Scientific Software Tools, Inc. (www.driverlinx.com)所有。DriverLINX是Scientific Software Tools, Inc.的注册商标。

  安装

  在Windows 95、98、98SE和ME平台上安装时,下载MAX7300-01.EXE文件(812kB),这是一个WinZIP自动解压缩文件,其中包括ReadMe.txt、ReadMeSST.txt、MAX7301.EXE、DLPortIO.DLL和 MSVBVM50.DLL。默认的下载保存目录为C:\\MAX7300。如果您的计算机已经注册有库文件,则可以删除MSVBVM50.DLL。

  在Windows NT、2000或XP平台安装时,下载MAX7300-NT.EXE文件(2.3MB),这也是一个WinZIP自动解压缩文件,其中包括ReadMe.txt、ReadMeSST.txt、MAX7300.EXE、PORT95NT.EXE和MSVBVM50.DLL。默认的下载保存目录为C:\\MAX7300。PORT95NT.EXE是DriverLINX驱动器的安装程序,通过它可以安装、注册DLPortIO.DLL库和DLPortIO.SYS驱动器。PORT95NT.EXE可以在安装后删除。如果需要,Windows 95、98、98SE和ME用户也可以使用这个安装程序。

  MAX7300或MAX7301与并口的连接

  该程序利用八根并口打印输出线中的三根,模拟SPI串行接口,另外两根输出线用来模拟I²C串行总线。并口控制输入线用于读取SPI数据、Isup2;C数据和中断状态。可以同时对多片MAX7301 (多达16片,菊花链连接)和/或多片MAX7300 (多达16个,配置为不同的Isup2;C地址)进行操作。软件可以选择LPT1或LPT2端口。该端口可以为标准方式、ECP或EPP方式。并口连接如图1所示。

MAX7300和MAX7301与并口的连接

  图1. MAX7300和MAX7301与并口的连接

  程序启动时打开三个窗口,它们分别是主控窗口、I/O控制窗口和端口控制窗口。启动过程中寄存器设置映射为MAX7300和MAX7301的上电状态。

  主控窗口如下面的图2所示。通过\'Driver type\'单选按钮选择软件的传送对象:MAX7301 (使用SPI连接)或MAX7300 (使用Isup2;C连接)。

启动时的程序显示

  图2. 启动时的程序显示

  SPI模式下,软件可以最多控制16个MAX7301驱动器。假定各驱动器都是级连的(即第一个MAX7301的DOUT引脚和第二个MAX7301的DIN引脚相连,第二个MAX7301的DOUT引脚和第三个MAX7301的DIN引脚相连,依此类推)。MAX7301驱动器的总数由\'Number of Drivers\'滑动条设定,该值大于1时,\'Enable global driver write\'和\'Enable auto-increment\'为可选项。如果清除\'Enable global driver write\'选择,执行写命令时,只对\'Current Driver\'滑动条选定的MAX7301驱动器进行写操作,其它驱动器只接收到空操作指令;如果选中\'Enable global driver write\'项,则所有的MAX7301都将接收同样的数据。如果选择\'Enable auto-increment\'项,每次写操作后当前驱动器号码自动递增。使得用户可以对一串MAX7301驱动器快速传送数据。

  在程序运行时,可以通过\'Port Connections and Help...\'下的\'Test Stream\'工具测试SPI接口与并口的连接。\'Test Stream\'程序不断地向MAX7301 (数量由\'Number of Drivers\'滑动条设定)传送空指令,能够在不影响各寄存器内容的情况下验证接口连接。

  Isup2;C模式下,软件可以最多控制16片MAX7300驱动器。假定第一个驱动器地址设为1000000x,其余的器件地址依次加1,最后一个地址为1001111x。例如,如果要对一个地址为1001111x的驱动器进行配置,只需设定\'Number of Drivers\'滑动条为16,然后选择\'Current Driver\'滑动条的值为16,即可对1001111x地址进行操作。Isup2;C模式的主窗口如图3所示。

Isup2

  图3. Isup2;C程序显示

  在程序运行时,可以通过\'Port Connections and Help...\'下的\'Test Stream\'工具测试Isup2;

C接口与并口的连接。\'Test Stream\'程序不断地向MAX7300 (数目由\'Number of Drivers\'滑动条设定)传送空指令,可以在不改变各寄存器内容的情况下验证连接接口。

  \'Fast serial inteRFace\'选项框可以设定SPI和Isup2;C接口的串口速度。选中该项时,串行接口全速运行,速度取决于机器特性,最高可达1M比特/秒;该项没有被选上时,速度最高只能达到500比特/秒。在长距离电缆连接时低传输率是很有用的。

  按下\'Write\'或\'Read\'按钮时,程序将与选中的驱动器进行通信。然而,程序会自动对连接到并口第13引脚的中断输出端进行监视。它的状态显示在主窗口,为“High”或“Low”。

  选中\'Automatic Update control\'项时,程序将不断对28个端口输入寄存器和中断寄存器位进行查询。读操作的速度取决于\'Fast serial interface\'的设置,可以是一秒钟数次(高速),或几秒钟一次(低速)。注意:低速方式非常缓慢!\'Reading driver x\'滑动条允许用户设定自动读取的器件,不受\'Current driver\'控制驱动器读取操作的影响。

  从主窗口中可以退出程序运行。在主窗口中按下Exit按钮或按下Esc键将关闭所有三个窗口。在其它两个窗口激活的情况下按下Esc键可以使用户回到主窗口;因此,两次按下Esc键可以迅速关闭该程序。在关闭前,程序将器件配置的最后一次设置保存到MAX7300.ini文件内,该文件与运行程序存放在同一目录下。该操作对Windows的注册表没有任何影响。设置包括三个窗口的位置,主窗口的接口设置。如果文件MAX7300.ini不存在,它将新建一个,否则,文件将被刷新。如需恢复程序的默认设置,或者,该文件已经被破坏,只需将其删除。

  图4和图5是另外两个窗口的视图。

 I/O配置窗口

  图4. I/O配置窗口
端口寄存器窗口

  图5. 端口寄存器窗口

进入测试测量查看更多内容>>
相关视频
  • LABVIEW数据采集随书视频

  • 微机电系统技术

  • 周公系列讲座——示波器讲解

  • 了解传感器融合和追踪

  • 电子设计竞赛中测控类题目应用对策

  • 电子测量与智能仪器(浙江大学)

精选电路图
  • 简洁的过零调功器电路设计与分析

  • 永不缺相启动运行的电动机控制电路

  • IGBT模块通过控制门极阻断过电流

  • 比较常见的功率整流器和滤波电路

  • 基于M66T旋律发​​生器的电路图解析

  • 基于CA3193的热电偶放大器电路

    相关电子头条文章