JP7067057B2 - 電子機器 - Google Patents

電子機器 Download PDF

Info

Publication number
JP7067057B2
JP7067057B2 JP2017252340A JP2017252340A JP7067057B2 JP 7067057 B2 JP7067057 B2 JP 7067057B2 JP 2017252340 A JP2017252340 A JP 2017252340A JP 2017252340 A JP2017252340 A JP 2017252340A JP 7067057 B2 JP7067057 B2 JP 7067057B2
Authority
JP
Japan
Prior art keywords
additional program
power
volatile memory
control unit
state
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
Application number
JP2017252340A
Other languages
English (en)
Other versions
JP2019117588A (ja
Inventor
一樹 市川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017252340A priority Critical patent/JP7067057B2/ja
Publication of JP2019117588A publication Critical patent/JP2019117588A/ja
Priority to JP2022073282A priority patent/JP7371723B2/ja
Application granted granted Critical
Publication of JP7067057B2 publication Critical patent/JP7067057B2/ja
Priority to JP2023179733A priority patent/JP2023174882A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、電子機器に関する。
プリンタなどの電子機器には、たとえば、不揮発性のメモリであるフラッシュメモリおよびE2PROM(E squared Programmable Read Only Memory)と、揮発性のメモリであるSDRAM(Synchronous Dynamic Random Access Memory)とが搭載されている(特許文献1)。
フラッシュメモリは、E2PROMと比べて大容量であるが、データの消去がブロック単位で行われ、ビット単位でデータを消去することができない。一方、E2PROMは、フラッシュメモリと比べて小容量であるが、データの書き込みおよび消去をバイト単位で行うことができるという利点がある。そのため、電子機器では、フラッシュメモリとE2PROMとが使い分けられている。たとえば、フラッシュメモリは、電子機器の動作を制御するプログラムおよびその制御に必要なデータを保存するために使用され、E2PROMは、制御により書き換えられるデータなどを保存するために使用される。
プログラムおよびデータは、電子機器の設計段階で決定され、その製品出荷時にはフラッシュメモリに保存されている。プログラムおよびデータのサイズが固定であるため、フラッシュメモリの容量は、プログラムおよびデータのサイズに応じた必要最小限の容量に設定される。これにより、フラッシュメモリのコストが抑えられている。
フラッシュメモリと同じく不揮発性メモリであるE2PROMは、プリンタを制御するためのデータが保存されており、フラッシュメモリと比べてデータの書き換えを簡単に行える特徴を有するが、メモリサイズが小さい。
一方、SDRAMは、フラッシュメモリから読み出されるプログラムやデータの展開に使用されたり、プログラムの実行時のワークエリアとして使用されたりする。たとえば、プリンタでは、印刷対象の印刷データのデータ量の大小により必要なワーク領域のサイズが大きく大小するため、SDRAMは、その容量に比較的余裕を持たせて搭載される。
特開2010-23274号公報
かかる構成において、フラッシュメモリに製品出荷時から保存されているプログラムとは別の追加プログラムの実行による追加機能が実現されるには、フラッシュメモリに追加プログラムの保存に必要な容量が確保されていなければならず、その容量の増大分、フラッシュメモリのコストがアップしてしまう。
また、追加プログラムがSDRAMに保存される場合、電子機器のリブートや電源オフの度に追加プログラムがSDRAMから消失するので、使い勝手が悪い。
本発明の目的は、不揮発性メモリの容量の増大によるコストアップを生じずに追加プログラムを外部機器からダウンロードすることが可能であり、かつ、使い勝手が良い、電子機器を提供することである。
前記の目的を達成するため、本発明に係る電子機器は、外部機器と通信する通信部と、基本プログラムが書き込まれた第1不揮発性メモリと、第2不揮発性メモリと、揮発性メモリと、制御部とを備え、制御部は、外部機器から通信部を介して追加プログラムをダウンロードして揮発性メモリに保存する追加プログラム保存処理と、追加プログラム保存処理の実行に応じて、追加プログラムのダウンロード元を示すダウンロード元情報を第2不揮発性メモリに保存するダウンロード元情報保存処理と、制御部自身のリブート、または、電子機器の電源のオフ、である所定動作の要求がされる場合に、揮発性メモリに保存されているデータを揮発性メモリに保持させる保持処理と、制御部自身のブート時に、揮発性メモリにおける追加プログラムの有無を判定する判定処理と、判定処理によって揮発性メモリに追加プログラムが無いと判定された場合に、制御部自身のブートに応じて、第2不揮発性メモリに保存されたダウンロード元情報を基に、外部機器から通信部を介して揮発性メモリに追加プログラムを再ダウンロードして揮発性メモリに保存する追加プログラム再保存処理とを実行する。
この構成によれば、追加プログラムは、外部機器から通信部を介して揮発性メモリにダウンロードされる。そのため、不揮発性メモリの容量の増大によるコストアップを生じずに追加プログラムのダウンロードが可能である。
制御部自身のリブート、または、電子機器の電源のオフ、である所定動作の要求がされる場合には、揮発性メモリの内容が保持されることにより、追加プログラムの再ダウンロードの必要がないため、使い勝手が良い。また、追加プログラムのダウンロード時に、第2不揮発性メモリにダウンロード元情報が書き込まれることにより、電源プラグオフなどの理由により、揮発性メモリの内容が消失してしまった場合であっても、追加プログラムの再ダウンロードが可能である。そして、再ダウンロードによって取得した追加プログラムによって適切に制御を行うことができる。
本発明によれば、不揮発性メモリの容量の増大によるコストアップを生じずに追加プログラムを外部機器からダウンロードすることが可能であり、かつ、電子機器の使い勝手が良い。
本発明の一実施形態に係るプリンタの電気的構成の要部を示すブロック図である。 プリンタ稼働中処理の流れを示すフローチャート(その1)である。 プリンタ稼働中処理の流れを示すフローチャート(その2)である。 プリンタ稼働中処理の流れを示すフローチャート(その3)である。 パワーオフ処理の流れを示すフローチャートである。 起動処理の流れを示すフローチャート(その1)である。 起動処理の流れを示すフローチャート(その2)である。 自動ダウンロード処理の流れを示すフローチャートである。
以下では、本発明の実施の形態について、添付図面を参照しつつ詳細に説明する。
<プリンタの電気的構成>
図1に示されるプリンタ1は、電子機器の一例であり、画像形成部11、操作部12(受付部の一例)、ASIC(Application Specific Integrated Circuit)13、不揮発性メモリであるフラッシュメモリ14(第1不揮発性メモリの一例)、揮発性メモリであるSDRAM15(揮発性メモリの一例)、通信部16およびE2PROM17を備えている。画像形成部11、操作部12、ASIC13、フラッシュメモリ14およびSDRAM15は、バス18を介して、データ通信可能に接続されている。
画像形成部11は、プリンタ1の外殻をなす筐体内に設けられている。画像形成部11は、搬送経路上を1枚ずつ搬送されるプリント用紙などのシートにカラー画像またはモノクロ画像を形成する機構である。画像形成の方式は、電子写真方式であってもよいし、インクジェット方式であってもよい。
操作部12は、各種の指示を入力するために操作される操作キーを備えている。操作キーには、押下によりオン及びオフが交互に切り替わる電源キーが含まれる。また、操作部12には、操作キー以外に、タッチパネルを備えている。ユーザが操作部12を操作することにより、各種の指示が操作部12に受け付けられる。操作部12に指示が受け付けられると、その指示の内容に応じた信号(データ)が操作部12からASIC13に向けて送信される。
ASIC13(制御部の一例)は、CPU(Central Processing Unit)21およびメモリコントローラ23を備えている。
CPU21およびメモリコントローラ23は、ASIC13内の内部バス24を介して、データ通信可能に接続されている。内部バス24は、バス18とデータ通信可能に接続されている。
メモリコントローラ23は、SDRAM15に対するデータの読み書きを制御する集積回路である。メモリコントローラ23には、仮想アドレスを物理アドレスに変換する機能を有するMMU(Memory Management Unit:メモリ管理ユニット)が含まれている。また、メモリコントローラ23は、一定の周期でSDRAM15にリフレッシュ信号を送信して、SDRAM15に保持されているデータの再書き込みを行うことで書き込まれているデータを保持する。さらに、メモリコントローラ23は、SDRAM15にセルフリフレッシュ移行コマンドを送信することで、SDRAM15をセルフリフレッシュモードに移行させる。SDRAM15は、セルフリフレッシュモードに移行すると、メモリコントローラ23からのリフレッシュ信号を受信しなくても、SDRAM15自身でデータの再書き込みを行うRAM保持処理を実行する。このRAM保持処理実行中は、外部からSDRAM15へのデータの読み書きは不可能である。メモリコントローラ23は、SDRAM15にセルフリフレッシュ解除コマンドを送信することで、SDRAM15のセルフリフレッシュモードを解除する。
通信部16は、サーバやPC(パーソナルコンピュータ)などの外部機器との間でのコンピュータネットワークを経由した通信のためのインタフェース、USB(Universal Serial Bus)メモリなどの外部機器が接続されて、その外部機器との通信のためのUSBインタフェースなどの各種の通信インタフェースを備えている。
E2PROM17(第2不揮発性メモリの一例)は、ASIC13(CPU21)が再起動しても記憶内容を保持可能である。
<稼働中処理>
プリンタ1では、通信部16に接続されている外部機器から追加プログラムをダウンロードして使用することができる。追加プログラムとしては、たとえば、インターネット上のサーバから画像データをダウンロードしてシートに印刷(プリント)するダウンロードプリント機能のためのプログラムが挙げられる。
プリンタ1に電源が投入されて、プリンタ1が稼働中であるとき、ASIC13に内蔵されているCPU21は、図2A、図2Bおよび図2Cに示される稼働中処理を実行する。
稼働中処理では、CPU21は、SDRAM15に保存されているダウンロード催促報知フラグの状態が「1」であるか否かを確認する(S11)。ダウンロード催促報知フラグは、追加プログラムのダウンロードの催促を報知する必要の有無を表すフラグである。ダウンロード催促報知フラグの状態が「1」であることは、追加プログラムのダウンロードの催促を報知する必要があることを表し、ダウンロード催促報知フラグの状態が「0」であることは、追加プログラムのダウンロードの催促を報知する必要がないことを表す。
ダウンロード催促報知フラグの状態が「1」である場合(S11:YES)、CPU21は、ダウンロード催促報知処理を実行する(S12)。ダウンロード催促報知処理では、操作部12のタッチパネルに、追加プログラムのダウンロードをユーザに催促するメッセージなどが表示される。
ダウンロード催促報知処理の実行後、CPU21は、SDRAM15に保存されているダウンロード催促報知フラグの状態を「0」にリセットする(S13)。
ダウンロード催促報知処理の実効後、または、ダウンロード報知処理を実行する前からダウンロード催促報知フラグの状態が「1」ではない場合(S11:NO)、つまりダウンロード催促報知フラグの状態が「0」である場合、CPU21は、追加プログラムのダウンロードを開始するか否かを判断する(S14)。
たとえば、通信部16がコンピュータネットワークに接続されている状態で、プリンタ1のユーザは、操作部12を操作して、そのコンピュータネットワークに接続されたサーバなどの外部機器からの追加プログラムのダウンロードを指示することができる。また、ユーザは、通信部16にUSBメモリを接側し、操作部12を操作して、USBメモリからの追加プログラムのダウンロードを指示することができる。
操作部12から追加プログラムのダウンロードが指示されていない場合(S14:NO)、CPU21は、プリンタ1の電源をオフにするか否かを判断する(S15)。ユーザにより操作部12の電源キーが押下されるか、または、画像形成部11による画像形成動作、操作部12の操作および通信部16による通信のいずれも実行されていない状態が一定時間継続すると、CPU21は、プリンタ1の電源をオフにすると判断する。一方、操作部12の電源キーが押下されておらず、かつ、画像形成部11による画像形成動作、操作部12の操作または通信部16による通信が最後に実行されてから一定時間が経過するまでは、CPU21は、プリンタ1の電源をオフにしないと判断する。
CPU21は、プリンタ1の電源をオフにしないと判断した場合(S15:NO)、リブートを実行するか否かを判断する(S16)。
プリンタ1のユーザは、たとえば、プリンタ1の動作が不安定である場合に、操作部12を操作して、プリンタ1のリブート(再起動)を指示することができる。
操作部12からリブートが指示されていない場合(S16:NO)、CPU21は、SDRAM15に保存されているダウンロード催促報知フラグの状態が「1」であるか否かを再び確認する(S11)。
ダウンロード催促報知フラグの状態が「0」である場合、CPU21は、追加プログラムのダウンロードを開始するか否かを再び判断する(S14)。この時点までに操作部12から追加プログラムのダウンロードが指示された場合、CPU21は、追加プログラムのダウンロードを開始すると判断して(S14:YES)、外部機器からSDRAM15への追加プログラムのダウンロードを開始する(図1BのS17)。
追加プログラムが正常にダウンロードされると、CPU21は、追加プログラムのダウンロードに成功したと判断する(S18:YES)。一方、追加プログラムのダウンロード中に通信エラーが発生するなどの理由で、追加プログラムが正常にダウンロードされなかった場合、CPU21は、追加プログラムのダウンロードに失敗したと判断する(S18:NO)。
CPU21は、追加プログラムのダウンロードに失敗したと判断した場合(S18:NO)、図2AのステップS15の処理に移行して、プリンタ1の電源をオフにするか否かを判断する。
CPU21は、追加プログラムのダウンロードに成功したと判断した場合(S18:YES)、追加プログラムを識別可能な識別情報をE2PROM17に保存する(S19)。識別情報としては、たとえば、追加プログラムの名称などを挙げることができる。
また、CPU21は、追加プログラムのダウンロード元を特定可能なダウンロード元情報をE2PROM17に保存する(S20)。
さらに、CPU21は、追加プログラムフラグの状態として「1」をSDRAM15に保存する(S21)。追加プログラムフラグは、追加プログラムがSDRAM15にダウンロードされているか否かを表すフラグである。追加プログラムフラグの状態が「1」であることは、追加プログラムがSDRAM15にダウンロードされていることを表し、追加プログラムフラグの状態が「0」であることは、追加プログラムがSDRAM15にダウンロードされていないことを表す。
その後、CPU21は、プリンタ1のリブートが必要であるか否かを判断する(S22)。プリンタ1のリブートの必要がない場合(S22:NO)、図2AのステップS15の処理に移行して、CPU21は、プリンタ1の電源をオフにするか否かを判断する。
追加プログラムの種類によっては、プリンタ1のリブートが必要になる。プリンタ1のリブートが必要な場合(S22:YES)、CPU21は、E2PROM17に、電源状態フラグの状態として「RAM保持リブート」を保存(S23)し、メモリコントローラ23にRAM保持処理の実行を指示する(S24)。RAM保持処理の実行により、メモリコントローラ23からSDRAM15にセルフリフレッシュコマンドが送信され、SDRAM15がセルフリフレッシュモードとなり、SDRAM15自身がSDRAM15に書き込まれているデータの再書き込みを行う。これにより、SDRAM15に保存されている内容が消失せずに保持される。その後、CPU21は、プリンタ1のリブートを実行する。
また、ユーザによって操作部12が操作されて、プリンタ1のリブートが指示された場合(S16:YES)、CPU21は、SDRAM15に保存されている追加プログラムフラグの状態が「1」であるか否かを確認する(S25)。
SDRAM15に追加プログラムが保存されており、追加プログラムフラグの状態が「1」である場合(S25:YES)、CPU21は、E2PROM17に、電源状態フラグの状態として「RAM保持リブート」を保存し(S26)メモリコントローラ23にRAM保持処理の実行を指示する(S27)。RAM保持処理の実行により、SDRAM15に保存されている追加プログラムなどが消失せずに保持される。その後、CPU21は、プリンタ1のリブートを実行する。
SDRAM15に追加プログラムが保存されておらず、追加プログラムフラグの状態が「0」である場合(S25:NO)、CPU21は、メモリコントローラ23にRAM保持処理の実行を指示せずに、プリンタ1のリブートを実行する。
ユーザにより操作部12の電源キーが押下されるか、または、画像形成部11による画像形成動作、操作部12の操作および通信部16による通信のいずれも実行されていない状態が一定時間継続して、CPU21は、プリンタ1の電源をオフにすると判断した場合(S15:YES)、SDRAM15に保存されている追加プログラムフラグの状態が「1」であるか否かを確認する(図2CのS28)。
追加プログラムフラグの状態が「0」である場合(S28:NO)、CPU21は、E2PROM17に、電源状態フラグの状態として「通常パワーオフ」を保存した後(S29)、プリンタ1の電源をオフにする。電源状態フラグは、現在の電源の状態を表すフラグである。その後、SPU21は、図3に示されるパワーオフ処理を実行する。
追加プログラムフラグの状態が「1」である場合(S28:YES)、CPU21は、操作部12のタッチパネルに、たとえば、通常パワーオフを実行するかRAM保持パワーオフを実行するかをユーザに問い合わせるメッセージが表示される。この問合せメッセージの表示に応答して、ユーザが操作部12を操作し、通常パワーオフを選択して指示した場合(S30:YES)、CPU21は、電源状態フラグの状態として「通常パワーオフ」を保存した後(S29)、図3に示されるパワーオフ処理を実行する。
ユーザが操作部12を操作し、RAM保持パワーオフを選択して指示した場合(S30:NO)、CPU21は、電源状態フラグの状態として「RAM保持パワーオフ」(保持電源オフ状態の一例)を保存する(S31)。
そして、CPU21は、メモリコントローラ23にRAM保持処理の実行を指示した後(S32)。図3に示されるパワーオフ処理を実行する。
<パワーオフ処理>
パワーオフ処理では、CPU21は、図3に示されるように、プリンタ1の電源がオフされている状態において、プリンタ1の電源プラグが商用交流電源のコンセントから脱抜されたか否かを判別する(S41)。
電源プラグがコンセントから脱抜された場合(S41:YES)、CPU21は、パワーオフ処理を終了する。
電源プラグがコンセントに挿入されている状態では(S41:NO)、CPU21は、操作部12の電源キーが押下されたか否かを判別する(S42)。電源キーが押下されていない場合(S42:YES)、CPU21は、電源プラグがコンセントから脱抜されたか否かを再び判別する(S41)。すなわち、電源プラグがコンセントから脱抜されるか、または、電源キーが押下されるまで、電源プラグがコンセントから脱抜されたか否かの判別および電源キーが押下されたか否かの判別が交互に繰り返される。
電源キーが押下された場合(S42:YES)、CPU21は、起動フラグの状態として「1」をSDRAM15に保存して(S43)、パワーオフ処理を終了する。起動フラグの状態が「1」であることは、プリンタ1の電源がオフの状態で電源キーが押下されたことを表し、起動フラグの状態が「0」であることは、プリンタ1の電源がオフの状態で電源キーが未だ押下されていないことを表す。
<起動処理>
CPU21は、プリンタ1の電源プラグが商用交流電源のコンセントから抜かれた状態からその電源プラグがコンセントに挿入されると、図4Aおよび図4Bに示される起動処理(ブート処理)を開始する。また、操作部12の電源キーの押下によりプリンタ1の電源が投入された場合にも、CPU21は、起動処理を開始する。さらには、リブートの際にも、CPU21は、起動処理を開始する。
起動処理では、CPU21は、現在が電源キーの押下による起動時であるか否かを判別する(S51)。CPU21は、SDRAM15に保存されている起動フラグの状態が「1」である場合、現在が電源キーの押下による起動時であると判別し、SDRAM15に保存されている起動フラグの状態が「0」である場合、現在が電源キーの押下による起動時ではない、つまり現在が電源プラグのコンセントへの挿入による起動時であるか、またはリブートによる起動時であると判別する。
現在が電源キーの押下による起動時である場合(S51:YES)、CPU21は、E2PROM17に保存されている電源状態フラグの状態を参照する。電源状態フラグの状態が「RAM保持パワーオフ」である場合(S52:YES)、CPU21は、メモリコントローラ23のRAM保持初期化を行う(S53)。メモリコントローラ23のRAM保持初期化には、SDRAM15にアクセスするための設定と、SDRAM15へのリフレッシュ解除コマンドの送信とが含まれる。また、CPU21は、SDRAM15のRAM保持初期化を行う(S54)。SDRAM15のRAM保持初期化では、SDRAM15の内容が保持されているので、プログラム領域の再展開などが不要であり、変数領域のみの初期化が行われる。一方、電源状態フラグの状態が「RAM保持パワーオフ」でない場合(S52:NO)、CPU21は、メモリコントローラ23の通常初期化により(S55)、SDRAM15にアクセスするための設定を行う。また、CPU21は、SDRAM15に対する通常初期化により、SDRAM15の全体を初期化する(S56)。
現在が電源キーの押下による起動時である場合、CPU21は、SDRAM15に保存されている起動フラグの状態を「0」にリセットする(S57)。
また、CPU21は、E2PROM17に、電源状態フラグの状態として「パワーオン」(電源オン状態の一例)を保存する(S58)。
その後、CPU21は、E2PROM17に識別情報が存在しているかを確認する(S59)。
一方、現在が電源キーの押下による起動時ではない場合(S51:NO)、CPU21は、E2PROM17に保存されている電源状態フラグの状態が「RAM保持リブート」であるか否かを判別する(S61)。電源状態フラグの状態が「RAM保持リブート」である場合(S61:YES)、CPU21は、メモリコントローラ23のRAM保持初期化を行う(S62)。また、CPU21は、SDRAM15のRAM保持初期化を行う(S63)。そして、CPU21は、E2PROM17に、電源状態フラグの状態として「パワーオン」を保存する(S64)。一方、電源状態フラグの状態が「RAM保持リブート」でない場合(S61:NO)、CPU21は、メモリコントローラ23の通常初期化を行う(S65)。また、CPU21は、SDRAM15の全体を初期化する(S66)。
その後、CPU21は、E2PROM17に保存されている電源状態フラグの状態が「通常パワーオフ」(通常電源オフ状態の一例)であるか否かを判別する(S67)。
電源状態フラグの状態が「通常パワーオフ」である場合(S67:YES)、CPU21は、図3に示されるパワーオフ処理を実行する。
電源状態フラグの状態が「通常パワーオフ」ではない場合(S67:NO)、CPU21は、E2PROM17に識別情報が保存されているかを確認する(S59)。
E2PROM17に識別情報が保存されている場合(S59:YES)、CPU21は、SDRAM15に追加プログラムが保存されているかを確認する(図4BのS68)。
SDRAM15に追加プログラムが保存されている場合(S68:YES)、CPU21は、そのSDRAM15に保存されている追加プログラムを使用した制御(たとえば、ダウンロードプリント機能のための制御)の実行を可能にする(S69)。
その後、CPU21は、E2PROM17に保存されている電源状態フラグの状態が「パワーオン」であるか否かを判別する(S70)。
一方、E2PROM17に識別情報が存在しない場合(図4AのS59:NO)、CPU21は、SDRAM15に保存されている追加プログラムフラグの状態を「0」にリセットする(図4BのS71)。
そして、CPU21は、追加プログラムを使用しない制御の実行を決定する(S72)。
その後、CPU21は、E2PROM17に保存されている電源状態フラグの状態が「パワーオン」であるか否かを判別する(S70)。
電源状態フラグの状態が「パワーオン」である場合(S70:YES)、CPU21は、この起動処理を終了する。
電源状態フラグの状態が「パワーオン」ではない場合(S70:NO)、CPU21は、SDRAM15に保存されている追加プログラムフラグの状態が「1」であるか否かを確認する(S73)。
追加プログラムフラグの状態が「1」である場合(S73:YES)、CPU21は、メモリコントローラ23にRAM保持処理の実行を指示した後(S74)。図3に示されるパワーオフ処理を実行する。
追加プログラムフラグの状態が「1」ではない場合、つまり「0」である場合には(S73:NO)、CPU21は、メモリコントローラ23にRAM保持処理の実行を指示せずに、図3に示されるパワーオフ処理を実行する。
E2PROM17に識別情報が保存されているにもかかわらず、SDRAM15に追加プログラムが保存されていない場合は(S68:NO)、たとえば、追加プログラムがSDRAM15にダウンロードされた後、RAM保持処理が実行されずにプリンタ1の電源プラグがコンセントから脱抜された場合、または、ユーザが操作部12を操作して、電源キーの押下により電源のオフを指示した後、通常パワーオフを実行するかRAM保持パワーオフを実行するかの問い合わせに対して通常パワーオフを選択して指示した場合である。この場合、CPU21は、自動ダウンロード処理を実行する(S75)。自動ダウンロード処理については、後述する。
自動ダウンロード処理の実効後、CPU21は、自動ダウンロード処理による追加プログラムのダウンロードに成功したか否かを判断する(S76)。
CPU21は、追加プログラムのダウンロードに成功したと判断した場合(S76:YES)、追加プログラムフラグの状態として「1」をSDRAM15に保存する(S77)。その後、CPU21は、SDRAM15に保存された追加プログラムを使用した制御の実行を可能にして(S69)、前述のステップS58以降の処理を実行する。
CPU21は、自動ダウンロード処理による追加プログラムのダウンロードに失敗したと判断した場合(S76:NO)、ダウンロード催促報知フラグの状態として「1」をSDRAM15に保存する(S78)。その後、CPU21は、SDRAM15に保存されている追加プログラムフラグの状態を「0」にリセットして(S71)、前述のステップS72以降の処理を実行する。
<自動ダウンロード処理>
自動ダウンロード処理では、CPU21は、図5に示されるように、E2PROM17に保存されているダウンロード元情報を参照して、追加プログラムのダウンロード元がUDBメモリであるか否かを判別する(S751)。
追加プログラムのダウンロード元がUSBメモリである場合(S751:YES)、CPU21は、USBメモリが通信部16に接続されているか否かを判別する(S752)。
USBメモリが通信部16に接続されている場合(S752:YES)、CPU21は、USBメモリに追加プログラムが保存されているか否かを判別する(S753)。
USBメモリに追加プログラムが保存されている場合(S753:YES)、CPU21は、USBメモリに保存されている追加プログラムをSDRAM15にダウンロードを開始して(S754)、自動ダウンロード処理を終了する。
通信部16にUSBメモリが接続されていない場合(S752:NO)、または、通信部16にUSBメモリが接続されているが、そのUSBメモリに追加プログラムが保存されていない場合には(S753:NO)、CPU21は、SDRAM15への追加プログラムのダウンロードを行うことができないので、自動ダウンロード処理を終了する。
追加プログラムのダウンロード元がUSBメモリではない場合(S751:NO)、つまり追加プログラムのダウンロード元がインターネット上のサーバである場合、CPU21は、通信部16がコンピュータネットワークに接続されているか否かを判別する(S755)。
通信部16がコンピュータネットワークに接続されている場合(S755:YES)、CPU21は、通信部16を制御して、サーバとの接続を試みる(S756)。
その後、CPU21は、通信部16とサーバとが正常に接続されたか否かを判別する(S757)。
通信部16とサーバとが正常に接続された場合(S757:YES)、CPU21は、サーバからSDRAM15への追加プログラムのダウンロードを開始して(S758)、自動ダウンロード処理を終了する。
通信部16がコンピュータネットワークに接続されてない場合(S755:NO)、または、通信部16とサーバとが正常に接続されない場合(S757:NO)、CPU21は、SDRAM15への追加プログラムのダウンロードを行うことができないので、自動ダウンロード処理を終了する。
<作用効果>
以上のように、追加プログラムは、USBメモリまたはサーバから通信部16を介してSDRAM15にダウンロードされる。そのため、フラッシュメモリ14の容量の増大によるコストアップを生じずに追加プログラムのダウンロードが可能である。
ASIC13のリブート、または、プリンタ1の電源のオフが要求される場合に、SDRAM15の内容を保持するRAM保持処理が実行されることにより、追加プログラムの再ダウンロードの必要がないため、プリンタ1の使い勝手が良い。また、追加プログラムのダウンロード時にE2PROM17にダウンロード元情報が書き込まれるので、電源プラグがコンセントから脱抜されるなどの理由によりSDRAM15の内容が消失してしまった場合であっても、追加プログラムを再ダウンロードすることができる。そして、その再ダウンロードによって取得した追加プログラムによって適切に制御を行うことができる。
また、追加プログラムのダウンロードに失敗した場合には、追加プログラムのダウンロードを催促する報知がなされるので、ユーザにとって、より使い勝手が良い。
<変形例>
以上、本発明の一実施形態について説明したが、本発明は、他の形態で実施することもできる。
たとえば、電子機器の一例として、プリンタ1を取り上げたが、本発明は、プリンタ1に限らず、原稿の画像を読み取る画像読取機能を有するスキャナに適用することもでき、その画像読取機能とプリント用紙などのシートに画像を形成する画像形成機能とを併せ持つ複合機に適用されてもよい。
また、ASIC13が複数のCPUを備え、複数のCPUが協働して各処理を実行してもよい。
その他、前述の構成には、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
1:プリンタ
12:操作部
13:ASIC
14:フラッシュメモリ
15:SDRAM
16:通信部
17:E2PROM
21:CPU

Claims (15)

  1. 外部機器と通信する通信部と、
    基本プログラムが書き込まれた第1不揮発性メモリと、
    第2不揮発性メモリと、
    揮発性メモリと、
    制御部と
    を備え、
    前記制御部は、
    前記外部機器から前記通信部を介して追加プログラムをダウンロードして前記揮発性メモリに保存する追加プログラム保存処理と、
    前記追加プログラム保存処理の実行に応じて、前記追加プログラムのダウンロード元を示すダウンロード元情報を前記第2不揮発性メモリに保存するダウンロード元情報保存処理と、
    前記制御部自身のリブート、または、電子機器の電源のオフ、である所定動作の要求がされる場合に、前記揮発性メモリに保存されているデータを前記揮発性メモリに保持させる保持処理と、
    前記制御部自身のブート時に、前記揮発性メモリにおける前記追加プログラムの有無を判定する判定処理と、
    前記判定処理によって前記揮発性メモリに前記追加プログラムが無いと判定された場合に、前記制御部自身のブートに応じて、前記第2不揮発性メモリに保存された前記ダウンロード元情報を基に、前記外部機器から前記通信部を介して前記揮発性メモリに追加プログラムを再ダウンロードして前記揮発性メモリに保存する追加プログラム再保存処理と
    を実行する、
    電子機器。
  2. 請求項1に記載の電子機器であって、
    前記制御部は、
    前記追加プログラム保存処理の実行に応じて、前記追加プログラムが前記揮発性メモリにダウンロードされていることを示す情報である追加プログラムフラグを前記揮発性メモリに保存する追加プログラムフラグ処理を実行し、
    前記所定動作の要求がされ、かつ、前記追加プログラムフラグが前記揮発性メモリに保存されている場合に、前記保持処理を実行する、
    電子機器。
  3. 請求項2に記載の電子機器であって、
    前記所定動作の要求は、前記制御部自身のリブートの要求であり、
    前記制御部は、
    前記所定動作の要求がされ、かつ、前記追加プログラムフラグが前記揮発性メモリに保存されている場合に、前記保持処理を実行し、前記保持処理の実行後にリブートを実行する、
    電子機器。
  4. 請求項2に記載の電子機器であって、
    前記所定動作の要求は、前記電子機器の電源のオフの要求であり、
    前記制御部は、前記所定動作の要求がされ、かつ、前記追加プログラムフラグが前記揮発性メモリに保存されている場合に、前記保持処理を実行し、前記保持処理の実行後に前記電源をオフにする、
    電子機器。
  5. 請求項4に記載の電子機器であって、
    指示を受け付ける受付部をさらに備え、
    前記制御部は、前記揮発性メモリの内容を保持して前記電源をオフにする指示を前記受付部に受け付け、かつ、前記追加プログラムフラグが前記揮発性メモリに保存されている場合に、前記保持処理を実行する、
    電子機器。
  6. 請求項1~5のいずれか一項に記載の電子機器であって、
    前記制御部は、
    前記追加プログラム保存処理の実行に応じて、前記追加プログラムを識別する識別情報を前記第2不揮発性メモリに書き込み、
    前記判定処理において、前記第2不揮発性メモリに前記識別情報が保存されているか否かを判定し、前記第2不揮発性メモリに前記識別情報が保存されていない場合、前記揮発性メモリに前記追加プログラムがないと判定する、
    電子機器。
  7. 請求項6に記載の電子機器であって、
    前記制御部は、前記第2不揮発性メモリに前記識別情報が保存されており、かつ、前記揮発性メモリに前記追加プログラムが保存されていると判定した場合に、前記追加プログラムを使用して制御処理を実行する、
    電子機器。
  8. 請求項に記載の電子機器であって、
    前記制御部は、前記第2不揮発性メモリに前記識別情報が保存されているが、前記揮発性メモリに前記追加プログラムが保存されていないと判定した場合に、前記追加プログラムを使用せずに前記制御処理を実行する、
    電子機器。
  9. 請求項7または8に記載の電子機器であって、
    前記制御部は、
    前記制御部自身のブート時に前記揮発性メモリに前記追加プログラムが保存されてないと判定した場合、前記識別情報および前記ダウンロード元情報を基に前記追加プログラム再保存処理を実行し、当該追加プログラム再保存処理でダウンロードされた前記追加プログラムを使用して前記制御処理を実行する、
    電子機器。
  10. 請求項9に記載の電子機器であって、
    前記制御部は、前記識別情報および前記ダウンロード元情報を基に実行した前記追加プログラム保存処理による前記追加プログラムのダウンロードに失敗した場合、前記追加プログラムを使用せずに前記制御処理を実行する、
    電子機器。
  11. 請求項10に記載の電子機器であって、
    表示部をさらに備え、
    前記制御部は、前記追加プログラムのダウンロードに失敗した場合、前記追加プログラムのダウンロードを促す表示を前記表示部に出力する、
    電子機器。
  12. 請求項~11のいずれか一項に記載の電子機器であって、
    前記制御部は、
    前記電子機器の電源のオフの要求に応じて前記保持処理を実行せずに前記電源をオフにする場合、前記第2不揮発性メモリに保持される電源状態フラグの状態を通常電源オフ状態にし、前記電源のオフの要求に応じて前記保持処理を実行して前記電源をオフにする場合、前記電源状態フラグの状態を保持電源オフ状態にし、前記電源のオンの要求に応じて前記電源をオンにする場合、前記電源状態フラグの状態を電源オン状態に設定する電源状態フラグ処理を実行し、
    前記電源状態フラグの状態に応じて、前記制御処理後に実行する処理の内容を切り替える、
    電子機器。
  13. 請求項12に記載の電子機器であって、
    前記電源状態フラグの状態が前記通常電源オフ状態または前記保持電源オフ状態である場合、前記制御処理後に前記電源をオフにし、
    前記電源状態フラグの状態が前記電源オン状態である場合、前記制御処理後に前記電源をオンに維持する、
    電子機器。
  14. 請求項12または13に記載の電子機器であって、
    前記制御部は、前記電源が外部電源に接続されたことに応じた前記制御部自身のブート時に、前記電源状態フラグの状態が前記通常電源オフ状態である場合、前記電源をオフにし、前記電源状態フラグの状態が前記保持電源オフ状態または前記電源オン状態である場合、前記制御処理を実行する、
    電子機器。
  15. 請求項1~14のいずれか一項に記載の電子機器であって、
    前記制御部は、
    前記制御部自身のブート時に、前記保持処理が行われていたことを判定する保持判定処理と、
    前記保持判定処理によって保持処理が行われていたと判定された場合に、保持内容を維持したまま揮発性メモリを初期化するメモリ初期化処理と、
    をさらに実行する、
    電子機器。
JP2017252340A 2017-12-27 2017-12-27 電子機器 Active JP7067057B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017252340A JP7067057B2 (ja) 2017-12-27 2017-12-27 電子機器
JP2022073282A JP7371723B2 (ja) 2017-12-27 2022-04-27 電子機器
JP2023179733A JP2023174882A (ja) 2017-12-27 2023-10-18 電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017252340A JP7067057B2 (ja) 2017-12-27 2017-12-27 電子機器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022073282A Division JP7371723B2 (ja) 2017-12-27 2022-04-27 電子機器

Publications (2)

Publication Number Publication Date
JP2019117588A JP2019117588A (ja) 2019-07-18
JP7067057B2 true JP7067057B2 (ja) 2022-05-16

Family

ID=67304497

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2017252340A Active JP7067057B2 (ja) 2017-12-27 2017-12-27 電子機器
JP2022073282A Active JP7371723B2 (ja) 2017-12-27 2022-04-27 電子機器
JP2023179733A Pending JP2023174882A (ja) 2017-12-27 2023-10-18 電子機器

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2022073282A Active JP7371723B2 (ja) 2017-12-27 2022-04-27 電子機器
JP2023179733A Pending JP2023174882A (ja) 2017-12-27 2023-10-18 電子機器

Country Status (1)

Country Link
JP (3) JP7067057B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003223386A (ja) 2001-08-27 2003-08-08 Ricoh Co Ltd 画像形成装置,プログラム更新方法および記録媒体
WO2007000670A1 (en) 2005-02-09 2007-01-04 Lenovo (Singapore) Pte. Ltd. Information updating method, program for the same and information processing unit
JP2012221171A (ja) 2011-04-07 2012-11-12 Canon Inc 記録装置及びその動作の制御方法
JP2016103160A (ja) 2014-11-28 2016-06-02 京セラドキュメントソリューションズ株式会社 画像処理装置及びプログラムのアップデート方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4097117B2 (ja) 2001-01-22 2008-06-11 株式会社リコー 画像形成装置及び画像処理システム
WO2002065274A1 (fr) 2001-02-13 2002-08-22 Fujitsu Limited Appareil de traitement d'information
JP2002259124A (ja) 2001-03-05 2002-09-13 Sony Corp オペレーティング・システムならびにプログラム開発支援装置および方法
JP4784100B2 (ja) 2005-01-21 2011-09-28 富士ゼロックス株式会社 処理装置およびそのファームウェアダウンロード方法。
WO2007000067A1 (en) * 2005-06-27 2007-01-04 Eidgenössische Technische Hochschule Zürich Method and system for acquiring azimuth information using signals provided by satellites
JP2007149001A (ja) 2005-11-30 2007-06-14 Canon Inc 制御装置、電力制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003223386A (ja) 2001-08-27 2003-08-08 Ricoh Co Ltd 画像形成装置,プログラム更新方法および記録媒体
WO2007000670A1 (en) 2005-02-09 2007-01-04 Lenovo (Singapore) Pte. Ltd. Information updating method, program for the same and information processing unit
JP2012221171A (ja) 2011-04-07 2012-11-12 Canon Inc 記録装置及びその動作の制御方法
JP2016103160A (ja) 2014-11-28 2016-06-02 京セラドキュメントソリューションズ株式会社 画像処理装置及びプログラムのアップデート方法

Also Published As

Publication number Publication date
JP2023174882A (ja) 2023-12-08
JP2022093482A (ja) 2022-06-23
JP7371723B2 (ja) 2023-10-31
JP2019117588A (ja) 2019-07-18

Similar Documents

Publication Publication Date Title
EP3037968A1 (en) Electronic device and firmware recovery program that ensure recovery of firmware
US20060047938A1 (en) Method and apparatus to initialize CPU
JP6543122B2 (ja) 情報処理装置と、前記情報処理装置による不揮発記憶装置の初期化方法、及びプログラム
US20070169092A1 (en) Image forming apparatus capable of updating firmware of optional device and method thereof
JP6074064B2 (ja) 電子機器
JP2005157528A (ja) メモリ装置
JP2006202117A (ja) 処理装置およびそのファームウェアダウンロード方法。
US20070150072A1 (en) Method for controlling electronic apparatus, program for controlling electronic apparatus, electronic apparatus, and recording apparatus
CN115145650A (zh) 信息处理装置、存储介质及信息处理方法
JP7067057B2 (ja) 電子機器
JP5970867B2 (ja) 情報処理装置、画像形成装置およびプログラム
JP2008158991A (ja) Nand型フラッシュメモリの制御システム
JP2009151386A (ja) 画像処理装置
JP2023068538A (ja) 情報処理装置及びその制御方法、並びにプログラム
JP5895609B2 (ja) 情報処理装置、画像形成装置およびプログラム
JP2013200602A (ja) 画像処理装置
JP2004192329A (ja) プログラム書換え方法および端末装置
JP2014174697A (ja) 情報処理装置、情報処理装置の制御方法及び制御プログラム
US20180160006A1 (en) Image processing apparatus and method of controlling an image processing apparatus
JP7494543B2 (ja) 情報処理装置及びプログラム
JP2008307837A (ja) 画像形成装置およびその制御方法
JP5998902B2 (ja) 画像形成装置、情報処理装置およびプログラム
JP7031211B2 (ja) 電子機器
JP2006106823A (ja) 電子機器、該電子機器にて実行されるオペレーティングシステム起動方法および該電子機器にて実行されるオペレーティングシステムの初期化方法
JP2006126987A (ja) 画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220411

R150 Certificate of patent or registration of utility model

Ref document number: 7067057

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150