新闻中心

EEPW首页>嵌入式系统>设计应用> 基于单片机的高速信号测试接口板的实现

基于单片机的高速信号测试接口板的实现

作者: 时间:2012-03-31 来源:网络 收藏

发出读允许,被测板开始读取数据,当FIFO1为空,EF1通过D触发器关断使被测板停止读数,同时,关闭FIFO1的读有效

1.3 被测板与FIFO2的通信(数据从被测板输出)

被测板与FIFO2的通信连接包括数据线、写允许、反馈线NW、部分复位PRS以及时钟CLK。PRS 的作用是部分复位FIFO,即将FIFO的读写指针归零,其他设置不变。CLK由被测板提供,作为FIFO1的读时钟和FIFO2的写时钟,这里为40 MHz,当不同的单元电路时,CLK的频率也可以随着被测对象的总线频率改变而改变。

被测板对进行处理后,首先通过PRS将 FIFO2部分复位,防止由于两者没有同时复位带来的数据误读。接着被测板将BWEN2置为低,开始向FIFO2写数据。

当FIFO2被写满,同样存在一个及时关闭其写允许的问题。这里采用FIFO2的满标志位FF2通过D触发器关断同时触发NW信号反馈给被测板,通知被测板停止输出数据,如图3(b)所示。

1.4 FIFO2与RS232口通信(数据从RS232口输出)

FIFO2的满状态除关断其写允许WEN2外,还给一个中断信号,单片机收到此中断后,立即开启读允许REN2(将其置为低电平),开始从FIFO2的空读取数据,FIFO2的空状态判别同样由计数方式和查询方式同时确定,当计数器为0时,FIFO2的空状态输出管脚EF2,若结果为低电平,则通知计算机读取过程结束,同时关闭REN2,禁止读出数据,否则通知计算机出错。

至此,一次完整的测试数据处理传输过程已经全部完成。单片机对FIFO进行复位,准备下一次工作。用户可以分析被测板送回的数据,从而测试单元电路的性能。

2 器件选择

本方案中单片机采用AT89C51芯片,包括4个8 b并行I/O口、1个全双工的串行口、2个16 b的定时/计数器以及2个中断源。晶振的工作频率选用11.095 2 MHz,每个机器周期约1μs。单片机在这里主要完成与RS232C口和FIFO通信以及整体流程控制的工作。相对于被测电路的数据速率,单片机的处理速度很低,因此如何用相对低速的器件控制信号是本方案要解决的关键问题之一。本文的方法是采用FIFO和TTL芯片来数据缓冲和辅助控制。辅助控制器件中的D触发器采用速度较高的74S系列芯片,最高工作频率为110 MHz。

FIFO是一种先进先出存储器,允许同时异步进行读写操作,读写之间互相独立。这里选用的FIFO为IDT72V36100芯片,容量为64 k×36 b,工作频率高达133 MHz,是IDT公司SuperSyncⅡ系列高性能同步FIFO中的一种。该系列芯片相比以前的FIFO器件有很多独特的优点。例如具有总线匹配功能(即输入输出数据总线宽度可以不同,有几种匹配方式供用户设置),还有标志位可编程功能以及重发功能,使得设计者能够根据需要设置标志位的地址,并且可以重新读取已经读过的数据。这些 优点大大增加了设计灵活性,给使用者带来很大方便。

本方案中用到FIFO的主要管脚包括写使能WEN1(低有效)、读使能REN1(低有效)、数据输入/输出、总线匹配设置、空标志位(低有效)、满标志位(低有效)以及读写时钟等。IDT72V36100芯片的总线宽度有5种匹配方式,分别为36 b/36 b,36 b/18 b,36 b/9 b,18 b/36 b及9 b/36 b,本方案选用的是36 b/9 b和9 b/36 b的总线匹配方式。实际应用中,根据被测电路的实际情况可以选择不同的总线匹配方式,使用者根据所选的匹配方式将相应的FIFO总线设置管脚置为高电平或低电平。

3 软件流程

系统所用到的软件包括PC机的串口通信程序与单片机程序。PC机的串口通信程序完成的是单纯的通过RS232口与单片机通信的功能,这方面的技术资料很多,因此不再赘述。这里主要介绍的是单片机程序,该程序执行流程控制功能和与PC机通信功能。

单片机与PC机通信时,接收采用中断方式,发送采用查询方式。图4是单片机主程序流程图。单片机程序中要用到两个标志位,即联络标志位和数据结束标志位,主程序在初始化过程中应该先将这两个标志位清零并设置好计数器。经过初始化以及开中断后,单片机处于等待方式,不断查询数据结束标志位,判断数据是否接收完毕。当查询到标志位被置1后,继续查询FIFO1的满状态管脚,若FIFO1为满,证明数据接收正确,单片机允许读FIFO2,进入等待状态,等待FIFO2变满产生的中断,然后转向发送子程序。

37.gif



评论


相关推荐

技术专区

关闭