CN106464359B - 使用单个光端口通信更新固件的方法和能更新固件的微控制器 - Google Patents
使用单个光端口通信更新固件的方法和能更新固件的微控制器 Download PDFInfo
- Publication number
- CN106464359B CN106464359B CN201480071881.4A CN201480071881A CN106464359B CN 106464359 B CN106464359 B CN 106464359B CN 201480071881 A CN201480071881 A CN 201480071881A CN 106464359 B CN106464359 B CN 106464359B
- Authority
- CN
- China
- Prior art keywords
- firmware
- data
- new data
- update
- transmitter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000003287 optical effect Effects 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000004891 communication Methods 0.000 claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims description 28
- 238000001514 detection method Methods 0.000 claims description 10
- 230000005855 radiation Effects 0.000 claims description 8
- 239000007787 solid Substances 0.000 claims description 5
- 239000000969 carrier Substances 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 5
- 101001084254 Homo sapiens Peptidyl-tRNA hydrolase 2, mitochondrial Proteins 0.000 description 4
- 102100030867 Peptidyl-tRNA hydrolase 2, mitochondrial Human genes 0.000 description 4
- 230000005611 electricity Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- WUPHOULIZUERAE-UHFFFAOYSA-N 3-(oxolan-2-yl)propanoic acid Chemical compound OC(=O)CCC1CCCO1 WUPHOULIZUERAE-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 229910052980 cadmium sulfide Inorganic materials 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 244000247747 Coptis groenlandica Species 0.000 description 1
- 235000002991 Coptis groenlandica Nutrition 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000005612 types of electricity Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/11—Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/11—Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
- H04B10/114—Indoor or close-range type systems
- H04B10/1141—One-way transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/40—Transceivers
- H04B10/43—Transceivers using a single component as both light source and receiver, e.g. using a photoemitter as a photoreceiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/80—Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water
- H04B10/801—Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water using optical interconnects, e.g. light coupled isolators, circuit board interconnections
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Optical Communication System (AREA)
- Stored Programmes (AREA)
Abstract
本文公开了使用单个光端口通信来更新固件的方法以及能够使用单个光端口通信来更新固件的微控制器(MCU)。该方法包括:在单个光端口接收到固件更新启动码时检测电池的电压;如果所检测的电池的电压等于或高于预定参考电压,则向发送器传输固件相关信息;接收与更新模式相对应的更新数据;以及在第一模式中存储与先前版本固件有关的回退信息并且还执行到新版本固件的更新,以及在第二模式中使用更新数据来更新先前版本固件的预定数据。
Description
技术领域
本发明涉及固件更新,以及更具体地涉及使用单个光端口通信来更新固件的方法以及能够更新固件的微控制器,该方法可使用单个光端口通信通过光生电动势来容易地更新微控制器(MCU)的固件,所述光生电动势借助于发送器辐射的光通过传输功能在发光二极管(LED)中生成。
背景技术
目前,总体而言,使用多种无线通信方法以控制设置在家、办公室、工厂等中的诸多电子器件和装置。使用多种微控制器(MCU)以有效地控制这些器件和装置。
为了更新MCU的固件,需要通过多种通信类型中的一种来下载用于更新的新版本固件,并且替换MCU的只读存储器(ROM)码。
在普通的射频(RF)通信的情况下,由于频率资源不足所以必须获得许可。相反,光通信基本上可立即使用而不用获得使用频率资源的许可或者不会与其他使用发生干扰。
此外,光通信使用光作为通信介质。相应地,由于不生成次级电磁波,因此光通信对人类无害,光通信可用于因错误操作或故障而发生严重问题的飞机、医院等中,光通信可容易地使光输入信号与其他信号的干扰最小化,以及当采用诸如LED的发可见光的元件时光通信可用于通信和发光的组合使用。
10-05524164号韩国专利公开了使用光通信来升级远程控制器的常规方法。用于升级远程控制器的装置包括服务提供器、用户终端和远程控制器,服务提供器配置成提供远程控制器升级信息;用户终端配置成通过预定网络连接至服务提供器、请求远程控制器升级信息、在显示设备上以亮度控制块的形式显示所请求的远程控制器升级信息、以及提供所请求的远程控制器升级信息;远程控制器配置成检测显示设备上显示的亮度控制块以及接收远程控制器升级信息。因此,远程控制器中包括至少两个光传感器,从连接至因特网的显示设备可容易地接收最近使用的远程控制器升级信息。
然而,在使用光通信的传统通信方法中,光发射单元(传输电路)和接收电路必须被单独地提供,光发射单元配置成传输信号。由于传输电路和接收器电路必须被单独地配置,因此需要光传输元件和光输入检测传感器或光输入检测元件(例如,光电二极管、端口晶体管、硫化镉(CDS)传感器等)。结果是,增加了装置制造成本,这是因为用于实施相应电路所需的组件数量庞大且实施还复杂,并且还增加了芯片制造成本,这是因为用于实施相应操作所需的端口数量至少为两个。
因此,需要这样的技术,其无需单独配置传输电路和接收器电路并且能够使用单个端口来更新MCU的固件。
发明内容
[技术问题]
因此,提出本发明以解决现有技术中存在的上述问题,且本发明的目的是提供使用单个光端口通信来更新固件的方法以及能够更新固件的微控制器,该方法能够仅使用单个光通信端口来执行传输和接收功能并且能够通过单个光通信端口来更新MCU的固件。
本发明另一目的是提供使用单个光端口通信来更新固件的方法以及能够更新固件的微控制器,由于使用单个光通信端口所以该方法能够在不切换电路的情况下更新固件,从而降低MCU的单位成本。
[解决问题的方法]
根据本发明的一方面,提供了使用单个光端口通信来更新固件的方法,包括:在单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,单个光端口既能传输数据又能接收数据;如果所检测的电池的电压等于或高于预定参考电压,则通过单个光端口向发送器传输固件相关信息;接收由发送器所传输的与更新模式相对应的更新数据并且将所接收的更新数据存储在预定存储区域中,该更新模式根据固件相关信息来确定;如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用更新数据来执行到新版本固件的更新,在该第一模式中固件可被还原;以及如果所存储的更新数据是第二模式中的更新数据,则使用更新数据来更新先前版本固件的预定数据,在该第二模式中先前版本固件的预定数据被更新。
更新数据可包括更新模式信息、总的包大小和有效校验码;以及存储可包括:通过有效校验码校验更新数据的有效性;以及如果更新数据有效则将更新数据存储在预定存储区域中。
该方法还可包括:当在校验有效性期间出现错误或者更新数据无效时,增加错误数据的数量;以及如果增加的错误数据的数量等于或小于预定指定的错误数量,则向发送器传输包错误和请求重传更新数据的重传请求码。
固件相关信息可包括先前版本固件的版本信息和在其中可存储数据的空区域的大小;以及更新模式可由先前版本固件的版本信息和空区域的大小来确定。
在单个光端口已切换到接收模式之后,当发送器向连接至单个光端口的LED辐射与固件更新启动码和更新数据相对应的光时,可依照通过辐射光在发光二极管(LED)中生成的光生电动势的电压来接收固件更新启动码和更新数据。
可依照载波式和闪烁式中的一个来接收固件更新启动码和更新数据,载波式使用输入至预定载波的高区与低区之间的时间比,闪烁式使用多个时间之间的区之间的时间比,在所述的多个时间处连接至单个光端口的发光二极管(LED)接收由发送器辐射的光。
根据本发明另一方面,提供了能够使用单个光端口通信来更新固件的微控制器(MCU),包括:电池电压检测电路,配置成在通过单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,单个光端口既能够传输数据又能够接收数据;信息传输电路,配置成如果所检测的电池的电压等于或高于预定参考电压,则通过单个光端口向发送器传输固件相关信息;存储单元,配置成接收由发送器所传输的与更新模式相对应的更新数据并且将所接收的更新数据存储在预定存储区域中,更新模式根据固件相关信息来确定;以及固件更新控制电路,配置成如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用更新数据执行到新版本固件的更新,在第一模式中固件可被还原,以及如果所存储的更新数据是第二模式中的更新数据,则使用更新数据来更新先前版本固件的预定数据,在第二模式中先前版本固件的预定数据被更新。
[有益效果]
根据本发明,可使用单个光通信端口来执行传输和接收功能,并且可使用单个光通信端口来更新MCU的固件,从而在不改变电路的情况下更新固件并且还降低装置的单位成本。
普通红外线数据技术(IrDA)通信和使用LED的可见光通信(VLC)需要用于进行接收和传输的传输端口和接收端口,并且还需要相应的实施所需的附加电路和传感器的电路结构。相反,本发明使用单个光通信端口。因此,本发明的该实施方式使用最小化的电路和数量最少的端口,由此确保MCU的成本竞争力,这多亏了最小化的电路和数量最少的端口;并且,本发明的该实施方式使用外部显示器的LED来执行通信以更新固件,从而使附加机构的结构或对外观的影响最小化,并因此提高空间利用率和设计效率。
此外,本发明使用单个光通信端口来更新固件,因此无需拆卸和组装便宜的机构以更新固件,从而避免了在拆卸/组装期间可能发生的对产品的损坏,其中,该机构没有使用诸如螺母和螺钉的附加紧固件部分。
附图说明
图1A和图1B是示出LED中的光生电动势的示例性示图;
图2是示出使用单个光通信端口的MCU外部电路的结构的示例的示图;
图3是示出根据本发明实施方式的使用单个光通信端口的电路的结构的示图;
图4A和图4B是示出根据本发明实施方式的MCU数据接收模式中的操作的操作流程图;
图5示出数据接收模式中单个光通信端口的数字示波器波形的示例;
图6示出数据接收信号的示例的波形;
图7示出载波式和闪烁式传输波形的示例;
图8是示出光通信方法中载波式的益处的示例性示图;
图9A、图9B和图9C是示出根据本发明实施方式的使用单个光通信端口的固件更新方法的操作流程图;
图10示出固件更新模式的示例;以及
图11示出根据本发明实施方式的能够使用单个光通信端口来更新固件的微控制器的结构。
[最佳实践实施方式]
根据本发明的一方面,提供了使用单个光端口通信来更新固件的方法,包括:在单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,单个光端口既能传输数据又能接收数据;如果所检测的电池的电压等于或高于预定参考电压,则通过单个光端口向发送器传输固件相关信息;接收由发送器所传输的与更新模式相对应的更新数据并且将所接收的更新数据存储在预定存储区域中,该更新模式根据固件相关信息来确定;如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用更新数据来执行到新版本固件的更新,在该第一模式中固件可被还原;以及如果所存储的更新数据是第二模式中的更新数据,则使用更新数据来更新先前版本固件的预定数据,在该第二模式中先前版本固件的预定数据被更新。
更新数据可包括更新模式信息、总的包大小和有效校验码;以及存储可包括:通过有效校验码校验更新数据的有效性;以及如果更新数据有效则将更新数据存储在预定存储区域中。
该方法还可包括:当在校验有效性期间出现错误或者更新数据无效时,增加错误数据的数量;以及如果增加的错误数据的数量等于或小于预定指定的错误数量,则向发送器传输包错误和请求重传更新数据的重传请求码。
固件相关信息可包括先前版本固件的版本信息和在其中可存储数据的空区域的大小;以及更新模式可由先前版本固件的版本信息和空区域的大小来确定。
在单个光端口已切换到接收模式之后,当发送器向连接至单个光端口的LED辐射与固件更新启动码和更新数据相对应的光时,可依照通过辐射光在发光二极管(LED)中生成的光生电动势的电压来接收固件更新启动码和更新数据。
可依照载波式和闪烁式中的一个来接收固件更新启动码和更新数据,载波式使用输入至预定载波的高区与低区之间的时间比,闪烁式使用多个时间之间的区之间的时间比,在所述的多个时间处连接至单个光端口的发光二极管(LED)接收由发送器辐射的光。
根据本发明另一方面,提供了能够使用单个光端口通信来更新固件的微控制器(MCU),包括:电池电压检测电路,配置成在通过单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,单个光端口既能够传输数据又能够接收数据;信息传输电路,配置成如果所检测的电池的电压等于或高于预定参考电压,则通过单个光端口向发送器传输固件相关信息;存储单元,配置成接收由发送器所传输的与更新模式相对应的更新数据并且将所接收的更新数据存储在预定存储区域中,更新模式根据固件相关信息来确定;以及固件更新控制电路,配置成如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用更新数据执行到新版本固件的更新,在第一模式中固件可被还原,以及如果所存储的更新数据是第二模式中的更新数据,则使用更新数据来更新先前版本固件的预定数据,在第二模式中先前版本固件的预定数据被更新。
具体实施方式
将参照附图详细描述本发明的实施方式。在本发明的以下说明书中,将省略对可能不必要地使本发明主旨模糊的相关已知组件或功能的详细描述。
然而,本发明不限于这些实施方式。在全部附图中,相同的组件分配有相同的附图标记。
下面参照图1A至图11详细描述根据本发明实施方式的使用单个光端口通信来更新固件的方法以及能够更新固件的微控制器。
在MCU中通过金线接合至端口的衬垫受接合装置精度的影响。如果衬垫的尺寸减小到等于或小于预定尺寸的尺寸,则在接合操作期间缺陷的发生率增大并且制造成本也增大。因此,对于每个过程,优选地是等于或大于预定尺寸的尺寸,并且该尺寸是高度影响芯片尺寸的因素。因此,就MCU而言,对于相同的功能,当端口数量少时成本竞争力可得以增加。
本发明使用单个光通信端口来执行对外部显示器的控制和固件的更新,并且不需要用于固件的更新的附加端口,从而能够在不需要附加电路或不切换电路的情况下更新固件,由此降低MCU装置的单位成本。
图1A和图1B是示出LED中的光生电动势的示例性示图。
如图1A和图1B所示,当高强度光入射到P-N结半导体的结合部分上时,半导体内生成的电子和空穴由于接触电势差而分离,并因此生成光生电动势,其中在两种材料中出现不同类型的电。通常,便宜的电子装置采用发光二极管(LED)来向用户或外界通知电流状态。这些LED具有PN结半导体结构。
因此,根据本发明,提供对固件进行更新所需要的数据的发送器将光辐射至用于对外部显示器进行控制的LED上,从而使用少量的由LED生成的电流或光生电动势来更新MCU的固件。
图2是示出使用单个光通信端口的MCU的外部电路的结构的示例的示图,以及图3是示出根据本发明实施方式的使用单个光通信端口的电路的结构的示图。
参照图2和图3,MCU的外部电路可包括被配置成向MCU施加电压VDD的电池和电力电容器、被配置成执行单个光端口通信的LED以及设置在LED与VDD端口之间的限流电阻器。明显地是,必要时可以不提供限流电阻器。
本发明的数据通信使用半双工通信,该半双工通信一次在一个方向上传输数据,这是因为使用单个光通信端口。图3中所示的N-TR是晶体管,当在显示模式中使用LED时或者当传输数据时该晶体管用于打开LED。
下面参考图3描述数据接收模式中的操作。
在数据接收模式中,“low(低)”切换控制信号施加到N-TR使能端口,N-TR进入截止状态,并且计时器、计数器和RAM缓冲器被初始化以确定通过LED所接收的信号。
可使用内部的电压检测指示器(VDI;未示出)来测量施加到MCU的VDD电压,并且可将比较器的参考电压设定成对先前约定的通信波形的载波频率以及对当前电压是最优的。
由光生电动势生成的电压极大地受当前VDD、载波频率以及辐射到连接至MCU的单个光通信端口的LED上的光量的影响。即使在辐射特定量的光或更大量的光时,LED中生成的光生电动势由于其限制而不会增加至特定水平以上。此外,当频率高时,根据LED的光生电动势切换特性和阻抗分量,迅速达到饱和。如图5所示,即使在载波的OFF区中,也显示出以下特性:载波的ON信号在上升到参考电压之前被输入并且电压降低。因此,必须适当设定数据通信的载波频率和通信有效距离带。
在初始化之后的特定阶段期间,等候先前约定的数据格式的启动信号。当光信号从外界(即,发送器)辐射至LED时,由于光生电动势效应而在LED中生成小电流。比较器将由LED的小电流生成的电压与参考电压进行比较,并且输出经数字化转换的信号,其中,等于或高于参考电压的电压转换成数字信号“1”,而低于参考电压的电压转换成数字信号“0”。
通过计时器和计数器对经转换的数字信号进行采样并且将该数字信号存储在RAM缓冲器中,并且基于先前约定的波形信息格式来确定所存储的数据是否为有效数据。当在该时段期间即在数据接收模式期间没有输入有效的输入时,在数据传输模式中执行操作或者如普通LED那样来执行操作。
参考图4A和图4B更详细地描述数据接收模式中的操作。
图4A和图4B是示出根据本发明实施方式的MCU数据接收模式的操作流程图。如图4A和图4B所示,在操作S410和S420中,数据接收模式设定参考电压,即比较器的两个输入电压中的一个,该比较器在普通模式操作期间校验电池电压VDD并且将所接收的数据转换成1和0。
在操作S430中,确定在LED的OFF阶段期间是否从发送器向LED输入光信号;当光信号被输入时,在操作S440中将模式切换成数据通信接收待机模式;以及在操作S450中,基于所接收的光信号来确定启动信号是否有效。
在操作S450中如果确定启动信号有效,则在操作S460中初始化通信比较功能并且读取通信包表,从而在操作S470中确定比特(bit)信号是否有效。如果比特信号有效,则在操作S471中存储该有效比特并且确定其后续比特信号的有效性。
在操作S470、S471和S480中,相应于包的大小,将执行确定比特信号的有效性和存储的过程重复多次。在完成该过程之后,在操作S490中确定包数据是否有效;以及如果包数据有效,则在操作S491中处理该包数据,由此执行数据接收模式的过程。
图6示出数据接收信号的示例的波形。该图示出在接收数据期间对连接至LED的光通信端口的输入。
如图6所示,连接至单个光通信端口的LED在输出模式或传输模式中进行操作(参见区A);然后在LED停止输出并校验是否存在所接收的信号的接收模式中进行操作,如区B和区C所示。如果区B和区C中不存在输入信号,则LED操作成再次执行输出并且在有效输入进入时确定进入的信号。
区C示出,由发送器传输的LED端口信号被辐射到LED上且该信号被光生电动势转录。在本发明中,通信数据的格式和结构可根据使用的装置和目的而改变。通信数据的格式可包括载波频率、启动比特、BIT0、BIT1和延迟保持时间。数据的结构可包括启动码、包ID、控制码、索引地址和校验和,如下面表1所示。
表1
启动码 | 包ID | 控制码 | 索引地址 | 校验和 |
在该情况中,启动码是适于识别通信数据的启动的信号;包ID是指适于在诸如发送器的主站和诸如接收器的从站之间执行匹配的ID地址;索引地址是指适于使得控制码施加于其的目标索引地址;以及校验和是指适于校验包数据是否有效的码值。
启动码和各个数据比特可划分成载波频率、高比特区和低比特区。传输格式的类型可划分成具有载波频率的类型,诸如载波式,以及不具有载波频率的类型,诸如闪烁式。
就载波式而言,当发送器传输数据时,发送器传输这样一种波形,在该波形中特定载波频率已经与将要传输至接收器的信号相结合(例如,与结合(AND-combined)),并且发送器基于输入至指定载波或设定载波的高区和低区之间的时间比,来将数据的启动信号与BIT0信号和BIT1信号(即待传输的数据的二进制数据)区分开,正如在图7所示波形中的上面的波形中。例如,对于启动信号,高区A的时间比低区的时间长;对于BIT0,高区的时间与低区的时间相同;以及对于BIT1,高区的时间比低区的时间短。
考虑到载波式的特性,就不包括载波的传输信号(波中没有插入载波)而言,由于光噪声,信号可能丢失或失真;反之,就包括载波的传输信号(波中插入有载波)而言,信号具有对于信号的丢失和失真以及对于由光噪声引起的噪声稳健的特性,正如图8中所示。
当使用载波式来传输数据时,优选地是,在基于光生电动势输入来考虑切换速度时设计数据格式的结构。如图5所示,可看出,由单个光端口所接收的载波OFF区以一斜率上升,在载波OFF区在没有输入的情况下上升至初始状态电压电平之前,施加后续信号,因此在输入区中最高电压电平与初始电压电平之间存在差异。在最高电压电平与初始电压电平之间存在差异的相应的区与发送器的光量和输入频率成比例地增大。这样的原因是,对由光生电动势生成的电流而引起的电压进行放电所需的时间取决于LED。因此,当放电时间比载波速度短时出现饱和区,因此信号失真的区取决于适于确定信号的参考电压的位置而出现。
显然,使用上述特性,可实现实施例,以使得能够根据发送器的光量和频率只在特定距离的区中传输和接收信号。
在数据传输期间,基于短区与从光源(例如LED)打开的时间到光源下一次打开的时间的区之间的时间比,闪烁式将数据的启动信号与BIT0信号和BIT1信号(即,待传输的数据的二进制数据)区分开。
虽然闪烁式的抗噪声特性比载波式差,但是与载波式相比其可容易地确保放电时间,这是因为闪烁式不使用载波,因此总体上可实现比载波式更快的通信速度。
图9A、图9B和图9C是示出根据本发明实施方式的使用单个光通信端口的固件更新方法的操作流程图,以及图10示出固件更新模式的示例。
参照图9A至图9C和图10,在根据本实施方式的固件更新方法中,当适于对接收器(更新固件码接收器)执行固件更新的MCU接收通过发送器(更新固件码发送器)的光辐射所传输的固件更新启动码时,通过使用内部VDI(电压检测指示器)测量当前VDD电压(电池电压)且然后将所测量的VDD电压A与预定容许电压B进行比较,来确定所测量的VDD电压是否等于或高于容许电压,从而确定是否执行固件更新。
如果MCU的电池电压在更新容许电压范围内,则向发送器传输连接成功码、固件版本信息(即,MCU当前的固件版本信息)以及可存储数据的空区域的大小。相反,如果电池电压在容许电压范围之外,则向发送器传输容许电压错误码,且而后终止该更新模式。
当接收由接收器所传输的连接成功码、MCU当前的固件版本信息以及空区域的大小时,发送器考虑空区域的大小和版本信息来确定更新模式。
在本发明中,固件更新模式可包括两种不同的模式,如图10所示。这两种更新模式可包括可还原的固件更新模式A和局部的固件更新模式B,在可还原的固件更新模式A中,可还原更新之前的接收器MCU的固件;在局部的固件更新模式B中,可更新接收器MCU当前固件的部分数据。
当在可还原的更新模式中执行更新时,MCU的ROM区包括新版本固件、旧固件和回退信息数据。
在可还原的固件更新模式中,当接收器MCU的ROM的空区域等于或大于新版本固件更新码和回退信息时,将新版本固件码存储在空区域中,并且将中断向量校正成新版本固件码的函数地址。
可还原的固件更新模式的优点是,因为先前版本固件被保留所以能够对有问题的新版本固件进行还原。
虽然局部的固件更新模式提供快的固件更新速度,这是由于只有改变的数据才被先前版本固件的相应部分替换,或者仅更新先前版本固件的一部分,但是局部的固件更新模式的缺点是,由于改变了固件数据所以如果没有接收到先前版本固件则不能执行还原。
如上所述,当发送器确定更新模式时,向接收器传输更新模式信息、总的包大小和有效校验码。
当接收器从发送器接收更新固件数据(即固件更新数据)时,接收器校验数据的有效性并且将数据存储在RAM缓冲器中。
在这种情况下,当达到闪存块的写入大小时,MCU再次校验数据的有效性,并且如果数据有效的话则存储该数据。
当在上述过程中出现错误时,增加错误数据的数量。如果错误数据的数量等于或小于预定指定的错误数量或参考错误数量,则向发送器传输包错误和重传请求码。如果错误数据的数量超过指定的错误数量,则向发送器传输错误传输终止码并且终止固件更新模式。
相反,如果所接收的数据有效,则接收器向发送器传输请求后续包的码,直至接收到与包大小相对应的包。
一旦与包大小相对应的所有包均被接收,便确定所接收的更新数据是否与局部的固件更新模式或可还原的固件更新模式相对应。如果所接收的更新数据与局部的固件更新模式相对应,则校验更新数据的有效性。如果更新数据有效,则执行固件的局部更新、向发送器传输更新终止码并且终止该更新。
相反,如果更新模式是可还原的更新模式,则更新向量表、存储与先前版本固件有关的回退信息、并且而后校验更新数据的有效性。如果更新数据有效,则执行固件的局部更新、向发送器传输更新终止码并且终止该更新。
一旦固件更新所需的所有更新数据包均被传输至接收器,则就可还原的固件更新模式而言发送器存储与先前版本固件有关的回退信息、根据新版本固件更新中断向量表、并且重设程序启动地址。
图11示出根据本发明实施方式的能够使用单个光通信端口来更新固件的微控制器的结构,并且该微控制器可执行更新上述固件所需的所有操作。
参照图11,根据本发明的微控制器MCU 1100包括数据接收器电路1110、电池电压检测电路1120、信息传输电路1130、存储单元1140和固件更新控制电路1150。
在MCU切换至数据接收模式(即,连接至LED的单个光端口切换至接收模式)之后,当发送器将与更新固件所需的固件更新启动码和更新数据相对应的光辐射到连接至单个光端口的LED上时,数据接收器电路1110依照通过辐射光在LED中生成的电动势的电压而接收固件更新启动码和更新数据。
在这种情况下,数据接收器电路1110可从上述载波式或闪烁式发送器接收数据。
数据接收器电路1110不仅可接收上述数据,还可接收用于本发明的操作所需的所有数据。
当具有数据传输功能的单个光端口接收到从发送器传输的固件更新启动码时,电池电压检测电路1120检测MCU的电池电压。
在这种情况下,可使用电压检测指示器(VDI)来测量电池电压。
如果由电池电压检测电路1120检测的电池电压等于或高于预定的参考电压,则信息传输电路1130通过单个光端口向发送器传输固件相关信息。
在这种情况下,固件相关信息可包括连接成功码、固件版本信息以及能够存储数据的空区域的大小。
存储单元1140通过数据接收器电路1110接收与发送器所确定的更新模式相对应的更新数据,并且将所接收的更新数据存储在预定存储区域中。
在这种情况下,可由发送器使用通过单个光端口从信息传输电路1130传输至发送器的固件相关信息来确定更新模式。该更新模式可通过考虑固件版本信息和可存储数据的空区域的大小来确定。
存储在存储单元1140中的更新数据可包括更新模式信息、总的包大小和有效校验码。
如果发送器确定的更新模式是能够还原先前版本固件的可还原的固件更新模式,则固件更新控制电路1150存储与先前版本固件有关的回退信息,使用从发送器接收的更新数据来执行到新版本固件的更新。相反,如果发送器确定的更新模式是局部的固件更新模式,则使用从发送器接收的更新数据来替换或更新MCU的固件的部分数据(即预定数据)。
在这种情况下,固件更新控制电路1150通过有效校验码来校验更新数据的有效性,并且如果更新数据有效则可将更新数据存储在存储单元的预定存储区域中。
在这种情况下,当在校验有效性期间出现错误或者更新数据无效时,固件更新控制电路1150增加错误数据的数量;以及如果增加的错误数据的数量等于或小于预定指定的错误数量,则可通过对信息传输电路1130进行控制来向发送器传输包错误以及请求重传更新数据的重传请求码。
能够根据本发明更新固件的MCU不仅可包括上述更新功能,还可包括参照图1A至图10所描述的所有功能。
虽然已经结合具体细节(诸如具体元件)和以上有限的实施方式和附图描述了本发明,但是这些仅用于帮助全面地理解本发明。本发明不局限于这些实施方式,并且本发明所属领域的普通技术人员可基于前述说明进行各种修改和变型。
因此,本发明的技术精神不应仅基于所描述的实施方式来确定,随附的权利要求、权利要求的所有等同物以及等同的修改应当解释成落入本发明的精神的范围内。
[产业实用性]
本文公开了使用单个光端口通信来更新固件的方法以及能够使用单个光端口通信来更新固件的微控制器(MCU)。该方法包括:在单个光端口接收到固件更新启动码时检测电池的电压;如果所检测的电池的电压等于或高于预定参考电压,则向发送器传输固件相关信息;接收与更新模式相对应的更新数据;以及在第一模式中存储与先前版本固件有关的回退信息并且还执行到新版本固件的更新,以及在第二模式中使用更新数据来更新先前版本固件的预定数据。
Claims (10)
1.使用单个光端口通信来更新固件的方法,包括:
在单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,所述单个光端口既能够传输数据又能够接收数据;
如果所检测的电池的电压等于或大于预定参考电压,则通过所述单个光端口向所述发送器传输固件相关信息;
接收由所述发送器所传输的与更新模式相对应的更新数据,所述更新模式根据所述固件相关信息来确定;
将所接收的更新数据存储在存储设备的预定存储区域中;
如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用所述更新数据执行到新版本固件的更新,在所述第一模式中固件能够被还原;以及
如果所存储的更新数据是第二模式中的更新数据,则使用所述更新数据来更新所述先前版本固件的预定数据,在所述第二模式中所述先前版本固件的预定数据被更新,
其中,在所述单个光端口切换至接收模式之后,当所述发送器向连接至所述单个光端口的发光二极管辐射与所述固件更新启动码和所述更新数据相对应的光时,依照通过辐射光在发光二极管中生成的光生电动势的电压而接收所述固件更新启动码和所述更新数据。
2.如权利要求1所述的方法,其中:
所述更新数据包括更新模式信息、总的包大小和有效校验码;以及
所述存储包括:
通过所述有效校验码来校验所述更新数据的有效性;以及
如果所述更新数据有效,则将所述更新数据存储在所述预定存储区域中。
3.如权利要求2所述的方法,还包括:当在校验所述有效性期间出现错误或者所述更新数据无效时,增加错误数据的数量;以及如果增加的错误数据的数量等于或小于预定指定的错误数量,则向所述发送器传输包错误和请求重传更新数据的重传请求码。
4.如权利要求1所述的方法,其中:
所述固件相关信息包括所述先前版本固件的版本信息以及在其中能够存储数据的空区域的大小;以及
所述更新模式由所述先前版本固件的版本信息和所述空区域的大小来确定。
5.如权利要求1所述的方法,其中,依照载波式和闪烁式中的一个来接收所述固件更新启动码和所述更新数据,所述载波式使用输入至预定载波的高区与低区之间的时间比,所述闪烁式使用多个时间之间的区之间的时间比,在所述的多个时间处连接至所述单个光端口的发光二极管接收由所述发送器辐射的光。
6.能够使用单个光端口通信来更新固件的微控制器,包括:
电池电压检测电路,配置成在通过单个光端口接收到由发送器传输的固件更新启动码时检测电池的电压,所述单个光端口既能够传输数据又能够接收数据;
信息传输电路,配置成如果所检测的电池的电压等于或高于预定参考电压,则通过所述单个光端口向所述发送器传输固件相关信息;
存储单元,配置成:
接收由所述发送器所传输的与更新模式相对应的更新数据,所述更新模式根据所述固件相关信息来确定;以及
将所接收的更新数据存储在预定存储区域中;以及
固件更新控制电路,配置成:
如果所存储的更新数据是第一模式中的更新数据,则存储与先前版本固件有关的回退信息并且使用所述更新数据执行到新版本固件的更新,在所述第一模式中固件能够被还原;以及
如果所存储的更新数据是第二模式中的更新数据,则使用所述更新数据更新所述先前版本固件的预定数据,在所述第二模式中所述先前版本固件的预定数据被更新,
其中,所述微控制器还包括数据接收器电路,所述数据接收器电路配置成:在所述单个光端口切换成接收模式之后,当所述发送器向连接至所述单个光端口的发光二极管辐射与所述固件更新启动码和所述更新数据相对应的光时,依照通过辐射光在发光二极管中生成的光生电动势的电压而接收所述固件更新启动码和所述更新数据。
7.如权利要求6所述的微控制器,其中:
所述更新数据包括更新模式信息、总的包大小和有效校验码;以及
所述固件更新控制电路还配置成:
通过所述有效校验码来校验所述更新数据的有效性;以及
如果所述更新数据有效,则将所述更新数据存储在所述预定存储区域中。
8.如权利要求7所述的微控制器,其中,所述固件更新控制电路还配置成:
当在校验所述有效性期间出现错误或者所述更新数据无效时,增加错误数据的数量;以及
如果增加的错误数据的数量等于或小于预定指定的错误数量,则向所述发送器传输包错误和请求重传更新数据的重传请求码。
9.如权利要求6所述的微控制器,其中:
所述固件相关信息包括所述先前版本固件的版本信息以及在其中能够存储数据的空区域的大小;以及
所述更新模式由所述先前版本固件的版本信息以及所述空区域的大小来确定。
10.如权利要求6所述的微控制器,还包括数据接收器电路,配置成:依照载波式和闪烁式中的一个来接收所述固件更新启动码和所述更新数据,所述载波式使用输入到预定载波的高区与低区之间的时间比,所述闪烁式使用多个时间之间的区之间的时间比,在所述的多个时间处连接至所述单个光端口的发光二极管接收所述发送器辐射的光。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130167326A KR101458428B1 (ko) | 2013-12-30 | 2013-12-30 | 단일 광 포트 통신을 이용한 펌웨어 업데이트 방법 및 펌웨어 업데이트가 가능한 마이크로 컨트롤러 |
KR10-2013-0167326 | 2013-12-30 | ||
PCT/KR2014/012622 WO2015102278A1 (ko) | 2013-12-30 | 2014-12-23 | 단일 광 포트 통신을 이용한 펌웨어 업데이트 방법 및 펌웨어 업데이트가 가능한 마이크로 컨트롤러 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106464359A CN106464359A (zh) | 2017-02-22 |
CN106464359B true CN106464359B (zh) | 2019-04-09 |
Family
ID=52287125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480071881.4A Active CN106464359B (zh) | 2013-12-30 | 2014-12-23 | 使用单个光端口通信更新固件的方法和能更新固件的微控制器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20160306622A1 (zh) |
KR (1) | KR101458428B1 (zh) |
CN (1) | CN106464359B (zh) |
WO (1) | WO2015102278A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10412046B2 (en) * | 2014-06-17 | 2019-09-10 | Nxp Usa, Inc. | Method of, and a device for updating a multiple-processing entity packet management system, and associated computer program product |
CN108139899B (zh) * | 2015-09-24 | 2021-04-23 | Oppo广东移动通信有限公司 | 终端设备和控制充电的方法 |
CN106452577A (zh) * | 2016-09-26 | 2017-02-22 | 北京邮电大学 | 一种可见光通信装置、系统及方法 |
US10866798B2 (en) * | 2017-12-28 | 2020-12-15 | Intel Corporation | Firmware upgrade method and apparatus |
US11016746B2 (en) * | 2018-01-17 | 2021-05-25 | Kymeta Corporation | Method and apparatus for remotely updating satellite devices |
CN108376077A (zh) * | 2018-02-11 | 2018-08-07 | 广东美的厨房电器制造有限公司 | 控制单元的升级方法和装置 |
EP3582032B1 (de) * | 2018-06-12 | 2022-07-06 | VEGA Grieshaber KG | Feldgerät mit reduzierter stillstandszeit bei firmware-update |
US10853472B2 (en) * | 2018-06-28 | 2020-12-01 | Intel Corporation | System, apparatus and method for independently recovering a credential |
CN108572839A (zh) * | 2018-07-12 | 2018-09-25 | 四川虹美智能科技有限公司 | 智能冰箱系统升级方法、系统、智能冰箱和云端服务器 |
CN111142917A (zh) * | 2019-12-18 | 2020-05-12 | 广东美的厨房电器制造有限公司 | 一种家电多mcu系统在线升级方法、电子设备及介质 |
US11640232B2 (en) * | 2021-09-02 | 2023-05-02 | Electrolux Home Products, Inc. | Cost efficient method for communicating from an appliance to an external device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1808383A (zh) * | 2005-01-20 | 2006-07-26 | 明基电通股份有限公司 | 固件更新方法及装置 |
CN1868149A (zh) * | 2003-10-17 | 2006-11-22 | 奥林巴斯株式会社 | 信息取得装置、信息提供装置以及信息提供系统 |
EP2690802A1 (en) * | 2011-03-23 | 2014-01-29 | Telnet Redes Inteligentes, S.A. | System for the certification of a passive optical network and for the detection of problems and faults in the last fibre legs |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000040003A (ja) * | 1998-07-23 | 2000-02-08 | Nec Corp | ファームウェア更新システム |
US7542757B2 (en) * | 2003-11-20 | 2009-06-02 | Agere Systems Inc. | Method, system, and computer program product for over-the-air download to satellite radio |
US8111999B2 (en) * | 2004-10-29 | 2012-02-07 | Finisar Corporation | Inter-transceiver module communication for firmware upgrade |
US7870379B2 (en) * | 2006-10-10 | 2011-01-11 | Exaflop Llc | Updating a power supply microcontroller |
JP4702319B2 (ja) * | 2007-04-20 | 2011-06-15 | 株式会社日立製作所 | 無線通信カード実装端末および無線通信カード実装端末におけるデータ更新方法 |
US8674913B2 (en) * | 2008-09-05 | 2014-03-18 | Ketra, Inc. | LED transceiver front end circuitry and related methods |
JP2010130316A (ja) * | 2008-11-27 | 2010-06-10 | Sumitomo Electric Ind Ltd | 光送信装置及びファームウェアの更新方法 |
JP2012060302A (ja) * | 2010-09-07 | 2012-03-22 | Yokogawa Electric Corp | 光伝送装置 |
-
2013
- 2013-12-30 KR KR20130167326A patent/KR101458428B1/ko active IP Right Grant
-
2014
- 2014-12-23 CN CN201480071881.4A patent/CN106464359B/zh active Active
- 2014-12-23 WO PCT/KR2014/012622 patent/WO2015102278A1/ko active Application Filing
-
2016
- 2016-06-24 US US15/192,484 patent/US20160306622A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1868149A (zh) * | 2003-10-17 | 2006-11-22 | 奥林巴斯株式会社 | 信息取得装置、信息提供装置以及信息提供系统 |
CN1808383A (zh) * | 2005-01-20 | 2006-07-26 | 明基电通股份有限公司 | 固件更新方法及装置 |
EP2690802A1 (en) * | 2011-03-23 | 2014-01-29 | Telnet Redes Inteligentes, S.A. | System for the certification of a passive optical network and for the detection of problems and faults in the last fibre legs |
Also Published As
Publication number | Publication date |
---|---|
US20160306622A1 (en) | 2016-10-20 |
KR101458428B1 (ko) | 2014-11-07 |
CN106464359A (zh) | 2017-02-22 |
WO2015102278A1 (ko) | 2015-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106464359B (zh) | 使用单个光端口通信更新固件的方法和能更新固件的微控制器 | |
CN101404113B (zh) | 一种在嵌入式系统中用软件实现红外遥控解码的方法 | |
CN103324333A (zh) | 触控式电子装置及降低通讯信号干扰触控感测功能的方法 | |
US9367121B2 (en) | Universal serial bus USB 3.0 compatible host with lower operation power consumption and method for reducing operation power consumption of a USB compatible 3.0 host | |
CN101965599A (zh) | 对设备与电源之间的开关进行致动的方法 | |
US9910819B2 (en) | Two-wire serial interface and protocol | |
CN101673220B (zh) | 一种提高双界面sim卡工作并行度的方法 | |
US9603224B2 (en) | Interface circuit for signal transmission | |
TWI477974B (zh) | 電子裝置及降低電子裝置功耗之方法 | |
CN106066661A (zh) | 一种易于实现的SOC内置高精度RC Oscillator的校准系统 | |
CN103886736B (zh) | 一种基于智能盒的红外学习控制系统及方法 | |
EP3417680A1 (en) | Lighting unit with near field communication, integrated circuit and methods therefor | |
WO2014176872A1 (zh) | 无线电能传输系统的功率调节方法及系统 | |
CN102194307B (zh) | 信号机遥控电路 | |
CN102111580B (zh) | 一种具有rf遥控模块的电子装置及其遥控方法 | |
CN103369759A (zh) | 一对多主从模式led照明遥控装置 | |
CN201750598U (zh) | 无线智能路灯控制器及其管理系统 | |
CN206963138U (zh) | 一种智能开关照明系统 | |
CN209311874U (zh) | 一种小型rs485转换器 | |
CN114475473B (zh) | 一种基于spi双机通信的直流充电控制器 | |
CN202771610U (zh) | 电视交换机的学习型红外遥控系统 | |
CN104519623A (zh) | 一种基于dali协议控制指令的传输系统 | |
CN100407246C (zh) | 遥控信号发射芯片 | |
CN103490762A (zh) | 集成电路及发光二极管集成电路级联信号的单线传输电路 | |
CN103391279A (zh) | 家庭自动化系统的通讯协议适配设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |