CN1083589C - 将软件程序载入电可擦可编程只读存储器的方法 - Google Patents
将软件程序载入电可擦可编程只读存储器的方法 Download PDFInfo
- Publication number
- CN1083589C CN1083589C CN96107767A CN96107767A CN1083589C CN 1083589 C CN1083589 C CN 1083589C CN 96107767 A CN96107767 A CN 96107767A CN 96107767 A CN96107767 A CN 96107767A CN 1083589 C CN1083589 C CN 1083589C
- Authority
- CN
- China
- Prior art keywords
- identification code
- microcontroller
- program
- written
- code position
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Read Only Memory (AREA)
- Stored Programmes (AREA)
Abstract
将软件程序由一主机载入一外部设备内一电可擦可编程只读存储器中的方法,此方法包含下列步骤:(1)在微控制器中安排一软件更新程序;(2)微控制器执行软件更新程序中的一载入动作,接受由主机透过接口传给微控制器的软件程序;(3)透过数据线及地址线,执行电可擦可编程只读存储器的程序烧写。
Description
本发明涉及将软件程序载入电可擦可编程只读存储器的方法。具体地涉及以闪速存储器(Flash Memory)或电可擦可编程只读存储器(EEPROM)做微电脑外部设备控制软件的储存装置。
目前的外部设备以掩模(Mask)只读存储器或可擦可编程只读存储器(写一次)作为储存控制软件的装置。如图1所示,微控制器11(80C32)依可擦可编程只读存储器(EPROM)13(IC27512)烧好的程序执行,两者以数据信号131线连接。数据信号线131并输入锁存器15。微控制器11(80C32)藉信号线110与光盘机17连接;微控制器11分别输出地址锁存选通(ALE)、地址(A8-A15)、程序输出致能(PSEN)信号至锁存器15、EPROM13。数据信号线131为多工信号线(AD0-AD7),如习知技术,地址锁存选通(ALE)信号用以通知锁存器15锁定(A0-A7)。
因目前的只读光盘机(CD-ROM)属初期发展性产品,其固件(FIR-MWARE)因规格解释的不同而可能随时须要更新。目前的做法为拆开机器更换EPROM13(IC27512)。利用此种方式在产品的生产及更新上会有下列几个缺点:
(1)Mask只读存储器订作的前导时间(lead time)长,对生命周期短的外部设备极为不利。
(2)可擦可编程只读存储器作写入的动作必需耗费大量人工成本。
(3)Mask只读存储器及可擦可编程只读存储器在控制软件的更改版本时即需报废。
(4)当控制软件有瑕疵(bug)时,产品的拆装及更换可擦可编程只读存储器或Mask只读存储器,需耗费大量人工。
目前以闪速存储器及电可擦可编程只读存储器来取代Mask只读存储器或可擦可编程只读存储器的方法,虽然可以避免上述第(3)项缺点,但是由于缺乏一个由电脑接口直接写入的方法,控制软件的载入及更新仍须耗费大量人工成本。
为了解决上述耗费大量人工成本及报废不当材料的种种问题,本发明的目的是提供一种由电脑接口直接将外部设备的控制软件载入在外部设备上的闪速存储器或电可擦可编程只读存储器的方法,此种方法可以简化控制软件载入和更新所需的制程,节省大量人工成本。
根据本发明的目的,本发明提供的将软件程序由一主机载入一外部设备内一电可擦可编程只读存储器中的方法,该主机下达一软件程序载入的指令,该外部设备包含一微控制器,其与主机藉一接口连接,微控制器与电可擦可编程只读存储器之间连接有一数据线及一地址线,该方法包含下列步骤:
(1)在微控制器中安排一软件更新程序;
(2)微控制器执行软件更新程序中的一载入动作,接受由主机透过接口传给微控制器的软件程序;
(3)透过数据线及地址线,执行电可擦可编程只读存储器的程序烧写。
根据本发明的目的,本发明还提供了另一种将软件程序由一主机载入一外部设备内一电可擦可编程只读存储器中的方法,该主机下达一软件程序载入的指令,该外部设备包含一微控制器,其与主机藉一接口连接,微控制器与电可擦可编程只读存储器之间连接有一数据线及一地址线,该方法包含下列步骤:
(1)在电可擦可编程只读存储器中安排一软件更新程序;
(2)微控制器执行软件更新程序中的一载入动作,接受由主机透过接口传给微控制器的软件程序;
(3)透过数据线及地址线,执行电可擦可编程只读存储器的程序烧写。
利用电脑接口(如RS232、IDE、SCSI等)以本发明的方法可将最新版的软件程序载入于闪速存储器或电可擦可编程只读存储器中,以达到简化生产、备料,节省工时,避免修改所须的拆装及产品的报废,同时随时保持产品的最新版本等优点。
本发明的目的、特征将参考附图结合实施例进行详细描述。
附图简要说明:
图1是一习知技术;
图2是本发明第一实施例的硬件环境;
图3是本发明第一实施例的方法流程;
图4是本发明第二实施例的硬件环境;
图5是本发明第二实施例的闪速存储器19的安排;
图6是本发明第二实施例的方法流程。
本发明的一实施例直接由主机的IDE接口下命令给CD-ROM,CD-ROM的程序则放于闪速存储器内,同时CD-ROM内的微控制器则有一段常驻小程序负责烧写的工作。
如图2所示,在微控制器12中一“软件更新程序”负责从接口(SCSI或IDE或RS232)将此外部设备的控制软件由主机端10载入闪速存储器或电可擦可编程只读存储器19中。微控制器12依闪速存储器或电可擦可编程只读存储器19烧好的程序执行,两者以数据信号线191连接。数据信号线191并输入锁存器15。微控制器12藉信号线120与光盘机17连接;微控制器12分别输出地址锁存选通(ALE)、地址(A8-A15)、程序输出致能(PSEN)信号至锁存器15、EEPROM19。其中元件20、21、22为“或”门,元件24为反相器。RD信号动作时表示微控制器12欲读取数据,程序输出致能(Program Strobe Ena-ble--PSEN)信号指示电可擦可编程只读存储器19输出程序。
细部过程如图3流程所示:
a.开机时因EA处于高电位,微控制器12执行内部由地址0(PC值等于0)开始的程序,此时若未接到主机10要求更改固件的命令(方框305),将PC值改成B(方框307),接着,微控制器12则利用接到EA脚位的I/O脚位将EA拉LOW(方框309),之后,微控制器12即执行外部闪速存储器19内的程序(方框311)。适当地址的安排及一些无动作(NOP)指令的加入可使微控制器12内部程序切换至外部闪速存储器19(或电可擦可编程只读存储器)程序的过程顺畅。当切换完成,则由存在于闪速存储器或电可擦可编程只读存储器19的外部设备控制固件控制外部设备17的正常运作(方框311)。若于运作过程中有接到主机10要求更改固件的命令(方框313),至方框315使将EA拉HIGH且PC值改成A,然后至方框319。
b.当要载入或更新外部设备17的控制软件时,则由主机10透过接口(如SCSI)下命令给外部设备的控制软件,当控制软件收到要载入或更新软件的要求时(方框305),透过I/O脚位将EA放开,使之为High(方框317)。此时微控制器12即执行其内部的“软件更新程序”(由地址A开始)中的载入动作(方框319)。而烧写数据(更新版的外部设备控制软件)由主机10透过接口传给微控制器12中的“软件更新程序”(方框321)。然后透过微控制器12与闪速存储器(或电可擦可编程只读存储器)19之间连接的各数据线191及地址线121,执行闪速存储器(或电可擦可编程只读存储器)的烧写(方框323)。当烧写完成后,重新开机(方框327),外部设备17即执行新版的程序19。
c.I/O脚位除了控制EA外同时控制闪速存储器19的动作。当I/0脚位为Low,微控制器12执行闪速存储器19的程序时,由闪速存储器19的OE脚位读取PSEN信号,以允许闪速存储器19程序码的输出。当EA为High,执行微控制器12内部常驻程序以烧写闪速存储器19时,OE、I/O脚位为High可防止闪速存储器19程序码的输出。此时,烧写控制信号WR由微控制器12的WR脚位经由“或”(OR)门23送至闪速存储器19WE脚位,以写入程序码。
如图4所示,微控制器12依闪速存储器或电可擦可编程只读存储器19烧好的程序执行,两者以数据信号线191连接。数据信号线191并输入锁存器15。微控制器12藉信号线120与光盘机17连接;微控制器12分别输出地址锁存选通(ALE)、地址(A8-A15)、程序输出致能(PSEN)、写入(WR)信号至锁存器15、EEPROM 19。另外,微控制器12与主机10藉接口SCSI连结。闪速存储器19先烧入一段监控程序,此段监控程序的作用与前述方法中“软件更新程序”近似,其功能为判定经由接口来之命令是否为开始烧录的指令。若是烧录新程序的命令则开始作烧录动作。如图5,(1)假设预先烧录的监控程序为长度为1K字节,置于存储器19最前端1K字节的位置。(2)从1K字节后为被烧录的主程序储存区。(3)预烧监控程序时,选择1K字节空间中的一个程序预设辨识码位置,烧入预设辨识码(PSID),假设值为00H。此预设辨识码内(PSID)亦可包含固件版本信息,如v2.0,在内。(4)主程序空间中亦有一相同性质的位置,放置下载(DOWN-LOAD)程序的识别码(PGID)。在下载程序之内预先已放置识别码(PGID),待下载后,即填入此位置。如预设辨识码(PSID)包含固件版本信息在内,则下载程序的识别码(PGID)亦须包含下载程序版本信息在内。
操作流程如图6所示。
方框70为开始。方框72为比较PSID是否等于PGID。若等于,可先执行方框79。方框79后,方框74测试主程序是否存在。若存在,方框76执行主程序。主程序执行过程中,测试是否有烧录指令(方框78)。若有,方框71执行新主程序的烧录(下载)之外,然后依照PGID值,将此值烧人PSID的位置。方框79执行(1)将PGID值存入处理器内的寄存器,(2)将PSID、PGID清除,(3)将该处理器内的寄存器值再写入PSID、PGID位置;此方框79的主要目的在使PSID、PGID位置被烧写的次数为其他位置的两倍,如此,PSID、PGID位置应该比其他位置更早濒临无法再使用的程度。方框72中PSID若不等于PGID,表示闪速存储器19可能已超过可烧录次数,于方框77送出相关讯息。
本方法与前一方法比较,本方法不必使用含程序只读存储器(mask ROM)在内的微处理器,如80C51,其价格较高,却可使用如80C31微控制器,其价格较低。但在闪速存储器19内须先预先烧录一段监控程序。
Claims (2)
1、将一软件程序由一主机载入一外部设备内一电可擦可编程只读存储器中的方法,该电可擦可编程只读存储器包含一第一部分与一第二部分,该第一部分储存一软件更新程序,该第二部分可用以储存欲载入的该软件程序,在该第一部分内具有一第一辨识码位置,在该第二部分内具有一第二辨识码位置,且将一辨识码同时储存于该第一辨识码位置与该第二辨识码位置,该主机下达一软件程序载入的指令,该外部设备包含一微控制器,其与主机藉一接口连接,微控制器与电可擦可编程只读存储器之间连接有一数据线及一地址线,该方法包含下列步骤:
(1)比较该第一辨识码位置与该第二辨识码位置所储存的该辨识码资料是否相等;
(2)若步骤(1)比较结果相等,则该微控制器执行该软件更新程序中的一载入动作,接受由主机通过接口传给微控制器的该软件程序,透过数据线及地址线,执行电可擦可编程只读存储器的程序烧写以将该软件程序载入该第二部分,并将该辨识码写入该第一辨识码位置与该第二辨识码位置至少两次;
(3)若步骤(1)比较结果为不相等,则该微控制器停止执行该软件更新程序,并送出一错误信号。
2、将一软件程序由一主机载入一外部设备内一闪速存储器中的方法,该闪速存储器包含一第一部分与一第二部分,该第一部分储存一软件更新程序,该第二部分可用以储存欲载入的该软件程序,在该第一部分内具有一第一辨识码位置,在该第二部分内具有一第二辨识码位置,且将一辨识码同时储存于该第一辨识码位置与该第二辨识码位置,该主机下达一软件程序载入的指令,该外部设备包含一微控制器,其与主机藉一接口连接,微控制器与闪速存储器之间连接有一数据线及一地址线,该方法包括下列步骤:
(1)比较该第一辨识码位置与该第二辨识码位置所储存的该辨识码资料是否相等;
(2)若步骤(1)比较结果相等,则该微控制器执行该软件更新程序中的一载入动作,接受由主机透过接口传给微控制器的该软件程序,透过数据线及地址线,执行闪速存储器的程序烧写以将该软件程序载入该第二部分,并将该辨识码写入该第一辨识码位置与该第二辨识码位置至少两次;
(3)若步骤(1)比较结果为不相等,则该微控制器停止执行该软件更新程序,并送出一错误信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN96107767A CN1083589C (zh) | 1996-05-24 | 1996-05-24 | 将软件程序载入电可擦可编程只读存储器的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN96107767A CN1083589C (zh) | 1996-05-24 | 1996-05-24 | 将软件程序载入电可擦可编程只读存储器的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1166650A CN1166650A (zh) | 1997-12-03 |
CN1083589C true CN1083589C (zh) | 2002-04-24 |
Family
ID=5119761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN96107767A Expired - Fee Related CN1083589C (zh) | 1996-05-24 | 1996-05-24 | 将软件程序载入电可擦可编程只读存储器的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1083589C (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10357032A1 (de) * | 2003-06-24 | 2005-01-13 | Bayerische Motoren Werke Ag | Verfahren zum Nachladen einer Software in den Bootsektor eines programmierbaren Lesespeicher |
US7602655B2 (en) | 2006-01-12 | 2009-10-13 | Mediatek Inc. | Embedded system |
CN105843768B (zh) * | 2016-04-20 | 2019-01-25 | 芯海科技(深圳)股份有限公司 | 一种单线通信多次可编程存储器烧录方法及基于该方法的烧录装置 |
CN106293747A (zh) * | 2016-08-12 | 2017-01-04 | 京东方科技集团股份有限公司 | 电子设备以及电子设备的驱动方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053797A (en) * | 1990-04-04 | 1991-10-01 | Eastman Kodak Company | System for updating software in automatic film processor |
US5495593A (en) * | 1990-06-29 | 1996-02-27 | National Semiconductor Corporation | Microcontroller device having remotely programmable EPROM and method for programming |
-
1996
- 1996-05-24 CN CN96107767A patent/CN1083589C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053797A (en) * | 1990-04-04 | 1991-10-01 | Eastman Kodak Company | System for updating software in automatic film processor |
US5495593A (en) * | 1990-06-29 | 1996-02-27 | National Semiconductor Corporation | Microcontroller device having remotely programmable EPROM and method for programming |
Also Published As
Publication number | Publication date |
---|---|
CN1166650A (zh) | 1997-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5930504A (en) | Dynamic nonvolatile memory update in a computer system | |
KR100714532B1 (ko) | 컴퓨터시스템에 주문소프트웨어 이미지를 제공하는 방법및 시스템 | |
EP0901073A1 (en) | Method for automatically installing and transferring data to a computer disk drive | |
JPH0816408A (ja) | 情報処理装置 | |
JP2000222178A (ja) | リカバ―可能なソフトウェアインストレ―ションプロセスおよびコンピュ―タシステム用の装置 | |
US5819108A (en) | Programming of software into programmable memory within a peripheral device | |
CN106909480A (zh) | 一种嵌入式系统交叉调试方法和装置 | |
CN1430142A (zh) | 在通信系统中利用单片机实现软件下载的装置及其方法 | |
CN101166229A (zh) | 一种电视软件更新的方法 | |
CN111651174A (zh) | 一种mcu程序远程升级方法和系统 | |
KR100927446B1 (ko) | 이동통신단말기의 트랜잭션 단위 펌웨어 업그레이드 방법및 이를 이용한 펌웨어 업그레이드 시스템 | |
CN1083589C (zh) | 将软件程序载入电可擦可编程只读存储器的方法 | |
CN101639877B (zh) | 电子装置及其更新基本输入输出系统方法 | |
US8688933B2 (en) | Firmware component modification | |
CN1425963A (zh) | 嵌入式系统软件加载装置及方法 | |
CN112052025A (zh) | 一种基于bootloader的自更新与应用程序增量更新的系统设计方法 | |
CN105204896A (zh) | 一种数字存储示波器的BootLoader设计方法 | |
CN1567199A (zh) | 交叉式固件升级方法 | |
CN1610894A (zh) | 用于修改版本标识寄存器的内容的方法和装置 | |
CN109245920B (zh) | 交换机自动配置方法、装置、交换机和存储介质 | |
CN1362670A (zh) | 自行修复系统bios的方法 | |
CN1165001C (zh) | 智能型计算机系统激活程序恢复装置及方法 | |
CN100347690C (zh) | 更新固件的方法及装置 | |
CN1719412A (zh) | 更新部分基本输入输出系统的方法 | |
CN1145102C (zh) | 硬盘主动分区的切换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: BENQ ELECTRONS STOCK CO., LTD. Free format text: FORMER NAME OR ADDRESS: MINGHONG STOCK CO., LTD. |
|
CP01 | Change in the name or title of a patent holder |
Patentee after: Benq Corp. Patentee before: Mingqi Computer Co., Ltd. |
|
C56 | Change in the name or address of the patentee |
Owner name: BENQ MOTOR CO., LTD. Free format text: FORMER NAME OR ADDRESS: BENQ ELECTRONS STOCK CO., LTD. |
|
CP01 | Change in the name or title of a patent holder |
Patentee after: Benq Corp. Patentee before: Benq Corp. |
|
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |