一种光模块硬件在线测试方法

文档序号:7865509阅读:497来源:国知局
专利名称:一种光模块硬件在线测试方法
技术领域
本发明涉及光纤通信领域,特别涉及一种光模块硬件在线测试方法。
背景技术
光模块是实现光电转换的器件,由光电子器件、功能电路和光接口组成。在光模块的软件研发过程中,软件设计完成后通常需要对其进行测试验证,验证的方法是将软件程序烧写入光模块中,验证其是否能够实现 设计功能。在测试验证过程中,通常出现的情况是软件不能实现设计功能,即调试无法通过,但却很难找出软件代码中的错误。调试时软件不能实现设计功能的原因有两个,一个是软件代码存在错误,另一个原因是光模块硬件损坏或不合格。由于调试时无法准确确认是软件出错还是光模块硬件损坏造成调试不能通过,所以通常是经过较长时间调试后仍然无法找出软件代码错误时才考虑是光模块硬件损坏,然后再将光模块断电对其内部硬件进行测试,若光模块硬件测试确认没有损坏,再将光模块上电,将软件程序重新烧写进光模块中,再逐个进行软件代码功能测试;若某软件功能工作不正常,则需重新按照上述步骤再次调试软硬件。这样导致光模块软硬件调试周期长,光模块调试效率非常低下。如果可以通过软件在线对光模块硬件进行测试,则可以很大程度的提高光模块调试效率。

发明内容
本发明的目的在于克服现有技术中所存在无法在线诊断光模块硬件的不足,提供一种光模块硬件在线测试方法,该方法可实现光模块硬件在线测试,大大提高光模块测试效率。为了实现上述发明目的,本发明提供了以下技术方案
一种光模块硬件在线测试方法,其包括以下步骤
A、在光模块软件代码中设置一通讯桩子(stub);
B、上位机通过通讯总线向所述通讯桩子发送验证密码,密码通过后通讯桩子启动并开始接收上位机发送的测试命令,然后根据测试命令对光模块硬件进行在线测试。上述方法中,所述步骤B包括步骤
B-1、通讯桩子判断测试命令,确定被测试硬件;
B-2、通讯桩子向被测试硬件写入和读取数据,检测被测试硬件是否正常工作。步骤B-2中所述测试硬件包括光模块内部所有可编程硬件,如CPU、RAM、FLASH、寄存器(Register)、GPIO、ADC、DAC、PWM (脉冲调制器)、激光器驱动芯片(Laser Diode Chip)
坐寸ο根据本发明实施例,被测试硬件为GPI0,步骤B-2中通讯桩子向被测试硬件写入和读取数据,检测被测试硬件是否正常工作的方法是设置GPIO的状态为低电平(或高电平),再读取GPIO响应命令后的状态返回值,如果该状态返回值为低电平(或高电平),则该GPIO正常工作,无损坏;否则判断该GPIO损坏。
根据本发明实施例,被测试硬件为激光器驱动芯片,步骤B-2中通讯桩子向被测试硬件写入和读取数据,检测被测试硬件是否正常工作的方法是使用连接线将激光器驱动芯片与GPIO连接(已检测该GPIO正常工作),上位机向GPIO写入数据,该数据经过连接线传输至激光器驱动芯片,上位机再读取激光器驱动芯片返回的数据
如果返回的数据与写入的数据一致,则激光器驱动芯片可正常被控制;然后上位机控制激光器驱动芯片工作在设定的工作模式下,并通过光模块外部硬件测试设备,测试激光器驱动芯片是否工作在该设定的工作模式及其在设定的工作模式下是否正常工作,如果该激光器驱动芯片工作在该设定的工作模式,且在该设定的工作模式下能正常工作,则该激光器驱动芯片无损坏,否则该激光器驱动芯片损坏;
如果返回的数据与写入的数据不一致或无法读取数据,则分段测试连接线,如果连接线正常传输数据,则激光器驱动芯片损坏;如果连接线不能正常传输数据,则更换连接线,重新进行连接线测试。与现有技术相比,本发明的有益效果本发明方法,通讯桩子可以被实时启用,实现通过通讯总线即可对光模块内部各硬件进行在线测试,避免了因无法确定硬件是否正常工作而导致的大量诊断和调试时间,节省了大量的光模块软硬件联调的时间,提高了光模块软硬件调试效率,同时保障了光模块的质量。本发明方法适用于任何需要光模块硬件在线测试的场合,且通讯桩子只有在特定的密码下才能被启用,因此该通讯桩子不影响软件正常工作流程,可以保障光模块软件正常进行,安全可靠。
具体实施例方式下面结合试验例及具体实施方式
对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。本发明光模块硬件在线测试方法,包括以下步骤
(1)在光模块软件代码中设置一通讯桩子(Stub);
(2)上位机通过通讯总线(如I2C,SPI、UART、MDI0等)向通讯桩子发送验证密码(即启用请求),密码通过后通讯桩子启动并接收上位机的测试命令,然后根据测试命令对光模块硬件进行在线测试,具体的步骤是
通讯桩子判断测试命令,确定被测试硬件,所述测试硬件包括光模块内部所有可编程硬件,如CPU、RAM、FLASH、寄存器(Register )、GPIO、ADC、DAC, PWM (脉冲调制器)、激光器驱动芯片(Laser Diode Chip)等,即判断对其中的哪个硬件进行测试;
通讯桩子再通过对被测试硬件写入和读取数据,检测被测试硬件是否正常工作。例如,被测试硬件为GPIO卿GPIO 口),设置GPIO 口的状态为低电平(或高电平),再读取GPIO 口响应命令后的状态返回值,如果该状态返回值为低电平(或高电平),则说明该GPIO 口正常工作,无损坏;否则判断该GPIO 口损坏。又如,检测激光器驱动芯片(Laser Diode Chip)是否损坏使用连接线将激光器驱动芯片与GPIO 口连接(已检测该GPIO 口正常工作),上位机向GPIO 口写入数据,该数据经过连接线传输至激光器驱动芯片,上位机再读取激光器驱动芯片返回的数据,如果返回的数据与写入的数据一致,则激光器驱动芯片可正常被控制;如果返回的数据与写入的数据不一致或无法读取数据,则分段测试连接线,如果连接线正常传输数据,则激光器驱动芯片损坏;如果连接线不能正常传输数据,则更换连接线,重新进行连接线测试。若激光器驱动芯片可被正常控制,则上位机可通过对其控制,使其工作在设定的工作模式下,并通过光模块外部硬件测试设备,以测试激光器驱动芯片是否工作在这个设定的工作模式下及其是否正常工作。通讯桩子可以被实时启用,因此本发明方法可以实现光模块软件对光模块硬件进行在线测试,避免了因无法定位硬件故障而导致的大量调试时间 ,节省了大量的光模块软硬件联调的时间,提高了光模块软硬件调试效率,同时保障了光模块的质量。本发明光模块硬件在线测试,可在任何需要光模块硬件在线测试的场合被使用,且通讯桩子只有在特定的密码下才能被启用,因此该通讯桩子不影响软件正常工作流程,可以保障光模块软件正常进行,安全可靠。本发明方法不限于光模块硬件在线测试,还可以用于各个领域,实现各种硬件在线测试。
权利要求
1.一种光模块硬件在线测试方法,其特征在于,该方法包括以下步骤A、在光模块软件代码中设置一通讯桩子;B、上位机通过通讯总线向所述通讯桩子发送验证密码,密码通过后通讯桩子启动并开始接收上位机发送的测试命令,然后根据测试命令对光模块硬件进行在线测试。
2.根据权利要求I所述的光模块硬件在线测试方法,其特征在于,所述步骤B包括步骤B-1、通讯桩子判断测试命令,确定被测试硬件;B-2、通讯桩子向被测试硬件写入和读取数据,检测被测试硬件是否正常工作。
3.根据权利要求2所述的光模块硬件在线测试方法,其特征在于,步骤B-2中所述测试硬件包括光模块内部所有可编程硬件。
4.根据权利要求3所述的光模块硬件在线测试方法,其特征在于,所述被测试硬件包括CPU、RAM、FLASH、寄存器、GPIO、ADC、DAC, PWM、激光器驱动芯片。
全文摘要
本发明公开了一种光模块硬件在线测试方法。本发明方法包括步骤A、在光模块软件代码中设置一通讯桩子;B、上位机通过通讯总线向所述通讯桩子发送验证密码,密码通过后通讯桩子启动并开始接收上位机发送的测试命令,然后根据测试命令对光模块硬件进行在线测试。通讯桩子可以被实时启用,实现通过通讯总线即可对光模块内部各硬件进行在线测试,避免了因无法确定硬件是否正常工作而导致的大量诊断和调试时间,节省了大量的光模块软硬件联调的时间,同时保障了光模块的质量。本发明方法适用于任何需要光模块硬件在线测试的场合,且通讯桩子只有在特定的密码下才能被启用,不影响软件正常工作流程,可以保障光模块软件正常进行,安全可靠。
文档编号H04B10/077GK102916741SQ20121043719
公开日2013年2月6日 申请日期2012年11月6日 优先权日2012年11月6日
发明者熊亚希, 于军, 鲁妹玲, 黄伟, 曾海峰 申请人:索尔思光电(成都)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1