一种光模块代码下载装置及方法与流程

文档序号:15928136发布日期:2018-11-14 01:21阅读:295来源:国知局

本发明涉及光通信技术领域,尤其涉及一种光模块代码下载装置及方法。

背景技术

光收发一体模块,简称光模块,是光纤通信系统中重要的器件。随着光纤通信的不断发展,光模块的应用也越来越多。光模块中的单片机一般用于实现通信和控制。生产光模块时,需要给单片机下载代码,现有的方法是通过usb转jtag仿真器或usb转i2c下载器实现代码下载,此方法不仅需要昂贵的硬件支持,而且还需要使用者有相关开发经验以应付usb接口所带来的操作上的复杂性及异常,最大的缺点是一次只能下载一个光模块,效率非常低。而由于光模块的出货量越来越大,现有技术采用的代码下载方法显然需要改进。



技术实现要素:

本申请实施例通过提供一种光模块代码下载装置及方法,解决了现有技术中光模块代码下载的硬件成本较高、下载效率较低的问题。

本申请实施例提供一种光模块代码下载装置,包括:单片机、通讯模块、控制与指示模块、数据存储模块、供电控制模块、光模块接口;所述控制与指示模块包括模式控制开关、复位开关、代码指示灯、下载指示灯;

所述单片机分别与所述通讯模块、所述控制与指示模块、所述数据存储模块、所述供电控制模块、所述光模块接口连接,所述供电控制模块与所述光模块接口连接;

所述通讯模块用于与电脑连接,以获取升级代码;

所述控制与指示模块中的所述模式控制开关用于选择代码下载模式或代码升级模块,所述复位开关用于控制单片机复位,所述代码指示灯用于显示所述数据存储模块中的代码是否校验正确,所述下载指示灯用于显示下载到光模块的代码是否校验正确;

所述光模块接口用于连接光模块;

所述供电控制模块用于控制所连接的光模块的上电或掉电;

所述单片机用于控制光模块代码下载、代码升级过程。

优选的,所述光模块代码下载装置还包括:电源模块;所述电源模块分别与所述单片机、所述通讯模块、所述控制与指示模块、所述数据存储模块、所述供电控制模块连接;所述电源模块用于为装置提供电源。

优选的,所述单片机采用aduc70xxbcpzxxi系列单片机。

另一方面,采用上述记载的光模块代码下载装置,本申请实施例提供一种光模块代码下载方法,包括以下步骤:

步骤s1、上电或复位单片机;

步骤s2、单片机读取并判断控制与指示模块中模式控制开关的电平;若为低电平,则进入步骤s3;若为高电平,则进入步骤s5;

步骤s3、单片机对数据存储模块中的代码进行校验;若代码校验正确,则进入步骤s4;若代码校验错误,则进入步骤s6;

步骤s4、进入下载代码模式,将数据存储模块中的代码传输至所有在位光模块,完成代码下载,进入步骤s6;

步骤s5、进入升级代码模式,更新数据存储模块中的代码,完成代码升级,进入步骤s6;

步骤s6、结束。

优选的,所述步骤s3中,若代码校验正确,则代码指示灯显示第一颜色;若代码校验错误,则代码指示灯显示第二颜色。

优选的,所述步骤s4中的所述下载代码模式包括以下步骤:

单片机检测并记录光模块的在位情况;

单片机通过供电控制模块打开所有在位光模块的供电电源;

单片机读取数据存储模块中的光模块代码,并将光模块代码传输至所有在位光模块。

优选的,所述光模块代码下载方法还包括以下步骤:

在单片机打开所有在位光模块的供电电源之前,单片机关闭所有光模块的下载指示灯;

在单片机将光模块代码传输至所有在位光模块之后,单片机对所有在位光模块进行代码校验。

优选的,单片机对所有在位光模块进行代码校验包括以下步骤:

步骤a、单片机通过供电控制模块控制在位光模块的供电电源,确保只有一个在位光模块上电;

步骤b、单片机发送代码校验命令至上电的在位光模块;

步骤c、单片机接收并读取代码校验结果;若代码校验成功,则上电的光模块对应的下载指示灯显示第三颜色;若代码校验失败,则上电的光模块对应的下载指示灯显示第四颜色;

步骤d、单片机判断是否完成对所有在位光模块的代码校验;若完成,则结束;若未完成,则循环步骤a-c,且每次循环中单片机控制一个还未进行代码校验的在位光模块上电,对在位光模块的代码进行逐一校验,直至完成对所有在位光模块的代码校验。

优选的,所述步骤s5中的所述升级代码模式包括以下步骤:

将通讯模块与电脑连接,电脑将升级代码通过通讯模块传输至单片机;

单片机接收升级代码,并将升级代码写入数据存储模块;

单片机对数据存储模块中的升级代码进行校验。

优选的,所述光模块代码下载方法还包括:若升级代码校验正确,则代码指示灯显示第一颜色;若升级代码校验错误,则代码指示灯显示第二颜色。

本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

在本申请实施例中,提供的光模块代码下载装置包括单片机、通讯模块、控制与指示模块、数据存储模块、供电控制模块、光模块接口,并利用上述装置实现一种光模块代码下载方法,单片机读取控制与指示模块中模式控制开关的电平,判断电平为低电平时,则单片机将数据存储模块里的光模块代码一次下载到多个光模块中,下载代码完成后,通过供电控制模块控制光模块的上电和掉电,通过单片机对下载到光模块内的代码逐一进行校验。因此,采用本发明在生产光模块过程中,可以在离线的条件下,一次完成对多个光模块代码的下载和校验。单片机读取控制与指示模块中模式控制开关的电平,判断电平为高电平时,即为光模块的代码需要更新时,通过通讯模块连接电脑获取升级代码,并按照私有协议通过单片机将升级代码写入数据存储模块中,从而完成代码的更新升级。综上,本发明相对于现有技术,不需要昂贵的硬件支持,具有成本较低的优点,且由于能够将光模块代码一次下载到多个光模块中,因此具有下载效率高的优点。

附图说明

为了更清楚地说明本实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种光模块代码下载装置的结构示意图;

图2为本发明实施例提供的一种光模块代码下载装置中控制与指示模块的示意图;

图3为本发明实施例提供的一种光模块代码下载方法的总流程图;

图4为本发明实施例提供的一种光模块代码下载方法中下载代码模式的流程图;

图5为本发明实施例提供的一种光模块代码下载方法中升级代码模式的流程图。

具体实施方式

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

本发明提供的光模块代码下载装置如图1所示,包括:单片机、通讯模块、控制与指示模块、数据存储模块、供电控制模块、光模块接口;所述单片机分别与所述通讯模块、所述控制与指示模块、所述数据存储模块、所述供电控制模块、所述光模块接口连接,所述供电控制模块与所述光模块接口连接。

所述光模块接口用于连接光模块;所述供电控制模块用于控制所连接的光模块的上电或掉电;所述光模块接口和所述供电控制模块可以为多个,且每个所述供电控制模块与一个所述光模块接口连接。

所述通讯模块用于与电脑连接,以获取升级代码。

所述单片机用于控制光模块代码下载过程,所述单片机可采用aduc70xxbcpzxxi系列单片机,aduc70xxbcpzxxi系列单片机是美国模拟器件公司(adi)生产的基于arm7tdmi精密模拟微控制器,具有高速、高精度的adc、dac功能,已经广泛地应用在光通信领域,并扩展到汽车行业、工业控制,以及传感器行业。

其中,所述控制与指示模块如图2所示,包括模式控制开关、复位开关、代码指示灯、下载指示灯。所述控制与指示模块中的所述模式控制开关用于选择代码下载模式或代码升级模块,所述复位开关用于控制单片机复位,所述代码指示灯用于显示数据存储模块中的代码是否校验正确,所述下载指示灯用于显示下载到光模块的代码是否校验正确;在有多个光模块的情况下,所述下载指示灯为多个,每个所述下载指示灯用于显示一个光模块中的代码是否校验正确。即所述代码指示灯指示所述数据存储模块里的光模块代码是否正确,例如正确亮绿灯,否则亮红灯。所述模式控制开关用于控制工作模式,低电平时为下载代码模式,高电平时为升级代码模式。所述复位开关用来控制所述单片机复位。当光模块插接完成后,复位这个按钮,就可以自动地开始代码下载。所述下载指示灯用来指示下载完成后光模块中的代码是否正确,例如正确亮绿灯,否则亮红灯。

此外,装置还包括电源模块;所述电源模块分别与所述单片机、所述通讯模块、所述控制与指示模块、所述数据存储模块、所述供电控制模块连接;所述电源模块用于为装置提供电源。

采用上述装置,本发明提供一种光模块代码下载方法,下面以采用aduc70xxbcpzxxi系列单片机为例,对方法进行说明。

本发明提供一种光模块代码下载方法的总流程示意图如图3所示,当上电或者复位所述单片机后,所述单片机读取所述模式控制开关的电平;当为低电平时,所述单片机先校验所述数据存储模块里的代码,代码校验正确,所述代码指示灯亮绿色,并进入代码下载模式;代码校验不正确,所述代码指示灯亮红色,不能进行代码下载。当为高电平时,进入代码升级模式。

如图4所示,当进入代码下载模式时,所述单片机先利用光模块的在位引脚,检测并记录光模块的在位情况。所述单片机关闭所有光模块的代码指示灯,并通过所述供电控制模块打开所有在位光模块的供电电源。接着,所述单片机按《aduc70xxbcpzxxi系列芯片i2c下载协议》用i2c总线将所述数据存储模块里的代码逐帧依次下载到所有在位光模块的aduc70xx中。注意,按照i2c总线通信的特点,光模块的代码只用发送一次,所有在位的光模块都能接收到。这样就完成了一次下载多个光模块代码的功能。当代码下载完成后,为了保证代码的正确性,一般都要对代码进行校验。校验前,所述单片机通过所述供电控制模块只打开一个在位光模块的供电电源,并用i2c总线向光模块发送代码校验命令,这时只有这个上电的光模块能收到校验命令,其他掉电的光模块是不能收到这个命令的。在等待一段时间如1s后,所述单片机读取代码校验结果。若结果显示校验成功,则光模块对应的所述下载指示灯亮绿色;否则,亮红色。类似的,所述单片机依次校验在位光模块的代码,并点亮相应的下载指示灯的颜色。这样,在生产光模块过程中,可以在离线的条件下,一次完成对多个光模块内单片机的代码下载和校验。并根据所述下载指示灯的颜色,可以非常容易的判断代码下载是否正确。

当光模块的代码版本有更新时,需要升级所述数据存储里的光模块代码。如图5所示,当进入代码升级模式时,需要将通讯模块(通信接口)连接到电脑。通信接口可以是串口,usb或者网线等。电脑用私有协议,将光模块的新代码通过所述单片机写入所述数据存储模块。新代码(即升级代码)发送完成后,电脑就发送代码校验命令。所述单片机接到命令后就校所述验数据存储模块里的代码。若代码校验成功,则代码指示灯亮绿色,否则,亮红色。这样,根据所述代码指示灯就可以判断新代码是否升级成功。

本发明实施例提供的一种光模块代码下载装置及方法至少包括如下技术效果:

可以在离线的条件下,一次完成对多个光模块代码的下载和校验,下载效率高,且不需要昂贵的硬件支持,也不需要使用者有相关开发经验以应付usb接口所带来的操作上的复杂性及异常,代码更新操作简单,根据下载指示灯的颜色可以非常容易的判断代码下载是否正确,根据代码指示灯可以非常容易的判断数据存储模块里的光模块代码是否校验正确、新代码是否升级成功。

最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1