(57)【要約】【課題】動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭを書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックする。【解決手段】制御部３０は、ＥＰＲＯＭ３４のＩ／Ｏポートへの接続を検出すると、その内容でもって、チェックしながらＥＥＰＲＯＭ３２の内容を書き換える。その後の通常モードでは、エリアＣのチェックデータ３と、チェックデータ２の各ビットを反転させて成るデータとを比較し、この比較結果が一致すればチェックデータ２が正しいと判断し、これにより、前記書き換えが正常に終了していたと判断すると共に、エリアＢに記憶されている動作制御プログラムのデータ値の所定バイト毎の総和に前記チェックデータ２のデータ値を加算した加算結果に基づき、書き換えられた動作制御プログラムの良否を判断する。【選択図】  図３
2004310216.tif 000002
【特許請求の範囲】
【請求項１】
電子機器の動作制御を行うための制御装置であって、
少なくとも一部のメモリ領域が電気的に書き換え可能な記憶手段と、
外部記憶媒体を接続するための接続手段と、
前記外部記憶媒体に記憶されているデータを読み出し、読み出された前記データに基づき前記記憶手段のメモリ領域に記憶されている動作制御プログラムを書き換える書換手段と、
前記書換手段により書き換えられた前記動作制御プログラムが正しいか否かを判断する第１の判断手段と、
前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断する第２の判断手段と、
を備えたことを特徴とする電子機器の動作制御を行うための制御装置。
【請求項２】
前記記憶手段は、前記動作制御プログラムを格納するための第１メモリ領域と、前記書換手段により書き換えられた前記動作制御プログラムが正しいか否かを判断するための第１チェックデータ及び前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断するための第２チェックデータを記憶する第２メモリ領域と、を有することを特徴とする請求項１に記載の電子機器の動作制御を行うための制御装置。
【請求項３】
前記書換手段は、前記第２メモリ領域に記憶されていた前記第１チェックデータと前記第２チェックデータとを消去した後、前記第１メモリ領域に記憶されていた動作制御プログラムを消去し、前記外部記憶装置に記憶されていた新たな動作制御プログラムを前記第１メモリ領域に書き込んだ後、新たな第１チェックデータと第２チェックデータを前記第１メモリ領域に書き込むことを特徴とする請求項２に記載の電子機器の動作制御を行うための制御装置。
【請求項４】
前記第２の判断手段が前記書き換え手段による書き換えが正常に終了したことが判断されたことでもって、前記第１の判断手段により前記書き換えられた動作制御プログラムが正しいか否かを判断することを特徴とする請求項１または請求項２記載の電子機器の動作制御を行うための制御装置。
【請求項５】
前記第２の判断手段は、前記第１チェックデータに所定の演算処理を施して成るデータと、前記第２チェックデータとを比較し前記比較結果が一致すれば前記第１チェックデータが正しいと判断し、前記比較結果が一致していなければ前記第１チェックデータが正しくないと判断することを特徴とする請求項２に記載の電子機器の動作制御を行うための制御装置。
【請求項６】
前記演算処理は、前記第１チェックデータをビット反転する処理であることを特徴とする請求項５記載の電子機器の動作制御を行うための制御装置。
【請求項７】
前記第２の判断手段は、前記第１チェックデータが正しいと判断された場合に、前記書き換えが正常に終了していたと判断し、前記第１チェックデータが正しくないと判断された場合に、前記書き換えが正常に終了していなかったと判断することを特徴とする請求項５又は請求項６記載の電子機器の動作制御を行うための制御装置。
【請求項８】
前記第１の判断手段は、前記第１メモリ領域に記憶されている前記動作制御プログラムのデータ値の所定バイト毎の総和に前記第１チェックデータのデータ値を加算した加算結果に基づき、書き換えられた動作制御プログラムの正しいか否かを判断することを特徴とする請求項２または請求項５記載の電子機器の動作制御を行うための制御装置。
【請求項９】
前記第１の判断手段又は前記第２の判断手段の少なくとも一方の判断結果が正常でないと判断した場合には異常信号を出力し、前記第１の判断手段と前記第２の判断手段の判断結果のいずれもが正常であると判断した場合には前記書き換えられた動作制御プログラムにより前記電子機器の制御を行うことを特徴とする請求項１乃至８のいずれか１項に記載の電子機器の動作制御を行うための制御装置。
【請求項１０】
前記記憶手段は、データの書き換えを行わない固有データ領域を有し、
この固有データ領域のデータと、前記外部記憶装置に記憶されているデータの一部とを比較することによって、前記外部記憶媒体に記憶された動作制御プログラムが本装置に適合しているか否かを判断することを特徴とする請求項１に記載の電子機器の動作制御を行うための制御装置。
【請求項１１】
原稿を読み取るための原稿搬送装置と当該装置の制御装置により構成された自動原稿送り装置であって、
前記制御装置は、
少なくともＣＰＵ及びＥＥＰＲＯＭを内蔵したワンチップ・マイクロコンピュータと、
前記ワンチップ・マイクロコンピュータを搭載した回路基板と、
前記回路基板上に設けられ、所定のアドレスが割り付けられたメモリ領域を有する外部記憶媒体が取り付けられる接続手段と、
前記回路基板に設けられ、前記接続手段に取付けられた前記記憶媒体からデータを読み出すためのバスと、
前記外部記憶媒体に記憶されているデータを読み出し、前記データに基づいて前記記憶手段に格納されている当該電子機器の動作制御プログラムの全部又は一部を書き換える書換手手段と、
前記ＥＥＰＲＯＭ内のメモリ領域内においては、少なくとも、前記動作制御プログラムを格納するための第１メモリ領域と、第１チェックデータ及び第２チェックデータを記憶する第２メモリ領域と、前記第２のチェックデータに基づき前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断した後に、前記第１チェックデータに基づき動作制御プログラムが正しいか否かを判断するチェックプログラムを記憶する第３のメモリ領域と、が設けられ、
前記ＣＰＵは、前記チェックプログラムを実行せしめることにより前記動作制御プログラムの書き換えが正常に行われたか否かを判断するように構成されたことを特徴とする自動原稿送り装置。
【請求項１２】
前記ＣＰＵは、電源が投入される毎に前記チェックプログラムを実行せしめることを特徴とする請求項１１に記載の自動原稿送り装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子機器の動作制御を行うための制御装置及び自動原稿送り装置に関し、特に、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭの書き換え処理において、新たな制御プログラムやデータが正常に書き込まれたか否かをチェックする機能を備えた電子機器の動作制御を行うための制御装置及び自動原稿送り装置に関する。
【０００２】
【従来の技術】
従来から、ＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に格納されたプログラムにより電子機器の動作制御を行うことが広く行われていた。このＥＰＲＯＭは、不揮発性メモリであり、電源をＯＦＦ状態としても記憶したデータが保持できることから、プログラム及びプログラムの実行時に参照されるデータ（以下、本明細書においては両者を総称して、適宜「プログラム」という）を記憶するための記憶装置に適している。しかし、このＥＰＲＯＭは、記憶内容を電気的に消去して新たなプログラムを書き込むことが不可能であるため、プログラムやデータを変更する必要が生じた場合には、新たなプログラムが書き込まれたＥＰＲＯＭと交換する必要がある。
【０００３】
このため、近年、民生用や産業用の電子機器を制御する制御装置の分野では、１チップの集積回路内にＣＰＵとＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）を内蔵した１チップマイクロコンピュータ（以下、「１チップマイコン」という）が多く使用されるに至っている。このＥＥＰＲＯＭは、前述のＥＰＲＯＭと同様、電源が供給されなくなってもデータを保持することが可能な不揮発性メモリであるため、本機器を制御するＣＰＵのプログラムや機能設定データ等、停電時のバックアップが必要なデータの格納が可能である。また、前述のとおり、ＥＥＰＲＯＭはＥＰＲＯＭとは違って、書き込まれたデータの電気的な消去や書き換えが可能なメモリであるため、プログラムや機能設定データを変更する必要が生じた時に、電気的手段により外部から転送される新たなプログラムデータや機能設定データに書き換えることが容易に可能である。
【０００４】
しかし、このようなＥＥＰＲＯＭは、プログラムや機能設定データが新たなプログラムや機能設定データに書き換えられた際には、この書き換え処理によって新たなプログラムや機能設定データが正しく書き込まれたか否かチェックする必要がある。
【０００５】
この書き換え用の新たなプグラムやデータや機能設定データがＥＥＰＲＯＭに正しく書き込まれたか否かをチェックするチェック方法としては、ＥＥＰＲＯＭ内に、プログラムとデータが格納されるデータ領域と、それらをチェックするためのチェックデータが格納されるデータ領域対応のチェック領域を設け、このＥＥＰＲＯＭの書き換えを制御する制御プログラムの処理ステップとして、該ＥＥＰＲＯＭのデータ変更の都度、新たにデータ領域に格納されるプログラムやデータの総和を演算する処理ステップを設け、この処理ステップによる演算結果と、新たにチェック領域に格納されたチェックデータとを比較することによって、前述の新たにデータ領域に格納されるプログラムやデータが正しく書き換えられたか否かを前述のデータ領域対応にチェックする方法が知られている（例えば、特許文献１）。
【０００６】
また、ＥＥＰＲＯＭ内にプログラムやデータが格納されるデータ領域、プログラムやデータをチェックするためのチェックデータが格納されるチェック領域、チェックデータがその機器固有の特定値となるように設定された調整データを格納される調整データ領域を設け、新たにデータ領域に格納されるプログラムやデータの１バイト分の総和に調整データを加算したデータと機器固有の特定値とを比較することによって、新たなプログラムデータがその機器に適合したものか否かをチェックする方法が知られている（例えば、特許文献２）。
【０００７】
【特許文献１】特願平８−３０５１７号公報
【特許文献２】特願平１０−３３３９９２号公報
【発明が解決しようとする課題】
しかしながら、上記従来の電子機器の動作制御を行うための制御装置におけるプログラムやデータの書き換え時のチェック方法では、書き込みの中断が発生した場合においても、新たに書き込むプログラムやデータの内容次第で、場合によっては正しく書き込まれたと判断されてしまうという問題点を有する。
【０００８】
例えば、前述の特許文献１に示されたチェック方法では、新たなプログラムやデータを書き込み中に、突然書き込みが中断された場合、ＥＥＰＲＯＭ内のチェックデータは、クリアされた状態（即ち、８ビット長のレジスタであれば“ＦＦ”が書き込まれた状態）となるため、新たに書き込むプログラムやデータの前述の総和が“ＦＦ”となるような場合は、このチェックデータに依っては正しく書き換えられたか否かをチェックできないという問題点があった。
【０００９】
また、前述の特許文献２に示されたチェック方法においても、書き込み中断時のデータの総和と正常に書き込まれた時のデータの総和が一致し、調整値が“ＦＦ”であれば書き込まれたプログラム、及びデータが正しく書き込まれたか否かをチェックできないという問題点があった。
【００１０】
このため、この書き換えに失敗した異常なプログラムやデータを、正しいプログラムやデータと認知してプログラムが実行されることとなり、このような場合は、動作制御される機器が作動しないという状態に留まらず、この機器が暴走して機器自体が破損する恐れが生じるので、さらに重大な問題が発生する恐れがあった。
【００１１】
本発明は、上記従来技術が有していた種々の問題点に鑑みてなされたものであり、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭを書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックすることができる電子機器の動作制御を行うための制御装置を提供することを目的としている。
【００１２】
本発明の他の目的は、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭを書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックすることができる制御装置を内蔵した自動原稿送り装置を提供することにある。
【００１３】
【課題を解決するための手段】
上記課題を解決するために、本発明は、少なくとも一部のメモリ領域が電気的に書き換え可能な記憶手段と、外部記憶媒体を接続するための接続手段と、前記外部記憶媒体に記憶されているデータを読み出し、読み出された前記データに基づき前記記憶手段のメモリ領域に記憶されている動作制御プログラムを書き換える書換手段と、前記書換手段により書き換えられた前記動作制御プログラムが正しいか否かを判断する第１の判断手段と、前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断する第２の判断手段と、を備えたことを特徴とする電子機器の動作制御を行うための制御装置を提供するものである。これにより、本発明は、一般的な電子機器を制御すると共に、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭ等の電気的に書き換え可能な記録手段を書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを確実にチェックすることを可能にしている。
【００１４】
また、本制御装置は、前記記憶手段の書き換え可能なメモリ領域が、前記動作制御プログラムを格納するための第１メモリ領域と、前記書換手段により書き換えられた前記動作制御プログラムが正しいか否かを判断するための第１チェックデータ及び前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断するための第２チェックデータを記憶する第２メモリ領域と、を有する。これによって、書き換え手段の書き換え動作の確認と書き換えられプログラムデータの確認が複雑化することなく、簡単に行うことができる。
【００１５】
ここで、本制御装置は、前記書換手段が、前記第２メモリ領域に記憶されていた前記第１チェックデータと前記第２チェックデータとを消去した後、前記第１メモリ領域に記憶されていた動作制御プログラムを消去し、その後に前記外部記憶装置に記憶されていた新たな動作制御プログラムを前記第１メモリ領域に書き込んだ後、新たな第１チェックデータと第２チェックデータを前記第１メモリ領域に書き込むことを特徴し、これにより、消去中に電源が切断されるような事態が生じても、電源復帰後に、ＥＥＰＲＯＭ中の動作制御プログラムが正しく書き換えられていないことを検知することができる電子機器の動作制御を行うための制御装置を実現している。
【００１６】
また、前記第２の判断手段が前記書き換え手段による書き換えが正常に終了したことが判断されたことでもって、前記第１の判断手段により前記書き換えられた動作制御プログラムが正しいか否かを判断する。つまり、第２の判断手段による判断結果が異常である場合は、第１の判断手段による判断を実行しないためチェック時間が短縮できる。
【００１７】
また、前記第２の判断手段は、前記第１チェックデータに所定の演算処理を施して成るデータと、前記第２チェックデータとを比較し前記比較結果が一致すれば前記第１チェックデータが正しいと判断し、前記比較結果が一致していなければ前記第１チェックデータが正しくないと判断する。
【００１８】
そして、前記演算処理は、前記第１チェックデータをビット反転する処理であることを特徴とする。これにより、書き換え処理が正しく実行されたか否かを確実に検証することができるのである。
【００１９】
さらに、前記第２の判断手段は、前記第１チェックデータが正しいと判断された場合に、前記書き換えが正常に終了していたと判断し、前記第１チェックデータが正しくないと判断された場合に、前記書き換えが正常に終了していなかったと判断することにより、書き換え処理が電源切断などに遭遇することなく、最後まで正しく実行されたか否かを検証できる電子機器の動作制御を行うための制御装置を実現している。
【００２０】
また、前記第１の判断手段は、前記第１メモリ領域に記憶されている前記動作制御プログラムのデータ値の所定バイト毎の総和に前記第１チェックデータのデータ値を加算した加算結果に基づき、書き換えられた動作制御プログラムの正しいか否かを判断することを特徴とし、これにより、外部記憶装置に記憶されている動作制御プログラムが、ビット化けなどを起こさずに、正しく書き込まれたか否かを検証することができる電子機器の動作制御を行うための制御装置を実現している。
【００２１】
また、本制御装置は、前記第１の判断手段又は前記第２の判断手段の少なくとも一方の判断結果が正常でないと判断した場合には異常信号を出力し、前記第１の判断手段と前記第２の判断手段の判断結果のいずれもが正常であると判断した場合には前記書き換えられた動作制御プログラムにより前記電子機器の制御を行うことを特徴とし、これにより、ＥＥＰＲＯＭの書き換え処理に異常が生じたことを、操作者に通報することができる電子機器の動作制御を行うための制御装置を実現している。
【００２２】
ここで、本制御装置は、前記記憶手段が、データの書き換えを行わない固有データ領域を有し、この固有データ領域のデータと、前記外部記憶装置に記憶されているデータの一部とを比較することによって、前記外部記憶媒体に記憶された動作制御プログラムが本装置に適合しているか否かを判断するように構成され、これにより、制御装置は、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭ等の書き換え可能なメモリ領域を有する記録手段を書き換える処理を行う前に、新たに書き込まれる制御プログラムやデータが正しいか否か未然にチェックすることができる。
【００２３】
また、本発明は、原稿を読み取るための原稿搬送装置と当該装置の制御装置により構成された自動原稿送り装置であって、前記制御装置は、少なくともＣＰＵ及びＥＥＰＲＯＭを内蔵したワンチップ・マイクロコンピュータと、前記ワンチップ・マイクロコンピュータを搭載した回路基板と、前記回路基板上に設けられ、所定のアドレスが割り付けられたメモリ領域を有する外部記憶媒体が取り付けられる接続手段と、前記回路基板に設けられ、前記接続手段に取付けられた前記記憶媒体からデータを読み出すためのバスと、前記外部記憶媒体に記憶されているデータを読み出し、前記データに基づいて前記記憶手段に格納されている当該電子機器の動作制御プログラムの全部又は一部を書き換える書換手手段と、前記ＥＥＰＲＯＭ内のメモリ領域内においては、少なくとも、前記動作制御プログラムを格納するための第１メモリ領域と、第１チェックデータ及び第２チェックデータを記憶する第２メモリ領域と、前記第２のチェックデータに基づき前記書換手段による前記動作制御プログラムの書き換えが正常に終了したか否かを判断した後に、前記第１チェックデータに基づき動作制御プログラムが正しいか否かを判断するチェックプログラムを記憶する第３のメモリ領域と、が設けられ、前記ＣＰＵは、前記チェックプログラムを実行せしめることにより前記動作制御プログラムの書き換えが正常に行われたか否かを判断するように構成されたことを特徴とする自動原稿送り装置を提供するものである。これにより、本発明は、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭ等の電気的に書き換え可能な記録手段を書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックすることを可能にしている。
【００２４】
さらに、前記ＣＰＵは、電源が投入される毎に前記チェックプログラムを実行するようにしたので、ＥＥＰＲＯＭの動作制御プログラムやデータの書き換え中に電源が切断されるような事態が生じても、電源復帰後に、ＥＥＰＲＯＭ中の動作制御プログラムが正しく書き換えられていないことを検知することができる。
【００２５】
【発明の実施の形態】
以下、本発明に係る電子機器を制御するための制御装置及び自動原稿送り装置の実施の形態について、図面を参照して詳細に説明する。
【００２６】
なお、以下に記載する本発明の実施形態の説明では、制御対象の装置の例として自動原稿送り装置について説明するが、本制御装置は、自動原稿送り装置の制御に限定されるものでないことは明らかである。
【００２７】
図１は、本発明の実施形態に係る自動原稿送り装置の断面図であり、図２は、本発明の実施形態に係る自動原稿送り装置の外装カバーの一部を取り外し、１チップマイコン（制御部）が実装された制御基板を露出させた状態を示す平面図である。
【００２８】
図１，２に示す本発明の実施形態に係る自動原稿送り装置１００は、制御基板４０と、外装カバー１０１と、給紙トレイ１１０と、繰り出しローラ１２０と、給紙ローラ１２１と、分離部材１２２と、レジストローラ対１２３と、プラテンガラス２０１と、排紙ローラ対１２４と、搬入ローラ対１２５と、搬出ローラ対１２６とを備えて構成される。
【００２９】
以下、本発明の実施形態に係る自動原稿送り装置１００の機能を、主要な構成要素毎に説明する。
【００３０】
本発明の実施形態に係る自動原稿送り装置１００は、図１に示すように、給紙トレイ上１１０に積載された原稿を繰り出しローラ１２０にて繰り出し、給紙ローラ１２１及び分離部材１２２によって１枚に分離して給紙する。給紙された原稿はレジストローラ対１２３にて整合させた後にプラテンガラス２０１上に搬送され、そのプラテンガラス２０１上の読取位置にて読み取られた後に、排紙ローラ対１２４にて排紙トレイ１１１上に排紙される。また、搬入ローラ対１２５は、プラテンガラス２０１上に原稿を搬入し、搬出ローラ対１２６はプラテンガラス２０１上から原稿を搬出する。
【００３１】
また、本発明の実施形態に係る自動原稿送り装置１００は、図２に示すように、自動原稿送り装置１００の外装カバー１０１内に制御基板４０が設けられており、この制御基板４０には装置を動作させるための１チップマイコン（後述する制御部３０）や、各ローラを駆動するためのモータを動作させるドライバ回路等の電気回路（図示せず）、後述する外部記憶媒体のＥＰＲＯＭ３４が装着されるＩＣソケット４１（後述するＩ／Ｏポート）等が実装されている。
【００３２】
この制御基板４０は、外装カバー１０１の一部を取り外すことで後述するＥＰＲＯＭ３４をＩＣソケット４１に着脱することが簡単にできる。これにより、上記１チップマイコンから、外部記憶媒体（ＥＰＲＯＭ３４）のアクセスが容易に可能となっている。
【００３３】
図３は、本発明の実施形態に係る自動原稿送り装置の制御部、及びその周辺の構成を示すブロック図であり、図４は、本発明の実施形態に係る自動原稿送り装置の１チップマイコンを実装する制御基板の実装図である。
【００３４】
本発明の実施形態に係る自動原稿送り装置１００の制御部３０（１チップマイコン）は、自動原稿送り装置１００全体を制御するＣＰＵ３１と、制御に必要なプログラムやデータを記憶するＥＥＰＲＯＭ３２と、ＣＰＵ３１をストアードプログラム方式で制御するプログラムを記憶するＲＡＭ３３とを備えて構成される。
【００３５】
以下、本発明の実施形態に係る自動原稿送り装置１００の制御部を中心とした構成要素の機能を説明する。
【００３６】
図３において、制御部３０は、周辺のＬＳＩやメモリを１つのチップ内に搭載した１チップマイコンで構成される。この制御部３０は、制御の対象となる装置（以下、「自動原稿送り装置１００」を示すものとする）全体の動作を制御するためのＣＰＵ３１を具備し、また、ＣＰＵ３１によって装置の動作を実行させるための各種制御プログラムを記憶するＥＥＰＲＯＭ３２（電気的に制御プログラムを書き換えることができるメモリ：Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や、ＣＰＵ３１の処理する過程で発生するデータ等を一時的に記憶するためのＲＡＭ３３等が具備されている。なお、この１チップマイコン３０は、図４に示すように制御用のプリント基板４０に実装されている。
【００３７】
また、図３において、符号３４はＥＰＲＯＭであり、このＥＰＲＯＭ３４は、ＥＥＰＲＯＭ３２内の制御プログラムと書き換えられる新たな制御プログラムを記憶している。即ち、ＥＰＲＯＭ３４は、書き換え用データを記憶する記憶装置としてのＥＰＲＯＭであり、新たな制御プログラムをＥＥＰＲＯＭ３２に書き込む必要がある際に、操作者によって、図４に示すプリント基板４０上に実装されたＩＣソケット４１に取り付けられる。また、ＣＰＵ３１は、このＥＰＲＯＭ３４に対して、アドレスバス及びデータバス（図３参照）を介してアクセスできるように構成されている。
【００３８】
なお、ＣＰＵ３１は、各種センサ３８や外部機器（図示は省略）からの情報に基づき、ＥＥＰＲＯＭ３２に記憶された制御プログラムを実行し、モータ等のアクチュエータ３７の状態や、装置の状態を表示する表示装置３９を制御する。
【００３９】
以下、ＥＥＰＲＯＭ３２の各メモリ領域について説明する。
【００４０】
ＥＥＰＲＯＭ３２は、電気的にプログラムやデータが書き換え可能なフラッシュメモリであり、その記憶領域は、図３に示すように、初期処理を行うためのプログラムやデータ（後述するチェックデータ１）を格納するためのエリアＡ、制御プログラムを格納するためのエリアＢ、各種チェックデータ（後述するチェックデータ２，３）を格納するためのエリアＣ（いずれもメモリ領域）に分けられている。
【００４１】
エリアＡは、書き換え不可能な保護エリアであり、主に電源投入時に実行される各種の起動プログラムが記憶される記憶領域である。このエリアＡに記憶されている起動プログラムは、電源投入時の初期処理を行うイニシャルプログラムと、ＩＣソケットにＥＰＲＯＭ３４が装着されているか否かを判断する接続判断処理プログラム、制御プログラムの書き換えを実行する際にＥＰＲＯＭ３４に記憶されている新たなデータが機器に適合しているか否かをチェックする書き換え用データ確認処理プログラム、ＥＥＰＲＯＭ３２に記憶されている制御プログラムを消去する消去処理プログラム、制御プログラムが記憶されたＥＰＲＯＭ３４のエリアＥのデータをＥＥＰＲＯＭ３２のエリアＢに書き込む書き換え処理プログラム、制御プログラムを書き換え後にデータが正常に書き込まれたか否かをチェックする書き込みデータチェック１処理プログラム及び電源投入時に制御プログラムデータをチェックする書き込みデータチェック２処理プログラム、及び各プログラムにおいて異常が生じた場合に該異常を表示する異常処理プログラム等である。
【００４２】
さらに、このＥＥＰＲＯＭ３２のエリアＡには、書き込みデータチェック１処理プログラム及び書き込みデータチェック２処理プログラムを用いて制御プログラムデータのチェックを行うためのチェックデータ１が記憶されている。
【００４３】
なお、このエリアＡには、上述したプログラム以外にも、機器を支障なく動作させるための様々なプログラム、及び定数や機能設定のためのデータが記憶されている。
【００４４】
一方、ＥＥＰＲＯＭ３２のエリアＢには、装置の動作を実行させるための各種の制御プログラムが記憶されており、この制御プログラムは、プリント基板上のＩＣソケットにＥＰＲＯＭ３４が装着された状態で消去処理プログラム、及び書き換え処理プログラムが実行されることで記憶内容を消去し、その後にＥＰＲＯＭ３４のエリアＥに記憶されている新たな制御プログラムがエリアＢに順次書き込まれる。
【００４５】
また、ＥＥＰＲＯＭ３２のエリアＣは、書き込まれた制御プログラムが正しいか否かを判断するのに用いられるチェック用のデータを記憶するメモリ領域であって、チェックデータ１を調整するためのチェックデータ２（請求項に記載の第１チェックデータ）や、チェックデータ２が正しいデータであるか否かを判断するためのチェックデータ３（請求項に記載の第２チェックデータ）等が記憶される。このエリアＣのチェック用のデータは、エリアＢの制御プログラムの書き換え毎に書き換えられる。
【００４６】
ここで、先に述べたようにＥＥＰＲＯＭ３２のエリアＡ、Ｂに記憶された各種プログラムは、ＣＰＵ３１で実行されるが、特に消去処理プログラム及び書き換え処理プログラムはＣＰＵ３１で実行されることによってＥＰＲＯＭ３４のデータをＥＥＰＲＯＭ３２のエリアＢまたはエリアＣに書き込む書き込み手段として機能し、書き込みデータチェック１処理プログラム及び書き込みデータチェック２処理プログラムはＣＰＵ３１で実行されることによって書き換え処理及び新たな制御プログラムデータをチェックする判断手段として機能する。
【００４７】
次に、ＥＰＲＯＭ３４の各メモリ領域について説明する。
【００４８】
ＥＰＲＯＭ３４は、図３に示すように、ＥＥＰＲＯＭ３２と同様に大きく３つのメモリ領域（エリアＤ、エリアＥ、エリアＦ）に分けられている。
【００４９】
エリアＤは、ＥＥＰＲＯＭ３２のエリアＡと同一のデータが記憶されているメモリ領域であって、このデータは、後述するＥＥＰＲＯＭ３２の接続の判別、及び装置とエリアＥに記憶されている書き換え用の制御プログラムの適合性を判断するために使用される。
【００５０】
エリアＥには、書き換え用の制御プログラム（新たな制御プログラム）が記憶されている。なお、ここでは、装置を動作させるために実行されるプログラムの他に、装置を動作させるための各種データをも含んでおり、これらのプログラム及びデータは、ＥＥＰＲＯＭ３２のエリアＢに書き込まれる。
【００５１】
エリアＦには、エリアＥの書き換え用の制御プログラムに対応した新たなチェックデータ２やチェックデータ３等のチェックデータが記憶されており、これらのチェックデータは、ＥＰＲＯＭ３４のエリアＥの内容でもって書き換えられた制御プログラムをチェックするために使用される。なお、これらのチェックデータは、書き換え用の制御プログラムを作成する際に設定される。
【００５２】
この実施形態では、ＥＥＰＲＯＭ３２の書き換え作業が簡便になることから、プリント基板上にＩＣソケット４１を設けると共に、ＥＰＲＯＭ３２を起動させるために必要な回路を実装しており、ＩＣソケット４１にＥＰＲＯＭ３４を取り付けるだけでＥＥＰＲＯＭ３２の書き換えが行えるようにしているが、一般に、本発明では、書き換え用のＥＰＲＯＭ３４が搭載された書き換え用ユニットによって、外部からコネクタ等の接続部材を介してプリント基板上の制御部３０に接続してもよい。
【００５３】
また、この実施形態では、書き換え用のプログラムやデータを記憶する外部記憶媒体としてＥＰＲＯＭ３４を充当しているが、一般に、本発明では、書き換え用のプログラムやデータを記憶する外部記憶媒体として、メモリカードやメモリスティック等の記憶媒体や、パーソナル・コンピュータ等の記憶装置を用いてもよい。
【００５４】
以下、ＣＰＵ３１に割り付けられるアドレスマップについて説明する。
【００５５】
図５は、本発明の実施形態に係る自動原稿送り装置に内蔵される制御部のＣＰＵによってアクセスされるＲＡＭ領域のアドレスマップを示す模式図である。
【００５６】
アドレス“００００ｈ”から“００ＦＦｈ”までがファンクションレジスタ領域に割り付けられ、アドレス“０１００ｈ”から“０２ＦＦｈ”までがＲＡＭ３３に割り付けられる。さらに、アドレス“０３００ｈ”から“０ＦＦＦｈ”まではＥＥＰＲＯＭ３２に、アドレス“１３００ｈ”から“１ＦＦＦｈ”まではＥＰＲＯＭ３４に、それぞれ割り付けられる。
【００５７】
図６乃至図１１は、本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【００５８】
以下、図３を参照しながら、図６乃至図１１のフローチャートを使用して、本実施形態に係る自動原稿送り装置１００の書き換え用の制御プログラムによる制御プログラムの書き換え動作を説明する。
【００５９】
まず、電源が投入されると、エリアＡ内のイニシャルプログラムがＲＡＭ３３にコピー（転記）されて実行され、Ｉ／Ｏポートが初期化される（ＳＴ１００）。その後、書き換え用データ記憶装置としてのＥＰＲＯＭ３４がＩ／Ｏポートに接続されているか否かを判断するための接続判断処理プログラム（図７に示すサブルーチン）が実行される（ＳＴ１０１）。なお、この実行に際しては、エリアＡ内の上記接続判断処理ブログラムがＲＡＭ３にコピー（転記）されて実行される。
【００６０】
この接続判断処理では、図７に示すように、ＥＰＲＯＭ３４のエリアＤ、つまりアドレス“１９００ｈ”から“１ＦＦＦ”に割り付けられた領域の設定された複数の指定アドレスにアクセスし、指定アドレスのデータが予め定められた接続判断値と一致するか否かを判断する（ＳＴ２００乃至ＳＴ２０１）。この場合、ＩＣソケット４１にＥＰＲＯＭ３４が装着されていれば、定められた値と一致したデータが読み出され、ＩＣソケット４１にＥＰＲＯＭ３４が装着されていなければ、定められた値とは異なるデータが読み込まれる。この実施形態では、ＥＰＲＯＭ３４がＩ／Ｏポートに装着されていない場合、１チップマイコンの入力ポートがプルアップされているので、“ＦＦＦＦ”が読み込まれる。
【００６１】
なお、ここではＥＰＲＯＭ３４のエリアＤと、ＥＥＰＲＯＭ３２のエリアＡとには、同一のデータが記憶されているので、ＥＰＲＯＭ３４の指定アドレスに対応したＥＥＰＲＯＭ３２のアドレスの既定データを接続判断値とし、このＥＥＰＲＯＭ３２の対応アドレスデータとＥＰＲＯＭ３４の指定アドレスのデータとを比較し、ＩＣソケット４１にＥＰＲＯＭ３４が装着されているか否かを判断している。
【００６２】
これにより、ＥＰＲＯＭ３４のそれぞれの指定アドレスデータと予め定められた値とが一致するとＥＰＲＯＭ３４が接続されていると判断し（ＳＴ２０２）、一致しないとＥＰＲＯＭ３４が接続されていないと判断する（ＳＴ２０３）。
【００６３】
このようにしてＥＰＲＯＭ３４が接続されているか否かが判断され、ＥＰＲＯＭ３４が接続されていると判断されると、以降、制御プログラムの書き換えを行う書き換えモード（後述する）に移行し、ＥＰＲＯＭ３４が接続されていないと判断されると、通常に制御プログラムによって装置を動作させる通常モード（後述する）に移行する（ＳＴ１０２）。即ち、ここではＩＣソケット４１にＥＰＲＯＭ３４が取り付けられているか否かによって、プログラムの書き換えモードを行うべきか、それとも通常モードを行うべきかを自動的に判別している。
【００６４】
これにより、ＥＰＲＯＭ３４が接続されていると判断されて制御プログラムの書き換え動作を伴う書き換えモードに移行すると、この書き換えモードにおいて、表示装置にプログラムが書き換え中であることを表示し（ＳＴ１０３）、ＥＰＲＯＭ３４のエリアＥに記憶されている制御プログラムが本装置に適合した正しい制御プログラムか否かを確認する装置適合判断処理（図８に示すサブルーチン）が実行される（ＳＴ１０４）。
【００６５】
この装置適合判断処理は、図８に示すようにＥＰＲＯＭ３４のエリアＤとＥＥＰＲＯＭ３２のエリアＡの全データが一致しているか否かを判断する（ＳＴ３０１）。そして、一致していればＥＰＲＯＭ３４のエリアＥの制御プログラムは装置に適合していると判断し（ＳＴ３０２）、一致していなければ装置に不適合と判断する（ＳＴ３０３）。
【００６６】
ここで、通常の装置とは異なる装置であれば、装置を駆動するモータ等のアクチュエータ、センサ、制御回路、又は１チップマイコンのいずれかが異なるため、ＥＰＲＯＭ３４のエリアＤとＥＥＰＲＯＭ３２のエリアＡの全データが一致することがない。したがって、ＥＰＲＯＭ３４のエリアＤとＥＥＰＲＯＭ３２のエリアＡの全データを比較することによって、ＥＰＲＯＭ３４のエリアＥに記憶されている制御プログラムが装置に適合しているか否かが判断できる。
【００６７】
そして、ＳＴ１０５では、装置に不適合と判断された場合は異常であることを表示し（ＳＴ１８０）、書き込み動作を中断する。
【００６８】
一方、ＳＴ１０５で装置に適合されると判断した場合は、ＥＥＰＲＯＭ３２のエリアＡの内容をＲＡＭ３３にコピー（転記）し、記憶させる（ＳＴ１０６）。その後、ＲＡＭ３３にコピーされたプログラムを実行して以下に示す書き換え動作を行う。
【００６９】
書き換え動作では、まず、ＥＥＰＲＯＭ３２のエリアＢ、及びエリアＣのデータを消去する消去処理を実行する（ＳＴ１０７）。この消去処理は、図９に示すようにエリアＣの内容を消去し（ＳＴ４０１）、その後にエリアＢの内容を消去する（ＳＴ４０２）。
【００７０】
このように、エリアＣの内容を消去した後にエリアＢの内容を消去することによって、消去中に電源が切断されるような事態が生じても、電源復帰後にプログラムが正しく書き換えられていないことを確実に判断することができる。
【００７１】
なお、この実施形態におけるデータ消去とは、エリアＢ、エリアＣの全データを“ＦＦＦＦｈ”に書き換えることである。
【００７２】
次に、ＥＰＲＯＭ３４のエリアＥの新たな制御プログラムのデータをアドレスに従って読み出し、ＥＥＰＲＯＭ３２のエリアＢに書き込む（ＳＴ１０８）。
【００７３】
このようにして、ＥＥＰＲＯＭ３２のエリアＢの制御プログラムデータが書き換えられる。
【００７４】
ＥＥＰＲＯＭ３２への制御プログラムデータの書き換えが終了すると、次に、書き込みデータチェック１処理が実行される（ＳＴ１０９）。
【００７５】
この書き込みデータチェック１処理では、ＥＥＰＲＯＭ３２のエリアＢに制御プログラムが正しく書き込まれたか否かを判断するが、そのため、図１０に示すように、まず、新たに書き換えられたエリアＢの内容に、記憶された制御プログラムデータを１６ビット毎に加算し、エリアＢ内の１６ビットのＳＵＭ値を算出する（ＳＴ５０１）。
【００７６】
次に、エリアＡのチェックデータ１から、上記エリアＢ内の１６ビットデータのＳＵＭ値データを減算し（ＳＴ５０２）、この減算した値とＥＰＲＯＭ３４のエリアＦのチェックデータ２と比較する（ＳＴ５０３）。そして、この比較結果が一致していなければ、制御プログラムが正しく書き込まれていないとして書き込み異常と判断する（ＳＴ５０６）。
【００７７】
一方、この比較結果が一致していれば、さらに、先に減算した値のデータをビット反転して成るデータと、ＥＰＲＯＭ３４のエリアＦのチェックデータ３とを比較し（ＳＴ５０４）、一致していれば制御プログラムが正常に書き込まれたと判断する（ＳＴ５０５）。
【００７８】
また、上記ビット反転して成るデータとＥＰＲＯＭ３４のチェックデータ３とを比較した結果が一致していなければ、制御プログラムの書き込みが異常であったと判断する（ＳＴ５０６）。
【００７９】
このようにして、ＥＥＰＲＯＭ３２のエリアＢに制御プログラムが正しく書き込まれたと判断されたならば、ＥＰＲＯＭ３４のエリアＦのチェックデータ２、チェックデータ３をＥＥＰＲＯＭ３２のエリアＣに書き込み（ＳＴ１１０）、その後、書き換え動作が終了したことを表示する（ＳＴ１１２）。
【００８０】
なお、ＥＥＰＲＯＭ３２のエリアＢに制御プログラムが正しく書き込まれていなければ、異常を表示する（ＳＴ１１３）。
【００８１】
ここで、チェックデータ１、チェックデータ２、チェックデータ３について述べると、チェックデータ１は、書き換え不可能な保護エリアでエリアＡに記憶された特定値であり、チェックデータ２はエリアＢの全データの総和（ＳＵＭ値）にチェックデータ２を加算することによって、チェックデータ１となるように調整する調整値である。また、チェックデータ３はチェックデータ２を各ビット反転したビット反転データとなっている（詳細は後述する）。
【００８２】
次に、ＳＴ１０２で、ＥＰＲＯＭ３４が接続されていないと判断されると、前述のとおり、通常モードに移行する。この通常モードでは、まず、図６に示すように、書き込みデータチェック２処理（図１１に示すサブルーチン）が実行される（ＳＴ１２０）。
【００８３】
このＳＴ１２０における書き込みデータチェック２処理では、まず、チェックデータ２の各ビットの反転ビットデータとチェックデータ３とを比較し、チェックデータ２が正しいか否かを判断する（ＳＴ６０１）。
【００８４】
なお、このチェックデータ２の各ビットの反転ビットデータとチェックデータ３とを比較してチェックデータ２が正しいか否か判断することによって、消去処理及び書き込み処理が正常に終了し、データが書き換えられているか否かを判断することができる。
【００８５】
ＳＴ６０１により、チェックデータ２の各ビットの反転ビットデータとチェックデータ３とが一致していれば、チェックデータ２が正しいと判断してＳＴ６０２に移り、一致していなければ、正しくないと判断して書き込みデータ異常とする（ＳＴ６０５）。
【００８６】
これにより、新たなプログラムやデータを書き換え中に書き換えが中断され、その後にＥＰＲＯＭ３４を取り外して電源を再投入した場合、エリアＢの書き込み中断時におけるデータの総和と正常に書き込まれたときのデータの総和が一致し、チェックデータ２が“ＦＦＦＦ”であっても、チェックデータ３は少なくとも“ＦＦＦＦ”とは異なるデータとなるため、書き換えが最後まで正常に終了しているか否か確実に判断することができる。
【００８７】
ＳＴ６０１で、チェックデータ２が正しいと判断されると、エリアＢのデータとエリアＣのチェックデータ２を１６ビット毎に加算し（ＳＴ６０２）、この加算したデータとエリアＡのチェックデータ１とを比較する（ＳＴ６０３）。両者の値が一致していれば書き込みデータが正常と判断し（ＳＴ６０４）、一致していなければ書き込みデータ異常と判断する（ＳＴ６０５）。
【００８８】
即ち、この書き込みデータチェック２処理では、チェックデータ２、及び制御プログラムのデータにチェックデータ２を加えたデータ総和をチェックすることで、正常に正しい制御プログラムが書き込まれているか否かを判断している。
【００８９】
ＳＴ１２０の書き込みデータチェック２処理の結果、制御プログラム及び各データが正しく書き込まれている場合は、新しく書き換えられた制御プログラムを実行して装置を起動させる（ＳＴ１２２）。一方、制御プログラム及び各データが正しく書き込まれていない場合は、「異常」を表示して処理を終了することとなる（ＳＴ１２３）。
【００９０】
つまり、上述した書き込みデータチェック２処理においてのＥＥＰＲＯＭ３２内に正しい制御プログラム及び各種データが記憶されているか否かを判断する工程は第１の判断手段として機能し、ＥＥＰＲＯＭ３２の制御プログラム及び各種データの消去処理及び書き換え処理が正常に終了したか否かを判断する工程は第２の判断手段として機能する。
【００９１】
なお、本実施例では、処理効率に鑑みて制御プログラム及び各種データの消去処理及び書き換え処理が正常に終了したか否かを判断する工程を実行（第２の判断手段）した後に、正しい制御プログラム及び各種データが記憶されているか否かを判断する工程を実行（第１の判断手段）したが、正しい制御プログラム及び各種データが記憶されているか否かを判断する工程を先に実行してもよい。
【００９２】
さらに、第１の電子機器の動作制御を行う制御装置を構成するＥＥＰＲＯＭ３２において書き換えられた制御プログラムが正しいか否かを判断する工程と当該制御プログラムの書き換えが正常に終了したか否かの工程を以下説明する自動原稿送り装置に適用する場合も含めて、事前に、制御基板４０上に搭載されたＥＰＲＯＭ３４（外部記憶装置）に格納されている新たな制御プログラム及び機能設定データに対しても実行しておくようにするとよい。これにより、制御プログラムとデータの書き換えチェックの完全を期することができる。
【００９３】
図１２は、本発明の実施形態に係る自動原稿送り装置の制御部において書き込みのチェックに使用されるチェックデータを説明するためのデータマップである。
【００９４】
以下、図１２を参照して、本発明の実施形態に係る自動原稿送り装置の制御部が書き込みのチェックに使用するチェックデータ１乃至３について説明する。
【００９５】
ここでは、説明を簡単にするために、ＥＥＰＲＯＭ３２の記憶領域であるエリアＡはアドレス００乃至０Ｆ、エリアＢはアドレス１０乃至１Ｆ、エリアＣはアドレス２０乃至２Ｆに、それぞれアドレス付けされているものとする。
【００９６】
まず、チェックデータ１について説明すると、エリアＡのアドレス００乃至０Ｄにはチェックデータ１として値ＦＦＦＦｈを格納する。
【００９７】
次に、チェックデータ２について説明すると、エリアＢのデータ（アドレス１０乃至１Ｆまでのデータ）を、１６ビット（２バイト）毎に加算していくと、その結果として、ＳＵＭ値＝２ＡＤ３Ｆｈのデータを得るが、データは１６ビットで表現されることになっているため、このデータの最上位の「２」は削除される。即ち、前述のエリアＢのデータのＳＵＭ値はＡＤ３Ｆｈとなる。このＳＵＭ値＝ＡＤ３Ｆｈを、エリアＡにチェックデータ１として記憶されている値のＦＦＦＦｈから減算した値、即ち５２Ｃ０ｈを、エリアＣのアドレス２０乃至２１に格納するチェックデータ２とする。
【００９８】
なお、このチェックデータ２の値（ここでは、５２Ｃ０ｈ）は、電源投入時のデータチェック２の処理（図１１に示すサブルーチン）を実行する際に、前述のエリアＢのデータのＳＵＭ値（＝ＡＤ３Ｆｈ）と加算すると、元のＦＦＦＦｈ（エリアＡにチェックデータ１として記憶されている値）となり、即ち、このことを検算するための調整値としての役割を有する。
【００９９】
最後に、チェックデータ３について説明すると、エリアＣのアドレス２２乃至２３に格納するチェックデータ３は、チェックデータ２の値５２Ｃ０ｈをビット反転した値ＡＤ３Ｆｈとする。このチェックデータ３の値ＡＤ３Ｆｈは、チェックデータ２をチェックする役割を有する。
【０１００】
なお、この実施形態では、接続判断処理時の指定アドレスのデータと比較される予め定められた接続判断値を、ＥＥＰＲＯＭのエリアＡに記憶された既定のデータとしたが、本発明では、他に、ＥＥＰＲＯＭのエリアＡ及びＥＰＲＯＭのエリアＤのそれぞれに接続判断チェック領域を設定し、そのＥＰＲＯＭの接続判断チェック領域のアドレスにアクセスしてデータを読み出し、ＥＥＰＲＯＭの接続判断チェック領域のデータと比較してＥＰＲＯＭがＩＣソケット４１に接続されているか否かを判断する構成としてもよい。
【０１０１】
また、本実施の形態では、ＥＥＰＲＯＭ３２のエリアＡの内容をＲＡＭ３３に転記して記憶せしめ、このＲＡＭ３３に転記されたプログラムを実行しているが、本発明では、他に、ＥＰＲＯＭ３４のエリアＤの内容をＲＡＭ３３に転記して記憶せしめ、このＲＡＭ３３に転記されたプログラムを実行することも可能である。
【０１０２】
さらに、本実施の形態では、チェックデータ３をチェックデータ２の各ビットを反転したデータとし、電源投入時に消去処理、書き換え処理が正常に終了したか否かを判断するためにチェックデータ２の各ビットを反転したデータとチェックデータ３とを比較して一致していれば書き換え処理が正常に終了したと判断し、一致していなければ書き換え処理が異常であると判断したが、本発明では、他に、チェックデータ３を消去処理した時点のエリアＣのデータ、即ち、ＦＦＦＦｈとは異なる特定データを書き込むようにしてもよい。このとき、電源投入時に実行される書き込みデータチェック２処理にて書き込まれた特定データが所定のデータ値と一致しているか否かによって書き換え処理が正常に終了したか否かを判断するようにする。なお、この場合には、チェックデータ２は消去処理を実行する際にエリアＣのチェックデータ２及びエリアＢを消去する前に消去し、書き換え処理を実行する際にはエリアＢ及びエリアＣのチェックデータ２を書き換えた後に書き換え実行する。このようにすることによって、確実に書き換え処理が正常に終了したか否かを判断することが可能となる。
【０１０３】
また、本実施の形態では、ＥＥＰＲＯＭ３２のエリアＡに装置固有のチェックデータ１を予め設定し、エリアＢに書き込まれた制御プログラムデータの総和がチェックデータ１に一致するように調整するチェックデータ２を設け、エリアＢに書き込まれたデータのチェックを行ったが、図１２に示すようにエリアＣ’に書き換えデータの総和を演算したＳＵＭ値を記憶すると共に、ＳＵＭ値のデータの各ビットをビット反転した値をＳＵＭ値チェックデータとして記憶し、電源を投入する毎にＳＵＭ値のデータの各ビットをビット反転した値とＳＵＭ値チェックデータとが一致しているか否かを判断し、一致していればエリアＢ’に記憶されたデータの総和とＳＵＭ値が一致するか否かを判断するようにしてもよい。この場合、ＳＵＭ値のデータの各ビットをビット反転した値とＳＵＭ値チェックデータとが一致し、かつエリアＢに記憶されたデータの総和とＳＵＭ値が一致したときにエリアＢに正しいデータが書き込まれていることとなる。なお、この場合には、チェックデータ２が正しいか否かを判断する際にチェックデータ２の各ビットを反転したデータとチェックデータ３と比較したが、チェックデータ２とチェックデータ３を加算し、その結果が“ＦＦＦＦ”となれば、チェックデータ２は正しいと判断し、“ＦＦＦＦ”でなければ、正しくないと判断してもよい。ここでは、チェックデータ２の各ビットを反転したデータがチェックデータ３であることから、両データを加算すれば必ず“ＦＦＦＦ”になることに着目している。
【０１０４】
また、本実施の形態では、チェックデータ２の各ビットを反転したデータをチェックデータ３としたが、チェックデータ２から予め定めた一定値を加算、又は減算した値をチェックデータ３としてもよい。なお、他の実施例に示すＳＵＭ値チェックデータも同様にＳＵＭ値から予め定めた一定値を加算、又は減算した値をＳＵＭ値チェックデータとしてもよい。即ち、チェックデータ３は、チェックデータ２と特定の関係を有するチェックデータ２とは異なるデータであることが望ましい。
【０１０５】
さらに、この実施形態では、制御部３０が本発明に係る自動原稿送り装置１００に内蔵され、この制御部３０によって上記本発明に係る自動原稿送り装置１００のＥＥＰＲＯＭ３２の書き換えを行う場合を示したが、一般に、本発明では、制御部３０を、一般的な電子機器を制御するための制御装置とすることができる。
【０１０６】
以上詳しく説明したように、本発明の実施の形態によれば、ＥＥＰＲＯＭ内のチェックエリアに、書き換えられた制御プログラムの良否を判断するための第１のチェック用データと消去処理及び書き換え処理が正常に終了したか否かを判断するために用いられる第２のチェック用データとを制御プログラムデータを書き換える際に書き換え、電源投入時に書き換えられた第２のチェック用データに基づいて消去処理及び書き込み処理が正常に終了し、データが書き換えられているか否かを判断した後に、第１の記憶領域に記憶された第１のチェック用データによって書き換えられたプログラムの良否を判断するようにしたので、正しい制御プログラムが正常に書き換えられたか否かを確実にチェックすることができる効果がある。
【０１０７】
また、特に、自動原稿送り装置１００のように、他の機器（例えば、複写機）のオプションとして使用される装置においては、この装置が装着される本体装置に応じて機能の追加等のバージョンアップが容易にでき、確実に制御内容が変更されたことを確認できる。
【０１０８】
さらに、本発明の電子機器を制御するための制御装置によれば、一般的な電子機器を制御すると共に、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭを書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックすることを実現したのである。
【０１０９】
また、書き換えに先立つ消去中に電源が切断されるような事態が生じても、電源復帰後に、動作制御プログラムが正しく書き換えられていないことを検知することを実現したのである。
【０１１０】
また、外部記憶装置に記憶されている動作制御プログラムが、ビット化けなどを起こさずに、正しく書き込まれたか否かを検証することができる効果がある。
【０１１１】
また、ＥＥＰＲＯＭの書き換え処理に異常が生じたことを、操作者に通報すると共に、動作制御プログラムのミスマッチによるＣＰＵの不正処理や暴走を未然に食い止めることができるのである。
【０１１２】
また、本発明に係る自動原稿送り装置は、動作制御プログラムやデータが書き込まれたＥＥＰＲＯＭを書き換える処理において、新たな制御プログラムやデータが正常に書き込まれたか否かを自動的にチェックすることを実現可能にしたのである。
【図面の簡単な説明】
【図１】本発明の実施形態に係る自動原稿送り装置の断面図である。
【図２】本発明の実施形態に係る自動原稿送り装置の外装カバーの一部を取り外し、１チップマイコン（制御部）が実装された制御基板を露出させた状態を示す平面図である。
【図３】本発明の実施形態に係る自動原稿送り装置の制御部、及びその周辺の構成を示すブロック図である。
【図４】本発明の実施形態に係る自動原稿送り装置の１チップマイコンを実装する制御基板の実装図である。
【図５】本発明の実施形態に係る自動原稿送り装置に内蔵される制御部のＣＰＵによってアクセスされるＲＡＭ領域のアドレスマップを示す模式図である。
【図６】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図７】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図８】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図９】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図１０】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図１１】本発明の実施形態に係る自動原稿送り装置の書き換え用の制御プログラムによる書き換え動作を示すフローチャートである。
【図１２】本発明の実施形態に係る自動原稿送り装置の制御部において書き込みのチェックに使用されるチェックデータを説明するためのデータマップである。
【符号の説明】
３０  制御部
３１  ＣＰＵ
３２  ＥＥＰＲＯＭ（電気的に書き換え可能なＲＯＭ）
３４  ＥＰＲＯＭ（電気的にプログラム可能なＲＯＭ）
３３  ＲＡＭ
３７  アクチュエータ
３８  センサ
３９  表示装置
４０  制御基板
４１  ＩＣソケット
１００  自動原稿送り装置（本発明）
１０１  外装カバー
１１０  給紙トレイ
１１１  排紙トレイ
１２０  繰り出しローラ
【図１】
2004310216.tif 000003
【図２】
2004310216.tif 000004
【図３】
2004310216.tif 000005
【図４】
2004310216.tif 000006
【図５】
2004310216.tif 000007
【図６】
2004310216.tif 000008
【図７】
2004310216.tif 000009
【図８】
2004310216.tif 000010
【図９】
2004310216.tif 000011
【図１０】
2004310216.tif 000012
【図１１】
2004310216.tif 000013
【図１２】
2004310216.tif 000014