上位装置に接続される周辺装置であって、前記周辺装置を動作させるファームウェアのプログラムデータを前記上位装置からダウンロード可能な周辺装置において、前記周辺装置に記憶されている前記プログラムデータの書き換えを制御する書き換え制御部を備え、前記プログラムデータを含むとともに前記上位装置に記憶されるダウンロードファイルに、前記周辺装置に記憶されている前記プログラムデータを前記上位装置に記憶されている前記プログラムデータに書き換えることを前記書き換え制御部に許可させるための書き換え許可データが含まれている場合に、前記周辺装置に記憶されている前記プログラムデータを前記上位装置から送られる前記プログラムデータに書き換えて、データ書換えの正常完了応答を前記上位装置へ返すとともに、前記ダウンロードファイルに前記書き換え許可データが含まれていない場合に、前記周辺装置に記憶されている前記プログラムデータを前記上位装置から送られる前記プログラムデータに書き換えずに、データ書換えの正常完了応答を前記上位装置へ返すことを特徴とする周辺装置。上位装置に接続される周辺装置であって、前記周辺装置を動作させるファームウェアのプログラムデータを前記上位装置からダウンロード可能な周辺装置の制御方法において、前記周辺装置に記憶されている前記プログラムデータを前記上位装置に記憶されている前記プログラムデータに書き換えることを許可させるための書き換え許可データが、前記プログラムデータを含むとともに前記上位装置に記憶されるダウンロードファイルに含まれているか否かを判別する書き換え許可判別ステップと、前記書き換え許可判別ステップで、前記書き換え許可データが前記ダウンロードファイルに含まれている場合に、前記周辺装置に記憶されている前記プログラムデータを前記上位装置から送られる前記プログラムデータに書き換えて、データ書換えの正常完了応答を前記上位装置へ返す書き換えステップと、前記書き換え許可判別ステップで、前記書き換え許可データが前記ダウンロードファイルに含まれていない場合に、前記周辺装置に記憶されている前記プログラムデータを前記上位装置から送られる前記プログラムデータに書き換えずに、データ書換えの正常完了応答を前記上位装置へ返す擬似書き換えステップとを備えることを特徴とする周辺装置の制御方法。請求項1に記載の周辺装置、または、請求項2に記載の周辺装置の制御方法で制御される周辺装置が接続可能な前記上位装置を備えることを特徴とするファームウェアのダウンロードシステム。前記書き換え許可データは、前記ダウンロードファイルの前記プログラムデータの中に含まれていることを特徴とする請求項3記載のファームウェアのダウンロードシステム。前記ダウンロードファイルには、前記周辺装置に記憶されている前記プログラムデータを前記上位装置に記憶されている前記プログラムデータに書き換えても良いか否かを判別するための書き換え照合コマンドが含まれ、前記書き換え許可データは、前記書き換え照合コマンドに付されていることを特徴とする請求項3記載のファームウェアのダウンロードシステム。前記上位装置には、前記周辺装置よりも旧型の第2周辺装置が接続可能であり、前記第2周辺装置は、前記ダウンロードファイルに前記書き換え許可データが含まれているか否かを判別せずに、前記第2周辺装置に記憶されている前記プログラムデータを前記上位装置から送られる前記プログラムデータに書き換えることを特徴とする請求項3から5のいずれかに記載のファームウェアのダウンロードシステム。上位装置に接続されるカードリーダは、その機能を向上させたり、使用されている部品の製造中止に対処したりするために、旧型のものから新型のものへ交換されることがある。一方で、上位装置に記憶されているファームウェアのプログラムデータが新型のカードリーダに対応したプログラムデータである保障はなく、たとえば、上位装置に記憶されているファームウェアのプログラムデータが旧型のカードリーダに対応したプログラムデータである場合に、新型のカードリーダが上位装置に接続される場合がある。上位装置に新型のカードリーダが接続され、かつ、旧型のカードリーダに対応したプログラムデータが上位装置に記憶されている場合に、特許文献1に記載のダウンロード方法でダウンロードが行われると、旧型のカードリーダに対応したプログラムデータが新型のカードリーダにダウンロードされてしまうおそれがある。すなわち、上位装置に記憶されているプログラムデータによっては、機能の向上を図るために、あるいは、使用部品の製造中止に対処するために生産された新型のカードリーダに、旧型のカードリーダに対応したプログラムデータがダウンロードされてしまうおそれがあり、その結果、上位装置に接続されるカードリーダを新型のものに交換したにもかかわらず、その機能の向上を図ったり、使用部品の製造中止に対処したりすることができなくなるおそれがある。また、新型のカードリーダに、旧型のカードリーダに対応したプログラムデータがダウンロードされると、新型のカードリーダが動作しなくなるおそれもある。旧型のカードリーダに対応したプログラムデータが新型のカードリーダにダウンロードされるのを防止するには、旧型のカードリーダに対応したプログラムデータが上位装置に記憶されている場合に、旧型のカードリーダに対応したプログラムデータのダウンロードを新型のカードリーダが拒否すれば良い。すなわち、上位装置からのプログラムデータのダウンロードコマンド等に対して、新型のカードリーダがダウンロードの拒否応答を返せば良い。しかしながら、新型のカードリーダがダウンロードの拒否応答を返すと、上位装置側のダウンロード処理を正常に終了させることができずに、上位装置を含むシステムがダウンしてしまうすなわち、システム全体の動作が停止してしまうおそれがある。そこで、本発明の課題は、旧型の周辺装置に対応したプログラムデータが上位装置からダウンロードされるのを防止しつつ、周辺装置を含むシステムのダウンを回避することが可能な周辺装置を提供することにある。また、本発明の課題は、旧型の周辺装置に対応したプログラムデータが上位装置からダウンロードされるのを防止しつつ、周辺装置を含むシステムのダウンを回避することが可能となる周辺装置の制御方法を提供することにある。さらに、本発明の課題は、かかる周辺装置が接続可能な上位装置を備えるファームウェアのダウンロードシステムを提供することにある。上記の課題を解決するため、本発明の周辺装置は、上位装置に接続される周辺装置であって、周辺装置を動作させるファームウェアのプログラムデータを上位装置からダウンロード可能な周辺装置において、周辺装置に記憶されているプログラムデータの書き換えを制御する書き換え制御部を備え、プログラムデータを含むとともに上位装置に記憶されるダウンロードファイルに、周辺装置に記憶されているプログラムデータを上位装置に記憶されているプログラムデータに書き換えることを書き換え制御部に許可させるための書き換え許可データが含まれている場合に、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えて、データ書換えの正常完了応答を上位装置へ返すとともに、ダウンロードファイルに書き換え許可データが含まれていない場合に、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えずに、データ書換えの正常完了応答を上位装置へ返すことを特徴とする。本発明の周辺装置では、上位装置に記憶されるダウンロードファイルに書き換え許可データが含まれている場合には、周辺装置に記憶されているプログラムデータが上位装置から送られるプログラムデータに書き換えられているが、ダウンロードファイルに書き換え許可データが含まれていない場合には、周辺装置に記憶されているプログラムデータが上位装置から送られるプログラムデータに書き換えられていない。そのため、本発明では、新型の周辺装置に対応したプログラムデータが含まれるダウンロードファイルの中に書き換え許可データを含ませることで、旧型の周辺装置に対応したプログラムデータが上位装置から新型の周辺装置へダウンロードされるのを防止することが可能になる。また、本発明の周辺装置は、ダウンロードファイルに書き換え許可データが含まれておらず、周辺装置に記憶されているプログラムデータが上位装置から送られるプログラムデータに書き換えられない場合であっても、データ書換えの正常完了応答を上位装置へ返している。そのため、上位装置から周辺装置へプログラムデータがダウンロードされなくても、上位装置側のダウンロード処理を正常に終了させることが可能になる。したがって、本発明では、周辺装置を含むシステムのダウンを回避することが可能になる。また、上記の課題を解決するため、本発明の周辺装置の制御方法は、上位装置に接続される周辺装置であって、周辺装置を動作させるファームウェアのプログラムデータを上位装置からダウンロード可能な周辺装置の制御方法において、周辺装置に記憶されているプログラムデータを上位装置に記憶されているプログラムデータに書き換えることを許可させるための書き換え許可データが、プログラムデータを含むとともに上位装置に記憶されるダウンロードファイルに含まれているか否かを判別する書き換え許可判別ステップと、書き換え許可判別ステップで、書き換え許可データがダウンロードファイルに含まれている場合に、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えて、データ書換えの正常完了応答を上位装置へ返す書き換えステップと、書き換え許可判別ステップで、書き換え許可データがダウンロードファイルに含まれていない場合に、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えずに、データ書換えの正常完了応答を上位装置へ返す擬似書き換えステップとを備えることを特徴とする。本発明の周辺装置の制御方法では、書き換え許可判別ステップで、書き換え許可データがダウンロードファイルに含まれている場合には、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えているが、書き換え許可判別ステップで、書き換え許可データがダウンロードファイルに含まれていない場合には、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えていない。そのため、本発明では、新型の周辺装置に対応したプログラムデータが含まれるダウンロードファイルの中に書き換え許可データを含ませることで、旧型の周辺装置に対応したプログラムデータが上位装置から新型の周辺装置へダウンロードされるのを防止することが可能になる。また、本発明の周辺装置の制御方法では、書き換え許可判別ステップで、書き換え許可データがダウンロードファイルに含まれておらず、周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えない場合であっても、擬似書き換えステップで、データ書換えの正常完了応答を上位装置へ返している。そのため、上位装置から周辺装置へプログラムデータがダウンロードされなくても、上位装置側のダウンロード処理を正常に終了させることが可能になる。したがって、本発明では、周辺装置を含むシステムのダウンを回避することが可能になる。本発明の周辺装置、または、本発明の制御方法で制御される周辺装置は、この周辺装置が接続可能な上位装置を備えるファームウェアのダウンロードシステムに用いることができる。このファームウェアのダウンロードシステムでは、旧型の周辺装置に対応したプログラムデータが上位装置から新型の周辺装置へダウンロードされるのを防止しつつ、システムのダウンを回避することが可能になる。本発明において、書き換え許可データは、ダウンロードファイルのプログラムデータの中に含まれていることが好ましい。このように構成すると、たとえば、周辺装置に記憶されているプログラムデータを上位装置に記憶されているプログラムデータに書き換えても良いか否かを判別するための書き換え照合コマンドがダウンロードファイルに含まれていない場合や、ダウンロードファイルに含まれる書き換え照合コマンドを周辺装置が受け付けない場合であっても、ダウンロードファイルに書き換え許可データが含まれているか否かを判別することが可能になる。本発明において、ダウンロードファイルには、周辺装置に記憶されているプログラムデータを上位装置に記憶されているプログラムデータに書き換えても良いか否かを判別するための書き換え照合コマンドが含まれ、書き換え許可データは、書き換え照合コマンドに付されていても良い。この場合には、たとえば、プログラムデータに書き換え許可データを含ませる必要がなくなるため、プログラムデータの構造を簡素化することが可能になる。本発明において、上位装置には、周辺装置よりも旧型の第2周辺装置が接続可能であり、第2周辺装置は、ダウンロードファイルに書き換え許可データが含まれているか否かを判別せずに、第2周辺装置に記憶されているプログラムデータを上位装置から送られるプログラムデータに書き換えることが好ましい。このように構成すると、新型の周辺装置に対応するプログラムデータが上位装置に記憶されている場合には、このプログラムデータが上位装置から第2周辺装置へダウンロードされるため、このプログラムデータによって、第2周辺装置を動作させることが可能になる。すなわち、上位装置に記憶されている新型の周辺装置に対応の1個のプログラムデータによって、周辺装置および第2周辺装置を動作させることが可能になる。また、このように構成すると、第2周辺装置に対応するプログラムデータが上位装置に記憶されている場合、このプログラムデータは、第2周辺装置にはダウンロードされるが、周辺装置にはダウンロードされない。したがって、この場合には、周辺装置に対応するプログラムデータによって周辺装置を動作させ、かつ、第2周辺装置に対応するプログラムデータによって第2周辺装置を動作させることが可能になる。すなわち、上位装置に記憶されているプログラムデータが1個であっても、周辺装置および第2周辺装置を適切に動作させることが可能になる。その結果、このように構成すると、上位装置に周辺装置が接続されるのか、あるいは、第2周辺装置が接続されるのかによって、上位装置を変更する必要がなくなる。したがって、ダウンロードシステムを使用するユーザの利便性を高めることが可能になる。以上のように、本発明の周辺装置、周辺装置の制御方法、および、ファームウェアのダウンロードシステムでは、旧型の周辺装置に対応したプログラムデータが上位装置から新型の周辺装置へダウンロードされるのを防止しつつ、周辺装置を含むシステムのダウンを回避することが可能になる。以下、図面を参照しながら、本発明の実施の形態を説明する。ファームウェアのダウンロードシステムの構成図1は、本発明の実施の形態にかかるファームウェアのダウンロードシステム1の概略構成を示すブロック図である。図2は、図1に示す上位装置2に記憶されるダウンロードファイル7のデータ構造の一例を示す概念図である。図3は、図1に示す上位装置2に接続されるカードリーダ3と上位装置2に記憶されるダウンロードファイル7との組合せパターンを説明するための概念図である。本形態のファームウェアのダウンロードシステム1以下、ダウンロードシステム1とするは、ホストコンピュータ等の上位装置2と、上位装置2に通信可能に接続されるカードリーダ3とを備えている。このダウンロードシステム1は、カードリーダ3を動作させるファームウェアのプログラムデータ4図2参照を上位装置2からカードリーダ3へダウンロードする。本形態では、機能を向上させたり、使用されている部品の製造中止に対処したりするために製造された新型のカードリーダ3であるカードリーダ3Aと、カードリーダ3Aよりも旧型のカードリーダ3であるカードリーダ3Bとが、上位装置2に接続可能となっており、上位装置2には、たとえば、カードリーダ3Aまたはカードリーダ3Bのいずれか1台が接続されている。本形態のカードリーダ3Aは、周辺装置であり、カードリーダ3Bは、第2周辺装置である。上位装置2は、カードリーダ3にプログラムデータ4をダウンロードするための制御を行うダウンロード制御部5を備えている。ダウンロード制御部5は、上位装置2内の通信手段や制御用プログラム等によって構成されている。また、上位装置2は、ハードディスクドライブ等の外部記憶部6を備えている。外部記憶部6には、プログラムデータ4を含むダウンロードファイル7が記憶されている。本形態では、カードリーダ3Aに対応するプログラムデータ4を含むダウンロードファイル7A図3A、C参照、または、カードリーダ3Bに対応するプログラムデータ4を含むダウンロードファイル7B図3B、D参照のいずれかが外部記憶部6に記憶されている。カードリーダ3は、たとえば、カードを手動で移動させながらカードに記録された磁気データの読取り等を行う手動式のカードリーダ、あるいは、カードの搬送機構によってカードを搬送させながらカードに記録された磁気データの読取り等を行うカード搬送式のカードリーダである。カードリーダ3Aは、カードリーダ3Aを制御するカードリーダ制御部8を備えている。カードリーダ制御部8は、ROM、RAM、不揮発性メモリ等の記憶手段やCPU等の演算手段等によって構成されている。また、カードリーダ制御部8は、カードリーダ3Aに記憶されているプログラムデータの書き換えを制御する書き換え制御部9と、プログラムデータを含むファームウェアが格納記憶されるファームウェア格納部10とを備えている。カードリーダ3Bは、カードリーダ3Bを制御するカードリーダ制御部13を備えている。カードリーダ制御部13は、ROM、RAM、不揮発性メモリ等の記憶手段やCPU等の演算手段等によって構成されている。また、カードリーダ制御部13は、カードリーダ3Bに記憶されているプログラムデータの書き換えを制御する書き換え制御部14と、プログラムデータを含むファームウェアが格納されるファームウェア格納部15とを備えている。ダウンロードファイル7には、プログラムデータ4に加え、プログラムデータ4のレビジョン情報17と、イレースコマンド18と、ダウンロードコマンド19と、EOFEndOfFilemark、ファイル末端コード20とが記述されている。レビジョン情報17は、ダウンロードファイル7の1行目に記述され、イレースコマンド18は、ダウンロードファイル7の2行目に記述されている。ダウンロードコマンド19およびプログラムデータ4は、ダウンロードファイル7の3行目以降に記述され、EOF20は、ダウンロードファイル7の最終行に記述されている。レビジョン情報17は、ダウンロードファイル7におけるプログラムデータ4の改訂情報である。レビジョン情報17のフォーマットは、たとえば、上位装置2がカードリーダ3に対してプログラムデータのレビジョン取得コマンドを発行した場合に得られるカードリーダ3からのレスポンス応答と、同一フォーマットとなっている。レビジョン取得コマンドは、カードリーダ3に記憶されているプログラムデータのレビジョン情報を取得するためのコマンドである。イレースコマンド18は、カードリーダ3のファームウェア格納部10、15の中の指定した領域を消去イレースするためのコマンドである。ダウンロードファイル7の中の3行目以降の各行のプログラムデータ4のそれぞれは、上位装置2とカードリーダ3との間の通信プロトコルに適合した規定のデータ形式およびデータ長に予め整形されており、かつ、ダウンロードコマンド19にセットされている。また、カードリーダ3Aに対応するプログラムデータ4を含むダウンロードファイル7Aの中の3行目のプログラムデータ4には、カードリーダ3Aに記憶されているプログラムデータを外部記憶部6に記憶されるダウンロードファイル7Aのプログラムデータ4に書き換えることを書き換え制御部9に許可させるための書き換え許可データ22が記述されている。一方、カードリーダ3Bに対応するプログラムデータ4を含むダウンロードファイル7Bの中の3行目のプログラムデータ4には、この書き換え許可データ22が記述されていない。なお、書き換え許可データ22は、暗号化された暗号文によってプログラムデータ4の中に記述されても良いし、暗号化されていない平文によってプログラムデータ4の中に記述されても良い。上述のように、上位装置2には、カードリーダ3Aとカードリーダ3Bとが接続可能となっている。また、外部記憶部6には、カードリーダ3Aに対応するプログラムデータ4を含むダウンロードファイル7A、または、カードリーダ3Bに対応するプログラムデータ4を含むダウンロードファイル7Bが記憶されている。そのため、上位装置2に接続されるカードリーダ3と上位装置2に記憶されるダウンロードファイル7との組合せとして、図3に示す4つのパターンが考えられる。すなわち、図3Aに示すように、上位装置2にカードリーダ3Aが接続され、外部記憶部6にダウンロードファイル7Aが記憶されるパターンと、図3Bに示すように、上位装置2にカードリーダ3Aが接続され、外部記憶部6にダウンロードファイル7Bが記憶されるパターンと、図3Cに示すように、上位装置2にカードリーダ3Bが接続され、外部記憶部6にダウンロードファイル7Aが記憶されるパターンと、図3Dに示すように、上位装置2にカードリーダ3Bが接続され、外部記憶部6にダウンロードファイル7Bが記憶されるパターンとの4つのパターンが考えられる。なお、外部記憶部6にダウンロードファイル7Aが記憶されている場合、ダウンロードファイル7Aに含まれるプログラムデータ4のレビジョンは、たとえば、図3A、Cに示すように、Rev.Bである。また、外部記憶部6にダウンロードファイル7Bが記憶されている場合、ダウンロードファイル7Bに含まれるプログラムデータ4のレビジョンは、たとえば、図3B、Dに示すように、Rev.bである。また、カードリーダ3Aのファームウェア格納部10に記憶されているプログラムデータのレビジョンは、たとえば、図3A、Bに示すように、Rev.Aであり、カードリーダ3Bのファームウェア格納部15に記憶されているプログラムデータのレビジョンは、たとえば、図3C、Dに示すように、Rev.aである。また、本形態では、カードリーダ3Aに対応するプログラムデータ4がカードリーダ3Bにダウンロードされた場合であっても、カードリーダ3Bは、正常に動作する。一方、カードリーダ3Bに対応するプログラムデータ4がカードリーダ3Aにダウンロードされると、カードリーダ3Aは、正常に動作しなくなる。ファームウェアのダウンロード方法:上位装置での処理図4は、図1に示す上位装置2での、ファームウェアのダウンロード時の処理フローの一例を示すフローチャートである。上位装置2からカードリーダ3へプログラムデータ4をダウンロードする際には、まず、ダウンロード制御部5は、ダウンロードファイル7の1行目を読み込んで、レビジョン情報17を読み取りステップS1、カードリーダ3に対してレビジョン取得コマンドを発行するステップS2。その後、ダウンロード制御部5は、ダウンロードファイル7から読み取ったレビジョン情報17と、レビジョン取得コマンドに対するカードリーダ3からの応答とを比較するステップS3。すなわち、ステップS3では、上位装置2に具体的には、外部記憶部6に記憶されているダウンロードファイル7に含まれるプログラムデータ4のレビジョンと、ファームウェア格納部10、15に記憶されているプログラムデータのレビジョンとを比較する。ステップS3で、上位装置2に記憶されているダウンロードファイル7に含まれるプログラムデータ4のレビジョンと、ファームウェア格納部10、15に記憶されているプログラムデータのレビジョンとが一致しない場合にはステップS3でNoの場合には、ダウンロード制御部5は、ダウンロード処理を実行するべく、カードリーダ3に対して初期化コマンドを発行するステップS4。すなわち、図3Aに示すように、上位装置2具体的には、外部記憶部6に記憶されているダウンロードファイル7Aに含まれるプログラムデータ4のレビジョンがRev.Bであり、ファームウェア格納部10に記憶されているプログラムデータのレビジョンがRev.Aである場合、図3Bに示すように、上位装置2に記憶されているダウンロードファイル7Bに含まれるプログラムデータ4のレビジョンがRev.bであり、ファームウェア格納部10に記憶されているプログラムデータのレビジョンがRev.Aである場合、図3Cに示すように、上位装置2に記憶されているダウンロードファイル7Aに含まれるプログラムデータ4のレビジョンがRev.Bであり、ファームウェア格納部15に記憶されているプログラムデータのレビジョンがRev.aである場合、図3Dに示すように、上位装置2に記憶されているダウンロードファイル7Bに含まれるプログラムデータ4のレビジョンがRev.bであり、ファームウェア格納部15に記憶されているプログラムデータのレビジョンがRev.aである場合等には、上位装置2に記憶されているダウンロードファイル7に含まれるプログラムデータ4のレビジョンと、ファームウェア格納部10、15に記憶されているプログラムデータのレビジョンとが一致しないため、ステップS4で、ダウンロード制御部5は、カードリーダ3に対して初期化コマンドを発行する。その後、ダウンロード制御部5は、この初期化コマンドに対するカードリーダ3のレスポンスから、カードリーダ3がダウンロードモードプログラムデータ4のダウンロードが可能な状態であるか否かを判断するステップS5。ステップS5で、カードリーダ3がダウンロードモードでなければステップS5でNoの場合には、ダウンロード制御部5は、カードリーダ3に対してモード切替コマンドを発行してステップS6、カードリーダ3をダウンロードモードに遷移させてからステップS4へ戻る。一方、ステップS5で、カードリーダ3がダウンロードモードであればステップS5でYesの場合には、ダウンロード制御部5は、ダウンロードファイル7の2行目以降を1行毎に読み込みステップS7、読み込んだ1行が最終行EOF20であるか否かを判断するステップS8。ステップS8で、読み込んだ1行が最終行でなければステップS8でNoの場合には、ダウンロード制御部5は、この読み込んだダウンロードファイル7の1行をコマンドとしてカードリーダ3に対して発行する。たとえば、読み込んだ1行がダウンロードファイル7の2行目であれば、イレースコマンド18がカードリーダ3に対して発行される。また、読み込んだ1行がダウンロードファイル7の3行目以降であれば、ダウンロードコマンド19が整形されたプログラムデータ4とともにカードリーダ3に対して発行される。その後、ダウンロード制御部5は、カードリーダ3の応答に基づいてコマンドが正常に実行されたか否かを判断するステップS10。カードリーダ3の応答が正常応答であればステップS10でYesの場合には、ステップS7へ戻り、ダウンロードファイル7の次の行を読み込む。一方、カードリーダ3の応答が異常応答であればステップS10でNoの場合には、ダウンロード制御部5は、プログラムデータ4のダウンロード失敗と判断して、ダウンロード処理を終了する。なお、この場合には、ダウンロードシステム1がダウンするダウンロードシステム1の動作が停止してしまうことがある。また、ステップS8で、ダウンロードファイル7から読み込んだ1行が最終行となるとステップS8でYesの場合、プログラムデータ4のダウンロードは正常終了となる。また、ステップS3で、上位装置2に記憶されているプログラムデータ4のレビジョンと、ファームウェア格納部10、15に記憶されているプログラムデータのレビジョンとが一致している場合にはステップS3でYesの場合には、ダウンロード制御部5は、プログラムデータ4のダウンロードは不要と判断して、ダウンロード処理を終了する。たとえば、図3Aにおいて、上位装置2に記憶されているプログラムデータ4のレビジョンがRev.Aである場合には、上位装置2に記憶されているプログラムデータ4のレビジョンと、ファームウェア格納部10に記憶されているプログラムデータのレビジョンとが一致しているため、ダウンロード制御部5は、ダウンロード処理を終了する。ファームウェアのダウンロード方法:カードリーダでの処理図5は、図1に示すカードリーダ3での、ファームウェアのダウンロード時の処理フローの一例を示すフローチャートである。図3C、Dに示すように、上位装置2にカードリーダ3Bが接続されている場合には、ダウンロードファイル7A、7Bのいずれが上位装置2に記憶されている場合であっても、カードリーダ3Bでは、ファームウェアのダウンロード時に、上述した特許文献1に記載されたカードリーダの処理と同様の処理が行われる。すなわち、上述のステップS7で読み込まれた1行がダウンロードファイル7の2行目であれば、ステップS9で発行されるイレースコマンド18に基づいて、カードリーダ制御部13は、イレースコマンド18を実行する。具体的には、書き換え制御部14が、ファームウェア格納部15の中の指定された領域を消去する。より具体的には、書き換え制御部14が、プログラムデータ4に対応するファームウェア格納部15内のプログラムデータを消去する。また、カードリーダ制御部13は、イレースコマンド18が正常に実行されたとの正常応答をダウンロード制御部5へ返す。また、ステップS7で読み込まれた1行がダウンロードファイル7の3行目以降であれば、ステップS9で発行されるダウンロードコマンド19に基づいて、カードリーダ制御部13は、ダウンロードコマンド19を実行する。具体的には、書き換え制御部14が、上位装置2から送られてくるプログラムデータ4を、ファームウェア格納部15の中の指定された領域に格納記憶する。すなわち、書き換え制御部14が、上位装置2から送られてくるプログラムデータ4を、ファームウェア格納部15に書き込む。また、書き換え制御部14は、ダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返す。一方、図3A、Bに示すように、上位装置2にカードリーダ3Aが接続されている場合には、カードリーダ3Aでは、ファームウェアのダウンロード時に、上述した特許文献1に記載されたカードリーダの処理と異なる処理が行われる。具体的には、カードリーダ3Aでは、図5に示すフローにしたがって、以下のように処理が行われる。上述のステップS7で読み込まれた1行がダウンロードファイル7の2行目であって、ステップS9で発行されたダウンロードファイル7の2行目すなわち、イレースコマンド18を書き換え制御部9が受信するとステップS21、書き換え制御部9は、この2行目のイレースコマンド18を実行せずに、イレースコマンド18が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS22。すなわち、ステップS22では、書き換え制御部9が、ファームウェア格納部10に記憶されているプログラムデータを消去することなく、イレースコマンド18が正常に実行されたとの正常応答をダウンロード制御部5へ返す。その後、ステップS9で発行されたダウンロードファイル7の3行目すなわち、ダウンロードコマンド19およびプログラムデータ4を書き換え制御部9が受信するとステップS23、書き換え制御部9は、3行目のプログラムデータ4に書き換え許可データ22が記述されているか否かを判断するステップS24。すなわち、ステップS24において、書き換え制御部9は、上位装置2に記憶されているプログラムデータ4がカードリーダ3Aに対応するプログラムデータ4であるか否かを判別する。図3Aに示すように、上位装置2にダウンロードファイル7Aが記憶されており、ステップS24で、3行目のプログラムデータ4に書き換え許可データ22が記述されている場合すなわち、ダウンロードファイル7に書き換え許可データ22が含まれている場合、ステップS24でYesの場合には、書き換え制御部9は、ダウンロードファイル7Aの2行目のコマンドおよび3行目のコマンドすなわち、イレースコマンド18およびダウンロードコマンド19を実行し、ダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS25。具体的には、ステップS25で、書き換え制御部9が、ファームウェア格納部10に記憶されているプログラムデータを消去し、かつ、上位装置2から送られてくるプログラムデータ4をファームウェア格納部10の中の指定された領域に格納記憶して、正常応答をダウンロード制御部5へ返す。その後、書き換え制御部9は、ダウンロードファイル7Aの4行目以降を順次、受信しステップS26、受信した行のダウンロードコマンド19を順次、実行してすなわち、上位装置2から送られてくるプログラムデータ4をファームウェア格納部10の中の指定された領域に格納記憶して、ダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS27。一方、図3Bに示すように、上位装置2にダウンロードファイル7Bが記憶されており、ステップS24で、3行目のプログラムデータ4に書き換え許可データ22が記述されていない場合すなわち、ダウンロードファイル7に書き換え許可データ22が含まれていない場合、ステップS24でNoの場合には、書き換え制御部9は、ダウンロードファイル7Bの3行目のコマンドすなわち、ダウンロードコマンド19を実行せずに、ダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS28。具体的には、ステップS28では、書き換え制御部9が、上位装置2から送られてくるプログラムデータ4をファームウェア格納部10に格納記憶せずに、正常応答をダウンロード制御部5へ返す。その後、書き換え制御部9は、ダウンロードファイル7Bの4行目以降を順次、受信しステップS29、受信した行のダウンロードコマンド19を実行せずに、ダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS30。本形態のステップS24は、書き換え許可データ22がダウンロードファイル7に含まれているか否かを判別する書き換え許可判別ステップである。また、本形態のステップS25、S27は、書き換え許可データ22がダウンロードファイル7に含まれている場合に、カードリーダ3Aに記憶されているプログラムデータを上位装置2から送られるプログラムデータ4に書き換えて、データ書換えの正常完了応答を上位装置2へ返す書き換えステップである。さらに、本形態のステップS28、S30は、書き換え許可データ22がダウンロードファイル7に含まれていない場合に、カードリーダ3Aに記憶されているプログラムデータを上位装置2から送られるプログラムデータ4に書き換えずに、データ書換えの正常完了応答を上位装置2へ返す擬似書き換えステップである。本形態の主な効果以上説明したように、本形態では、ダウンロードファイル7に書き換え許可データ22が含まれている場合には、カードリーダ3Aに記憶されているプログラムデータが上位装置2から送られてくるプログラムデータ4に書き換えられているが、ダウンロードファイル7に書き換え許可データ22が含まれていない場合には、カードリーダ3Aに記憶されているプログラムデータが上位装置2から送られてくるプログラムデータ4に書き換えられていない。すなわち、本形態では、カードリーダ3Aに対応するプログラムデータ4が上位装置2に記憶されている場合には、カードリーダ3Aに記憶されているプログラムデータが上位装置2から送られてくるプログラムデータ4に書き換えられているが、カードリーダ3Bに対応するプログラムデータ4が上位装置2に記憶されている場合には、カードリーダ3Aに記憶されているプログラムデータが上位装置2から送られてくるプログラムデータ4に書き換えられていない。そのため、本形態では、旧型のカードリーダ3Bに対応するプログラムデータ4が上位装置2から新型のカードリーダ3Aにダウンロードされるのを防止することができる。したがって、本形態では、旧型のカードリーダ3Bに対応するプログラムデータ4がカードリーダ3Aにダウンロードされて、カードリーダ3Aが正常に動作しなくなるといった不具合を回避することが可能になる。本形態では、ダウンロードファイル7に書き換え許可データ22が含まれておらず、カードリーダ3Aに記憶されているプログラムデータが上位装置2から送られるプログラムデータ4に書き換えられない場合であってもすなわち、イレースコマンド18およびダウンロードコマンド19を書き換え制御部9が実行しない場合であっても、書き換え制御部9は、データ書換えの正常完了応答を上位装置2へ返している。そのため、上位装置2からカードリーダ3Aへプログラムデータ4がダウンロードされなくても、上位装置2のダウンロード処理を正常に終了させることができる。したがって、本形態では、ダウンロードシステム1のダウンを回避することが可能になる。本形態では、上位装置2にカードリーダ3Bが接続されている場合、カードリーダ3Bは、ダウンロードファイル7に書き換え許可データ22が含まれるか否かを判別せずに、カードリーダ3Bに記憶されているプログラムデータを上位装置2から送られるプログラムデータ4に書き換えている。そのため、カードリーダ3Aに対応するプログラムデータ4が上位装置2に記憶されている場合には、このプログラムデータ4によって、カードリーダ3Bを動作させることができる。すなわち、本形態では、カードリーダ3Aに対応する1個のプログラムデータ4によって、カードリーダ3A、3Bを動作させることができる。また、カードリーダ3Bに対応するプログラムデータ4が上位装置2に記憶されている場合には、このプログラムデータ4は、カードリーダ3Bにはダウンロードされるが、カードリーダ3Aにはダウンロードされない。そのため、カードリーダ3Aに対応するプログラムデータによってカードリーダ3Aを動作させ、かつ、カードリーダ3Bに対応するプログラムデータによってカードリーダ3Bを動作させることができる。したがって、本形態では、上位装置2に記憶されているプログラムデータ4が1個であっても、カードリーダ3A、3Bを適切に動作させることが可能になる。このように、本形態では、上位装置2に記憶されているプログラムデータ4が1個であっても、カードリーダ3A、3Bを適切に動作させることが可能になるため、上位装置2にカードリーダ3Aが接続されるのか、あるいは、カードリーダ3Bが接続されるのかによって、上位装置2を変更する必要がなくなる。したがって、本形態では、ダウンロードシステム1を使用するユーザの利便性を高めることが可能になる。ダウンロードファイルおよびダウンロード方法の変形例図6は、本発明の他の実施の形態にかかるダウンロードファイル7のデータ構造の一例を示す概念図である。図7は、本発明の他の実施の形態にかかるカードリーダ3での、ファームウェアのダウンロード時の処理フローの一例を示すフローチャートである。上述した形態では、ダウンロードファイル7に、カードリーダ3に記憶されているプログラムデータを上位装置2に記憶されているプログラムデータ4に書き換えても良いか否かを判別するための書き換え照合コマンド23が含まれていないが、図6に示すように、ダウンロードファイル7に書き換え照合コマンド23が含まれていても良い。この場合には、たとえば、書き換え照合コマンド23に、カードリーダ3に記憶されているプログラムデータを外部記憶部6に記憶されるプログラムデータ4に書き換えることを書き換え制御部9、14に許可させるための書き換え許可データが付されている。また、ダウンロードファイル7Aの書き換え照合コマンド23に付される書き換え許可データと、ダウンロードファイル7Bの書き換え照合コマンド23に付される書き換え許可データとは異なっている。この変形例にかかるダウンロードファイル7では、図6に示すように、書き換え照合コマンド23は、ダウンロードファイル7の2行目に記述され、イレースコマンド18は、ダウンロードファイル7の3行目に記述され、ダウンロードコマンド19およびプログラムデータ4は、ダウンロードファイル7の4行目以降に記述されている。また、書き換え制御部9には、ダウンロードファイル7Aの書き換え照合コマンド23に付される書き換え許可データに一致する、または、この書き換え許可データに1対1で対応する許可データが記憶され、書き換え制御部14には、ダウンロードファイル7Bの書き換え照合コマンド23に付される書き換え許可データに一致する、または、この書き換え許可データに1対1で対応する許可データが記憶されている。この変形例では、図7に示すように、上述のステップS9で発行されたダウンロードファイル7の2行目すなわち、書き換え照合コマンド23を書き換え制御部9が受信するとステップS41、書き換え制御部9は、書き換え照合コマンド23に付された書き換え許可データが、書き換え制御部9に記憶される許可データと一致するかあるいは、この許可データと対応するか否かを判断するステップS42。すなわち、書き換え制御部9は、ステップS42において、書き換え照合が取れるか否かを判断する。上位装置2にダウンロードファイル7Aが記憶されており、ステップS42で、書き換え照合が取れる場合ステップS42でYesの場合には、書き換え制御部9は、書き換え照合が取れたとの正常応答をダウンロード制御部5へ返すステップS43。その後、書き換え制御部9は、ダウンロードファイル7Aの3行目以降を順次、受信しステップS44、受信した行のイレースコマンド18やダウンロードコマンド19を順次、実行して、イレースコマンド18やダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS45。一方、ステップS42で、書き換え照合が取れない場合ステップS42でNoの場合には、書き換え制御部9は、書き換え照合コマンド23に付された書き換え許可データが、ダウンロードファイル7Bの書き換え照合コマンド23に付された書き換え許可データであるのか、それとも、異なる機種のカードリーダ等のダウンロードファイルの書き換え照合コマンドに付された書き換え許可データであるのかを判断するステップS46。すなわち、ステップS46において、書き換え制御部9は、上位装置2に記憶されているプログラムデータが旧型のカードリーダ3Bに対応するものであるのか、それとも、異なる機種のカードリーダ等に対応するものであるのかを判断する。ステップS46で、上位装置2に記憶されているプログラムデータがカードリーダ3Bに対応するものである場合すなわち、上位装置2にダウンロードファイル7Bが記憶されている場合、ステップS46でYesの場合には、書き換え制御部9は、書き換え照合が取れていないにもかかわらず書き換え照合が取れたとの正常応答をダウンロード制御部5へ返すステップS47。その後、書き換え制御部9は、ダウンロードファイル7Bの3行目以降を順次、受信しステップS48、受信した行のイレースコマンド18やダウンロードコマンド19を実行せずに、イレースコマンド18やダウンロードコマンド19が正常に実行されたとの正常応答をダウンロード制御部5へ返すステップS49。また、ステップS46で、上位装置2に記憶されているプログラムデータが異なる機種のカードリーダ等に対応するものである場合ステップS46でNoの場合には、書き換え制御部9は、異常応答をダウンロード制御部5へ返すステップS50。異常応答を受信したダウンロード制御部5は、プログラムデータ4のダウンロード失敗と判断して、ダウンロード処理を終了する。この変形例においても、上述した形態と同様の効果を得ることができる。また、この変形例では、プログラムデータ4に書き換え許可データ22を含ませる必要がなくなるため、プログラムデータ4の構造を簡素化することが可能になる。なお、プログラムデータ4に書き換え許可データ22が含まれている場合には、ダウンロードファイル7に書き換え照合コマンド23が含まれていない場合や書き換え照合コマンド23をカードリーダ3Aが受け付けない場合であっても、ダウンロードファイル7に書き換え許可データが含まれているか否かを判別することが可能になる。なお、この変形例におけるステップS42は、カードリーダ3Aに記憶されているプログラムデータを上位装置2に記憶されているプログラムデータ4に書き換えることを書き換え制御部9に許可させるための書き換え許可データがダウンロードファイル7に含まれているか否かを判別する書き換え許可判別ステップである。また、ステップS45は、カードリーダ3Aに記憶されているプログラムデータを上位装置2に記憶されているプログラムデータ4に書き換えることを書き換え制御部9に許可させるための書き換え許可データがダウンロードファイル7に含まれている場合に、カードリーダ3Aに記憶されているプログラムデータを上位装置2から送られるプログラムデータ4に書き換えて、データ書換えの正常完了応答を上位装置2へ返す書き換えステップである。さらに、ステップS49は、カードリーダ3Aに記憶されているプログラムデータを上位装置2に記憶されているプログラムデータ4に書き換えることを書き換え制御部9に許可させるための書き換え許可データがダウンロードファイル7に含まれていない場合に、カードリーダ3Aに記憶されているプログラムデータを上位装置2から送られるプログラムデータ4に書き換えずに、データ書換えの正常完了応答を上位装置2へ返す擬似書き換えステップである。他の実施の形態上述した形態および変形例は、本発明の好適な形態の一例ではあるが、これに限定されるものではなく本発明の要旨を変更しない範囲において種々変形実施が可能である。上述した形態では、書き換え許可データ22は、ダウンロードファイル7Aの中の3行目のプログラムデータ4に記述されている。この他にもたとえば、書き換え許可データ22は、ダウンロードファイル7Aの中の4行目以降のn行目のプログラムデータ4に記述されても良い。この場合には、書き換え制御部9は、n行目のプログラムデータ4に書き換え許可データ22が記述されているか否かを判断した後に、2行目からn行目までのコマンドを実行して正常応答をダウンロード制御部5へ返すか、あるいは、2行目からn行目までのコマンドを実行せずに正常応答をダウンロード制御部5へ返す。上述した形態では、上位装置2に通信可能に接続される周辺装置、第2周辺装置は、カードリーダ3であるが、上位装置2に通信可能に接続される周辺装置、第2周辺装置は、カードプリンタ等のカードリーダ3以外の各種の装置であっても良い。