(57)【要約】【課題】  コマンドを分割してシリアル転送する際の処理効率を向上させることができる遊技機を提供する。【解決手段】  主制御基板２０は、払出制御基板７０に対する２バイトのコマンドを分割して生成する演算処理部２１０と、１バイトの記憶容量を有する送信バッファレジスタ２４０および送信シフトレジスタ２５０と、シリアル転送中でない場合にレジスタ間のコマンドの受け渡しを許可し、該コマンドを送信バッファレジスタ２４０からクリアするシリアル管理部２８０とを備え、演算処理部２１０は、分割したコマンドを、所定の間隔を空けて連続的に送信バッファレジスタ２４０への書き込みを行う。【選択図】  図３
2006068298.tif 000002
【特許請求の範囲】
【請求項１】
遊技の進行を制御する主制御基板と、該主制御基板からのコマンドに基づいて遊技に関連する所定の構成部を制御する下位制御基板とを備えた遊技機であって、
前記主制御基板および前記下位制御基板の一方の制御基板は、
当該制御基板における所定の制御処理を実現するために所定の間隔で割り込み処理を繰り返し実行し、該繰り返し実行される割り込み処理の一環として他方の制御基板に対する２バイト以上のコマンドを生成する送信側セントラルプロセッシングユニットと、
該生成されたコマンドを前記他方の制御基板へと１バイト単位でシリアル転送を実行する第１のシリアル通信ユニットと
を備え、
前記第１のシリアル通信ユニットは、
１バイトの記憶容量を有し、前記生成されたコマンドを前記送信側セントラルプロセッシングユニットから受け取り、該コマンドを記憶する第１のバッファレジスタと、
１バイトの記憶容量を有し、前記第１のバッファレジスタに記憶されたコマンドを受け取り、該コマンドをシリアルデータに変換するために記憶する第１のシフトレジスタと
を備え、
前記送信側セントラルプロセッシングユニットは、前記繰り返し実行される割り込み処理のうちの所定の１回の割り込み処理内に、前記第１のシリアル通信ユニットに対して、前記２バイト以上のコマンドのうちの２バイト分を１バイト毎に次々と引き渡し、
前記第１のシリアル通信ユニットは、前記所定の１回の割り込み処理内に、前記引き渡された２バイト分のコマンドのうち最初に引き渡された先頭コマンドを、前記第１のバッファレジスタ経由で前記第１のシフトレジスタに格納すると共に、該先頭コマンドの次に引き渡された後続コマンドを、前記第１のバッファレジスタに格納する
遊技機。
【請求項２】
請求項１記載の遊技機であって、
前記他方の制御基板は、
前記一方の制御基板側からシリアル転送されたコマンドを受信する第２のシリアル通信ユニットと、
該受信されたコマンドに基づいて所定の制御処理を実行する受信側セントラルプロセッシングユニットと
を備え、
前記第２のシリアル通信ユニットは、
１バイトの記憶容量を有し、前記一方の制御基板側からシリアル転送されたコマンドをパラレルデータに変換し、該コマンドを記憶する第２のシフトレジスタと、
１バイトの記憶容量を有し、前記第２のシフトレジスタに記憶されたコマンドを受け取り、該コマンドを前記受信側セントラルプロセッシングユニットに引き渡すために記憶する第２のバッファレジスタと、
前記第２のバッファレジスタにコマンドが記憶されている場合に、前記第２のシフトレジスタから前記第２のバッファレジスタへのコマンドの受け渡しを禁止する受渡禁止手段と、
前記受信側セントラルプロセッシングユニットからの指示に基づいて、前記第２のバッファレジスタに記憶されたコマンドを消去するコマンド消去手段と
を備えた
遊技機。
【請求項３】
前記受信側セントラルプロセッシングユニットは、前記第２のバッファレジスタに記憶されたコマンドを複数回読み取り、該複数回読み取ったコマンド同士が一致する場合に、該コマンドを正常に受信したと判断する一致検証手段を備えた請求項２記載の遊技機。
【請求項４】
前記受信側セントラルプロセッシングユニットは、前記一致検証手段によってコマンドが複数回読み取られた後に、該コマンドの前記第２のバッファレジスタからの消去を、前記第２のシリアル通信ユニットに指示する消去指示手段を備えた請求項３記載の遊技機。
【請求項５】
前記受信側セントラルプロセッシングユニットは、前記一致検証手段によって前記複数回読み取ったコマンド同士が一致しないと判断された場合に、該コマンドの再送を前記一方の基板側に要求する再送要求手段を備えた請求項３または４記載の遊技機。
【請求項６】
請求項２ないし５のいずれか記載の遊技機であって、
前記送信側セントラルプロセッシングユニットは、前記所定の１回の割り込み処理内に引き渡す２バイト分のコマンドのうちの一方を、該コマンドの他方との相関を持たせて生成するコマンド相関手段を備え、
前記受信側セントラルプロセッシングユニットは、前記相関を持たせて生成された２つのコマンド同士を照合することによって、該２つのコマンドが正常であるか否かを判断する相関検証手段を備えた
遊技機。
【請求項７】
前記２つのコマンド同士の相関は、互いに対応するビットが反転した関係である請求項６記載の遊技機。
【請求項８】
前記他方の制御基板は、前記一方の制御基板からシリアル転送されたコマンドを正常に受信したことを伝える応答信号を、該一方の制御基板に対して送信する応答送信部を備えた請求項１ないし７のいずれか記載の遊技機。
【請求項９】
前記送信側セントラルプロセッシングユニットは、前記２バイト分のコマンドを前記第１のシリアル通信ユニットに引き渡してから所定の期間内に前記他方の制御基板から前記応答信号の送信がない場合に、該他方の制御基板に対して動作状態の報告を指示する動作確認指示手段を備えた請求項８記載の遊技機。
【請求項１０】
前記下位制御基板は、遊技球または遊技コインの払出を制御する払出制御基板である請求項１ないし９のいずれか記載の遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊技機に関するものである。
【背景技術】
【０００２】
従来、遊技の進行を制御する主制御基板と、該主制御基板からのコマンドに基づいて遊技に関連する所定の構成部を制御する下位制御基板とを備えた遊技機においては、信号線やコネクタの削減などを目的として、制御基板間のコマンドの転送を、シリアル転送によって行うことが提案されている。制御基板間のシリアル転送は、パラレルデータとシリアルデータとの間の変換を行うシリアル通信ユニットを各制御基板に備えることによって実現される。
【０００３】
なお、遊技機では、各制御基板と種々の電子機器とが密集して配置され、また、遊技球と球通路との間や遊技球同士の摩擦などによって静電気が発生してしまうことがある。これらの要因による電気的ノイズに対してコマンド転送の信頼性を確保するため、制御基板間のコマンド転送の転送速度は、電気的ノイズに対する信頼性を確保可能な程度に設定されている。したがって、制御基板のＣＰＵによる演算処理速度に比べ、シリアル転送の転送速度は制限されている。
【０００４】
また、従来、制御基板間でシリアル転送されるコマンドのワード長が、シリアル通信ユニットによって取り扱い可能な容量を超える場合に、シリアル通信ユニットが取り扱い可能なワード長に、コマンドを分割してシリアル転送することも提案されている。下記特許文献１には、主制御基板と下位制御基板との間で、コマンドを分割してシリアル転送する遊技機が開示されている。
【０００５】
【特許文献１】特開２００３−１１１９４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された遊技機は、主制御基板のＣＰＵの演算処理速度と、シリアル転送の転送速度との処理速度の差を考慮した上で、分割されたコマンドの一方についてのシリアル転送が完了するのに十分な時間を置いて、分割されたコマンドの他方をシリアル通信ユニットのレジスタに格納しており、主制御基板のＣＰＵがコマンドのシリアル転送に関わる期間が長くなるため、主制御基板における他の制御処理の進行の阻害や、主制御基板で実行される制御プログラムの複雑化を招いてしまうという問題があった。
【０００７】
本発明は、上記した課題を踏まえ、コマンドを分割して１バイト単位でシリアル転送する場合における円滑な遊技制御の実現を図ることができる遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記した課題を解決するため、本発明の遊技機は、遊技の進行を制御する主制御基板と、該主制御基板からのコマンドに基づいて遊技に関連する所定の構成部を制御する下位制御基板とを備えた遊技機であって、前記主制御基板および前記下位制御基板の一方の制御基板は、当該制御基板における所定の制御処理を実現するために所定の間隔で割り込み処理を繰り返し実行し、該繰り返し実行される割り込み処理の一環として他方の制御基板に対する２バイト以上のコマンドを生成する送信側セントラルプロセッシングユニットと、該生成されたコマンドを前記他方の制御基板へと１バイト単位でシリアル転送を実行する第１のシリアル通信ユニットとを備え、前記第１のシリアル通信ユニットは、１バイトの記憶容量を有し、前記生成されたコマンドを前記送信側セントラルプロセッシングユニットから受け取り、該コマンドを記憶する第１のバッファレジスタと、１バイトの記憶容量を有し、前記第１のバッファレジスタに記憶されたコマンドを受け取り、該コマンドをシリアルデータに変換するために記憶する第１のシフトレジスタとを備え、前記送信側セントラルプロセッシングユニットは、前記繰り返し実行される割り込み処理のうちの所定の１回の割り込み処理内に、前記第１のシリアル通信ユニットに対して、前記２バイト以上のコマンドのうちの２バイト分を１バイト毎に次々と引き渡し、前記第１のシリアル通信ユニットは、前記所定の１回の割り込み処理内に、前記引き渡された２バイト分のコマンドのうち最初に引き渡された先頭コマンドを、前記第１のバッファレジスタ経由で前記第１のシフトレジスタに格納すると共に、該先頭コマンドの次に引き渡された後続コマンドを、前記第１のバッファレジスタに格納することを特徴とする。
【０００９】
本発明の遊技機によれば、主制御基板のＣＰＵが１回の割り込み処理内を行う間に、シリアル転送可能なコマンドを２バイト分、シリアル通信ユニットのレジスタに格納することができ、主制御基板のＣＰＵがコマンドのシリアル転送に関わる期間を短縮することができる。その結果、主制御基板における他の制御処理の進行の阻害や、主制御基板で実行される制御プログラムの複雑化を抑制することができる。したがって、コマンドを分割してシリアル転送する場合における円滑な遊技制御を実現することができる。なお、前記下位制御基板は、遊技球または遊技コインの払出を制御する払出制御基板であっても良い。
【００１０】
上記の構成を有する本発明の遊技機は、以下の態様を採ることもできる。前記第１のシリアル通信ユニットは、前記送信側セントラルプロセッシングユニットが複数回の前記割り込み処理を繰り返し実行する間に、前記引き渡された２つのコマンドのシリアル転送を完了することとしても良い。これによって、送信側セントラルプロセッシングユニットによる演算処理を阻害することなく、シリアル転送を実現することができる。例えば、前記送信側セントラルプロセッシングユニットは、数ミリ秒の間隔で前記割り込み処理を実行し、前記第１のシリアル通信ユニットは、１秒間あたり数キロビットの転送速度で前記シリアル転送を実行する場合であっても良い。
【００１１】
また、前記送信側セントラルプロセッシングユニットは、前記他方の制御基板に対する動作指示を規定した動作指示コマンドと、該動作指示コマンドが正常であるか否かを判断するためのチェックコマンドとを含む一群のコマンドを生成することとしても良い。これによって、コマンドを分割してシリアル転送する際のコマンドの信頼性を向上させることができる。
【００１２】
また、前記他方の制御基板は、前記一方の制御基板側からシリアル転送されたコマンドを受信する第２のシリアル通信ユニットと、該受信されたコマンドに基づいて所定の制御処理を実行する受信側セントラルプロセッシングユニットとを備え、前記第２のシリアル通信ユニットは、１バイトの記憶容量を有し、前記一方の制御基板側からシリアル転送されたコマンドをパラレルデータに変換し、該コマンドを記憶する第２のシフトレジスタと、１バイトの記憶容量を有し、前記第２のシフトレジスタに記憶されたコマンドを受け取り、該コマンドを前記受信側セントラルプロセッシングユニットに引き渡すために記憶する第２のバッファレジスタと、前記第２のバッファレジスタにコマンドが記憶されている場合に、前記第２のシフトレジスタから前記第２のバッファレジスタへのコマンドの受け渡しを禁止する受渡禁止手段と、前記受信側セントラルプロセッシングユニットからの指示に基づいて、前記第２のバッファレジスタに記憶されたコマンドを消去するコマンド消去手段とを備えたこととしても良い。これによって、他方の制御基板のＣＰＵ側の都合に応じて第２のバッファレジスタに記憶されているコマンドの消去を行うことができるため、２バイト単位で１バイト毎にシリアル転送されるコマンドに対して、他方の制御基板のＣＰＵによる２バイト単位での取り扱いの容易化を図ることができる。
【００１３】
さらに、前記受信側セントラルプロセッシングユニットは、前記第２のバッファレジスタに記憶されたコマンドを複数回読み取り、該複数回読み取ったコマンド同士が一致する場合に、該コマンドを正常に受信したと判断する一致検証手段を備えたとしても良い。これによって、第２のバッファレジスタから受信側セントラルプロセッシングユニットへのコマンドの受け渡しの際に、ノイズなどの影響によって書き換えられてしまった異常なコマンドに基づいて処理が行われてしまうことを防止することができる。この場合に、前記受信側セントラルプロセッシングユニットは、前記一致検証手段によってコマンドが複数回読み取られた後に、該コマンドの前記第２のバッファレジスタからの消去を、前記第２のシリアル通信ユニットに指示する消去指示手段を備えなければならない。これによって、コマンドを複数回読み取る前に、コマンドが消去されてしまうことを回避することができる。また、前記受信側セントラルプロセッシングユニットは、前記一致検証手段によって前記複数回読み取ったコマンド同士が一致しないと判断された場合に、該コマンドの再送を前記一方の基板側に要求する再送要求手段を備えたとしても良い。これによって、コマンドの再送を迅速に行うことができる。
【００１４】
また、前記送信側セントラルプロセッシングユニットは、前記所定の１回の割り込み処理内に引き渡す２バイト分のコマンドのうちの一方を、該コマンドの他方との相関を持たせて生成するコマンド相関手段を備え、前記受信側セントラルプロセッシングユニットは、前記相関を持たせて生成された２つのコマンド同士を照合することによって、該２つのコマンドが正常であるか否かを判断する相関検証手段を備えたとしても良い。これによって、一方の制御基板から他方の制御基板へのコマンド転送の際に、ノイズなどの影響によって書き換えられてしまった異常なコマンドに基づいて処理が行われてしまうことを防止することができる。例えば、前記２つのコマンド同士の相関は、互いに対応するビットが反転した関係であっても良い。
【００１５】
また、前記他方の制御基板は、前記一方の制御基板からシリアル転送されたコマンドを正常に受信したことを伝える応答信号を、該一方の制御基板に対して送信する応答送信部を備えたとしても良い。これによって、コマンドを転送した基板は、コマンドが正常に転送されたか否かを確認することができる。さらに、前記送信側セントラルプロセッシングユニットは、前記２バイト分のコマンドを前記第１のシリアル通信ユニットに引き渡してから所定の期間内に前記他方の制御基板から前記応答信号の送信がない場合に、該他方の制御基板に対して動作状態の報告を指示する動作確認指示手段を備えたとしても良い。これによって、コマンドを転送した基板は、コマンドが正常に転送されなかった理由が他の制御基板における異常動作に基づくものであるか否かを判断することができる。
【発明を実施するための最良の形態】
【００１６】
以上説明した本発明の構成および作用を一層明らかにするために、以下本発明を適用した遊技機について、次の順序で説明する。なお、本明細書において、信号名の先頭に「＃」が付されているものは、負論理であることを意味している。「ハイレベル」は２値信号の２つのレベルのうちの「１」レベルを意味し、「ローレベル」は「０」レベルを意味している。
【００１７】
目次
Ａ．第１の実施例
Ａ−（１）．パチンコ機１０の構成
Ａ−（２）．パチンコ機１０の動作
Ａ−（２−１）．主制御基板２０のコマンド送信
Ａ−（２−２）．払出制御基板７０のコマンド受信
Ｂ．第２の実施例
Ｂ−（１）．パチンコ機１０ｂの構成
Ｂ−（２）．パチンコ機１０ｂの動作
Ｂ−（２−１）．主制御基板２０ｂのコマンド送信
Ｂ−（２−２）．払出制御基板７０ｂのコマンド受信
Ｃ．その他の実施形態
【００１８】
Ａ．第１の実施例：
Ａ−（１）．パチンコ機１０の構成：
本発明の実施例の１つであるパチンコ機１０の構成について説明する。図１は、パチンコ機１０の全体構成を示す正面図である。図１に示したように、パチンコ機１０は、パチンコ店の島設備等に固定される外枠１１、外枠１１に嵌め込まれる内枠１２、内枠１２の中央上寄りに配置され遊技球による遊技が行われる遊技板１３、遊技板１３の前面に配置され中央部にガラス板を有するガラス枠１４、遊技者による遊技板１３への遊技球の発射の指示を受け付けるハンドル１５、プリペイドカードによる遊技球の貸し出しを受け付けるカードユニット９０などを備える。
【００１９】
遊技板１３の中央部には、液晶ディスプレイ（Liquid Crystal Display、以下、ＬＣＤという）３５が設けられ、このＬＣＤ３５の下方には、遊技球の入賞を受け付ける入賞口６１が設けられている。この入賞口６１は、入賞した遊技球を検知する遊技球センサ６５、所定の場合に遊技球の導入経路を拡縮する遊技板駆動部６６を備える。パチンコ機１０は、発光ダイオード（Light Emitting Diode、ＬＥＤ）有する電飾５５，５６，５７，５８，５９を備える。電飾５５，５６は遊技板１３の左右の端にそれぞれ設けられ、電飾５７はＬＣＤ３５の上部に設けられ、電飾５８，５９は、ガラス枠１４の上部の左右にそれぞれ設けられている。内枠１２の正面中央には、音声を出力するスピーカ４５が内蔵されている。
【００２０】
図２は、パチンコ機１０の電気的な概略構成を示すブロック図である。パチンコ機１０は、遊技の進行を制御する主制御基板２０と、遊技球の払い出しを行う払出駆動部７５を制御する払出制御基板７０と、ＬＣＤ３５やスピーカ４５，電飾５５〜５９を用いた遊技進行に応じた演出を制御するサブ制御基板４０と、ＬＣＤ３５における動画像表示を制御する図柄制御基板３０とを備える。
【００２１】
主制御基板２０および払出制御基板７０，サブ制御基板４０，図柄制御基板３０の各基板は、種々の演算処理を行うセントラルプロセッシングユニット（Central Processing Unit、以下、ＣＰＵという），ＣＰＵの演算処理を規定したプログラムを予め記憶するリードオンリメモリ（Read Only Memory、以下、ＲＯＭという），ＣＰＵが取り扱うデータを一時的に記憶するランダムアクセスメモリ（Random Access Memory、以下、ＲＡＭという）などの各基板に応じた電子部品が実装された回路基板である。これら各基板および払出駆動部７５は、図１に示した内枠１２の裏面（図示しない）に設けられている。
【００２２】
主制御基板２０と払出制御基板７０との間では、種々のコマンドがシリアル転送によって送信される。コマンドを正常に受信した基板は、コマンドを送信した基板に対して、正常にコマンドを受け取ったことを伝えるＡＣＫ（Acknowledge）信号を送信する。主制御基板２０から払出制御基板７０に対する主なコマンドとしては、遊技球の払い出しに関するコマンドや、払出制御基板７０に動作状態の報告を指示するコマンドがある。遊技球の払い出しに関するコマンドとしては、例えば、遊技球の払い出し個数を指定するコマンドの他、遊技球の払い出しの開始を指示するコマンドや、遊技球の払い出しの停止を指示するコマンドなどが考えられる。払出制御基板７０から主制御基板２０に対する主なコマンドとしては、払出制御基板７０の動作状態を伝えるコマンドがある。なお、主制御基板２０および払出制御基板７０の電気的な構成の詳細については後述する。
【００２３】
主制御基板２０からサブ制御基板４０に対してや、サブ制御基板４０から図柄制御基板３０に対しては、それぞれ種々のコマンドがパラレル転送によって送信される。主制御基板２０からサブ制御基板４０に対する主なコマンドとしては、いわゆる「大当たり」や「はずれ」などの遊技に関する基本的な演出を指示するコマンドがある。サブ制御基板４０から図柄制御基板３０に対する主なコマンドとしては、主制御基板２０からのコマンドに基づくＬＣＤ３５における動画像の表示態様を指示するコマンドがある。
【００２４】
図３は、主制御基板２０および払出制御基板７０の電気的な構成の詳細を示すブロック図である。主制御基板２０は、主制御基板２０における種々の演算処理を行うＣＰＵとして、外部とのシリアル通信機能およびパラレル通信機能を有する主ＣＰＵ２００を備える。主ＣＰＵ２００には、演算処理を行う演算処理部２１０と、外部とのシリアル通信を行うシリアル通信ユニットとしてのシリアルＩＦ部２２０と、外部とのパラレル通信を行うパラレルＩＦ部２３０とが回路構成されている。払出制御基板７０とのコマンドのやり取りは、シリアルＩＦ部２２０を介して行われ、払出制御基板７０とのＡＣＫ信号のやり取りは、パラレルＩＦ部２３０を介して行われる。
【００２５】
シリアルＩＦ部２２０は、演算処理部２１０からパラレルデータＴＤａを受け取り、該データを記憶する送信バッファレジスタ２４０と、送信バッファレジスタ２４０に記憶されたデータを受け取り、該データをシリアルデータＤａｂに変換して払出制御基板７０にシリアル転送する送信シフトレジスタ２５０と、払出制御基板７０からシリアルデータＤｂａを受け取り、該データを記憶する受信シフトレジスタ２６０と、受信シフトレジスタ２６０に記憶されたデータを受け取り、該データを演算処理部２１０によってパラレルデータＲＤａとして読み出し可能に記憶する受信バッファレジスタ２７０と、シリアルＩＦ部２２０における各部の動作状態を管理するシリアル管理部２８０とを備え、これらを１チップに集積して構成されている。送信バッファレジスタ２４０および送信シフトレジスタ２５０，受信シフトレジスタ２６０，受信バッファレジスタ２７０は、それぞれ１バイトの記憶容量を有するレジスタである。
【００２６】
シリアル管理部２８０は、送信シフトレジスタ２５０および送信バッファレジスタ２４０に関して、送信シフトレジスタ２５０がシリアル転送中でない場合に、送信バッファレジスタ２４０から送信シフトレジスタ２５０へのデータの受け渡しを許可し、該受け渡し後に、該データを送信バッファレジスタ２４０から消去するように回路構成されている。
【００２７】
シリアル管理部２８０は、受信シフトレジスタ２６０および受信バッファレジスタ２７０に関して、受信バッファレジスタ２７０にデータが記憶されていない場合に、受信シフトレジスタ２６０から受信バッファレジスタ２７０へのデータの受け渡しを許可し、演算処理部２１０が受信バッファレジスタ２７０からパラレルデータＲＤａを読み出した後に、受信バッファレジスタ２７０からデータを消去するように回路構成されている。
【００２８】
なお、シリアルＩＦ部２２０によるシリアル転送の転送レートは、主ＣＰＵ２００を動作させるためのクロック信号を分周した信号に基づいて決定される。この転送レートを決定するクロック信号の分周比は、シリアルＩＦ部２２０が有するレジスタ（図示しない）の値によって設定することができる。
【００２９】
演算処理部２１０は、送信バッファレジスタ２４０に対して書き込み信号＃ＷＲａを立ち下げることによって、送信バッファレジスタ２４０へのパラレルデータＴＤａの書き込みを行い、受信バッファレジスタ２７０に対して読み出し信号＃ＲＥａを立ち下げることによって、受信バッファレジスタ２７０からのパラレルデータＲＤａの読み出しを行う。
【００３０】
演算処理部２１０は、シリアルＩＦ部２２０における種々の状態を示す信号を、シリアル管理部２８０から受ける。演算処理部２１０がシリアル管理部２８０から受ける信号としては、送信バッファレジスタ２４０がクリアされている際にハイレベルとされる送信バッファ空き信号ＴＥａと、送信シフトレジスタ２５０がシリアル転送中である際にハイレベルとされるシリアル転送中信号ＴＣａと、受信バッファレジスタ２７０にデータが記憶されている際にハイレベルとされる受信データ有り信号ＤＦａとがある。
【００３１】
図３に示すように、払出制御基板７０は、払出制御基板７０における種々の演算処理を行う払出ＣＰＵ７１０と、外部とのシリアル通信を行う回路が形成されたシリアルＩＦチップ７２０と、外部とのパラレル通信を行う回路が形成されたパラレルＩＦチップ７３０とを備える。主制御基板２０とのコマンドのやり取りは、シリアルＩＦチップ７２０を介して行われ、主制御基板２０とのＡＣＫ信号のやり取りは、パラレルＩＦチップ７３０を介して行われる。
【００３２】
シリアルＩＦチップ７２０は、払出ＣＰＵ７１０からパラレルデータＴＤｂを受け取り、該データを記憶する送信バッファレジスタ７４０と、送信バッファレジスタ７４０に記憶されたデータを受け取り、該データをシリアルデータＤｂａに変換して主制御基板２０にシリアル転送する送信シフトレジスタ７５０と、主制御基板２０からシリアルデータＤａｂを受け取り、該データを記憶する受信シフトレジスタ７６０と、受信シフトレジスタ７６０に記憶されたデータを受け取り、該データを払出ＣＰＵ７１０によってパラレルデータＲＤｂとして読み出し可能に記憶する受信バッファレジスタ７７０と、シリアルＩＦチップ７２０における各部の動作状態を管理するシリアル管理部７８０とを備え、これらを１チップに集積して構成されている。送信バッファレジスタ７４０および送信シフトレジスタ７５０，受信シフトレジスタ７６０，受信バッファレジスタ７７０は、それぞれ１バイトの記憶容量を有するレジスタである。
【００３３】
シリアル管理部７８０は、送信シフトレジスタ７５０および送信バッファレジスタ７４０に関して、送信シフトレジスタ７５０がシリアル転送中でない場合に、送信バッファレジスタ７４０から送信シフトレジスタ７５０へのデータの受け渡しを許可し、該受け渡し後に、該データを送信バッファレジスタ７４０から消去するように回路構成されている。
【００３４】
シリアル管理部７８０は、受信シフトレジスタ７６０および受信バッファレジスタ７７０に関して、受信バッファレジスタ７７０にデータが記憶されていない場合に、受信シフトレジスタ７６０から受信バッファレジスタ７７０へのデータの受け渡しを許可し、払出ＣＰＵ７１０が受信バッファレジスタ７７０からパラレルデータＲＤｂを読み出した後に、受信バッファレジスタ７７０からデータを消去するように回路構成されている。
【００３５】
なお、シリアルＩＦチップ７２０がシリアル転送されたコマンドをサンプリングするタイミングは、主制御基板２０の主ＣＰＵ２００を動作させるためのクロック信号を分周したサンプリングクロックに基づいて決定される。このサンプリングクロックを決定するクロック信号の分周比は、シリアルＩＦチップ７２０が有するレジスタ（図示しない）の値によって設定することができる。
【００３６】
払出ＣＰＵ７１０は、送信バッファレジスタ７４０に対して書き込み信号＃ＷＲｂを立ち下げることによって、送信バッファレジスタ７４０へのパラレルデータＴＤｂの書き込みを行い、受信バッファレジスタ７７０に対して読み出し信号＃ＲＥｂを立ち立ち下げることによって、受信バッファレジスタ７７０からのパラレルデータＲＤｂの読み出しを行う。
【００３７】
払出ＣＰＵ７１０は、シリアルＩＦチップ７２０における種々の状態を示す信号を、シリアル管理部７８０から受ける。払出ＣＰＵ７１０がシリアル管理部７８０から受ける信号としては、送信バッファレジスタ７４０がクリアされている際にハイレベルとされる送信バッファ空き信号ＴＥｂと、送信シフトレジスタ７５０がシリアル転送中である際にハイレベルとされるシリアル転送中信号ＴＣｂと、受信バッファレジスタ７７０にデータが記憶されている際にハイレベルとされる受信データ有り信号ＤＦｂとがある。
【００３８】
Ａ−（２）．パチンコ機１０の動作：
パチンコ機１０の動作のひとつとして、主制御基板２０と払出制御基板７０との間におけるコマンド転送の際の動作について説明する。本実施例のパチンコ機１０は、主制御基板２０から払出制御基板７０へのコマンド転送と、払出制御基板７０から主制御基板２０へのコマンド転送を行うことが可能である。以下の説明では、主制御基板２０から払出制御基板７０へのコマンド転送の際の動作について詳細に説明する。
【００３９】
Ａ−（２−１）．主制御基板２０のコマンド送信：
払出制御基板７０に対してコマンドを送信する主制御基板２０の動作について説明する。図４は、主制御基板２０の演算処理部２１０が実行するコマンド送信処理を示すフローチャートである。主制御基板２０の演算処理部２１０は、遊技の進行を制御する処理を実現するために所定の間隔（本実施例では、４ミリセカンド（以下、ｍｓと表記））で定時割り込み処理を繰り返し実行し、この繰り返し実行される定時割り込み処理の一環として、払出制御基板７０に対してコマンドを送信する場合に、図４に示したコマンド送信処理を実行する。
【００４０】
演算処理部２１０は、図４に示したコマンド送信処理を開始すると、払出制御基板７０に対するコマンドを生成する（ステップＳ１１０）。本実施例では、払出制御基板７０に対するコマンドは、シリアルＩＦ部２２０の各レジスタの記憶容量である１バイトよりも大きな２バイトのコマンドである。
【００４１】
コマンドを生成した後（ステップＳ１１０）、「送信バッファ空き信号ＴＥａがハイレベル」かつ「シリアル転送中信号ＴＣａがローレベル」であるか否か、すなわち、「送信バッファレジスタ２４０にデータが記憶されていない場合」かつ「送信シフトレジスタ２５０がシリアル転送中でない場合」であるか否かを判断する（ステップＳ１２０）。
【００４２】
「送信バッファ空き信号ＴＥａがハイレベル」かつ「シリアル転送中信号ＴＣａがローレベル」である場合（ステップＳ１２０）には、生成したコマンドの２バイトのうち上位１バイトである１バイト目を、送信バッファレジスタ２４０に書き込む（ステップＳ１３０）。その後、予め設定された書込待機期間Ｌｗａの待機を行った後（ステップＳ１４０）、生成したコマンドの残りの下位１バイトである２バイト目を、送信バッファレジスタ２４０に書き込み（ステップＳ１５０）、コマンド送信処理を終了する。
【００４３】
ここで、書込待機期間Ｌｗａは、送信バッファレジスタ２４０へのコマンドの１バイト目の書き込みから、この１バイト目が送信シフトレジスタ２５０へと受け渡しされるまでの期間である送信レジスタ引渡期間Ｌｂｓよりも長い期間であり、その定時割り込み処理の終了までに２バイト目の書き込み処理（図４のステップＳ１５０）を実行可能な時間を残す期間であり、次の定時割り込み処理の開始まで長引くような期間ではない。また、書込待機期間Ｌｗａは、コマンドの１バイト目のシリアル転送が完了するまでの期間であるシリアル転送期間Ｌｓｃよりも短い期間であり、定時割り込み処理の間隔である４ｍｓよりも短い期間である。本実施例では、書込待機期間Ｌｗａは、２．５マイクロセカンド（以下、μｓと表記）に設定されている。なお、本実施例のシリアルＩＦ部２２０のハードウェア仕様による送信レジスタ引渡期間Ｌｂｓは、約１．２５μｓである。また、２バイト目の書き込み処理（図４のステップＳ１５０）に要する演算処理部２１０の演算処理時間が、シリアルＩＦ部２２０の送信レジスタ引渡期間Ｌｂｓ以上である場合には、図４に示したコマンド待機処理のソフトウェアによる待機処理（ステップＳ１４０）は不要である。
【００４４】
図５は、コマンド送信処理が実行される際の主制御基板２０における各信号の様子を示すタイムチャートである。上述したコマンド送信処理にて、「送信バッファ空き信号ＴＥａがハイレベル」かつ「シリアル転送中信号ＴＣａがローレベル」であると判断されると（図４中のステップＳ１２０）、パラレルデータＴＤａにコマンドの１バイト目の出力が開始される（タイミングｔａ１）。その後、書き込み信号＃ＷＲａの立ち下がりによって、送信バッファレジスタ２４０にコマンドの１バイト目が書き込まれる（タイミングｔａ２，図４中のステップＳ１２０）。
【００４５】
送信バッファレジスタ２４０は、書き込まれたコマンドの１バイト目を送信シフトレジスタ２５０に引き渡し、この引き渡しが完了するとシリアル管理部２８０によってクリアされる。送信シフトレジスタ２５０は、送信バッファレジスタ２４０から受け取ったコマンドの１バイト目をシリアルデータＤａｂに出力する。シリアル転送中のシリアルデータＤａｂには、スタートビットＳＴに続いて、コマンドの１ビット目Ｄ０から８ビット目Ｄ７までの各ビットが続き、最後にストップビットＳＰが出力される。このように、コマンドの１バイト目のシリアル転送が開始されると、シリアル転送中信号ＴＣａはハイレベルとなる（タイミングｔａ３）。
【００４６】
コマンドの１バイト目の書き込み（タイミングｔａ２，図４中のステップＳ１２０）から、書込待機期間Ｌｗａの待機を経た後（図４中のステップＳ１４０）、コマンドの１バイト目と同様に、送信バッファレジスタ２４０にコマンドの２バイト目が書き込まれる（タイミングｔａ４，図４中のステップＳ１５０）。
【００４７】
この際の送信シフトレジスタ２５０は、コマンドの１バイト目をシリアル転送中であり、コマンドの２バイト目を送信バッファレジスタ２４０から受け取ることができないため、送信バッファレジスタ２４０は、書き込まれたコマンドの２バイト目を記憶して保持し、送信バッファ空き信号ＴＥａはローレベルとなる（タイミングｔａ４）。
【００４８】
その後、送信シフトレジスタ２５０によるコマンドの１バイト目のシリアル転送が終了すると、送信バッファレジスタ２４０は、記憶するコマンドの２バイト目を送信シフトレジスタ２５０に引き渡し、この引き渡しが完了するとシリアル管理部２８０によってクリアされ、送信バッファ空き信号ＴＥａはハイレベルとなる（タイミングｔａ５）。
【００４９】
その後、送信シフトレジスタ２５０は、コマンドの１バイト目と同様に、送信バッファレジスタ２４０から受け取ったコマンドの２バイト目をシリアルデータＤａｂに出力する（タイミングｔａ６〜ｔａ７）。
【００５０】
以上説明した主制御基板２０の動作によって、払出制御基板７０に対して２バイトのコマンドが送信される。本実施例の主制御基板２０は、払出制御基板７０に対してコマンドを送信してから所定の期間の間に、払出制御基板７０からＡＣＫ信号の返答がない場合には、コマンドを再送する。
【００５１】
なお、逆に、主制御基板２０に対してコマンドを送信する払出制御基板７０の動作は、演算処理部２１０に代えて払出ＣＰＵ７１０、送信バッファレジスタ２４０に代えて送信バッファレジスタ７４０、送信シフトレジスタ２５０に代えて送信シフトレジスタ７５０が、それぞれ上述した主制御基板２０の場合と同様の動作を行うことによって実現される。
【００５２】
なお、本実施例では、主ＣＰＵ２００は、４ミリセカンドの間隔で定時割り込み処理を繰り返し実行するのに対し、シリアルＩＦ部２２０は、１２００ｂｐｓ(Bit Per Second)の転送レートでシリアル転送を実行する。したがって、本実施例では、シリアルＩＦ部２２０が２バイトのコマンドをシリアル転送する時間は約１６．７ｍｓとなり、主ＣＰＵ２００は、その間に定時割り込み処理を約４回繰り返し実行することとなる。このように、主ＣＰＵ２００は、送信バッファレジスタ２４０にコマンドを書き込んでしまえば、そのコマンドの払出制御基板７０へのシリアル転送をシリアルＩＦ部２２０に任せることができる。なお、シリアル転送における１２００ｂｐｓの転送レートは、電気的ノイズに対するコマンド転送の信頼性を確保可能な転送レートであり、また、比較的安価なフォトカプラを用いたアイソレーションによってシリアル転送することが可能な転送レートである。
【００５３】
なお、主制御基板２０は、シリアル転送中（送信バッファレジスタ２４０にコマンドが有る状態）に、制御処理を中断することなく、入賞があれば入賞情報を記憶するなど他の制御処理を実行する。パチンコ機の場合、遊技板１３へと打ち出される遊技球は、１分間に最大１００個までと規制されているため、遊技球の打ち出し間隔は約６００ｍｓである。したがって、遊技球が入賞口６１に連続して入賞したとしても、主制御基板２０は、遊技球の検出情報を滞りなく処理し、賞球コマンドを払出制御基板７０にシリアル転送することができる。
【００５４】
Ａ−（２−２）．払出制御基板７０のコマンド受信：
主制御基板２０からのコマンドを受信する払出制御基板７０の動作について説明する。図６は、払出制御基板７０の払出ＣＰＵ７１０が実行するコマンド受信処理を示すフローチャートである。払出制御基板７０の払出ＣＰＵ７１０は、遊技球の払い出しを制御する一環として主制御基板２０からのコマンドを受信する場合に、図６に示したコマンド受信処理を実行する。
【００５５】
払出ＣＰＵ７１０は、コマンド受信処理を開始すると、「受信データ有り信号ＤＦｂがハイレベル」であるか否か、すなわち、「受信バッファレジスタ７７０にデータが記憶されている場合」であるか否かを判断する（ステップＳ２１０）。
【００５６】
ここで、コマンド受信処理において「受信データ有り信号ＤＦｂがハイレベル」であると判断される場合（ステップＳ２１０）には、主制御基板２０から払出制御基板７０に対して送信された２バイトのコマンドのうち、コマンドの１バイト目が受信バッファレジスタ７７０に記憶された状態である。
【００５７】
「受信データ有り信号ＤＦｂがハイレベル」である場合（ステップＳ２１０）には、受信バッファレジスタ７７０に記憶されているコマンドの１バイト目を読み出す（ステップＳ２２０）。その後、受信シフトレジスタ７６０を介して受信バッファレジスタ７７０に記憶されたコマンドの２バイト目を読み出し（ステップＳ２４０）、コマンド受信処理を終了する。
【００５８】
図７は、コマンド受信処理が実行される際の払出制御基板７０における各信号の様子を示すタイムチャートである。前述した主制御基板２０におけるコマンド送信処理によって、シリアルデータＤａｂにコマンドの１バイト目が出力されると（タイミングｔｂ１〜ｔｂ２）、受信シフトレジスタ７６０にコマンドの１バイト目が記憶された後、受信バッファレジスタ７７０にコマンドの１バイト目が受け渡され、受信データ有り信号ＤＦｂはハイレベルとなる。
【００５９】
コマンドの１バイト目に続いて、シリアルデータＤａｂにコマンドの２バイト目が出力されると（タイミングｔｂ１〜ｔｂ２）、受信シフトレジスタ７６０にコマンドの２バイト目が記憶される。この際には、受信バッファレジスタ７７０からコマンドの１バイト目が読み出されておらず、受信バッファレジスタ７７０はシリアル管理部７８０によってクリアされていないため、受信シフトレジスタ７６０はコマンドの２バイト目の記憶を保持する。
【００６０】
その後、図６に示したコマンド受信処理にて、「受信データ有り信号ＤＦｂがハイレベル」であると判断されると（図６中のステップＳ２１０）、読み出し信号＃ＲＥｂの立ち下がりによって、受信バッファレジスタ７７０からパラレルデータＲＤｂにコマンドの１バイト目が出力され、コマンドの１バイト目が、払出ＣＰＵ７１０によって受信バッファレジスタ７７０から読み出される（タイミングｔｂ５〜ｔｂ６，図６中のステップＳ２２０）。
【００６１】
コマンドの１バイト目の読み出しが完了すると、受信バッファレジスタ７７０はシリアル管理部７８０によってクリアされ、受信データ有り信号ＤＦｂはローレベルとなる（タイミングｔｂ６）。その後、受信シフトレジスタ７６０から受信バッファレジスタへとコマンドの２バイト目が受け渡されると、受信データ有り信号ＤＦｂはハイレベルとなる（タイミングｔｂ７）。その後、コマンドの１バイト目と同様にして、受信バッファレジスタ７７０からコマンドの２バイト目が読み出される（タイミングｔｂ８〜ｔｂ９，図６中のステップＳ２４０）。なお、説明の便宜上、図７では、コマンドの１バイト目と２バイト目とのシリアル転送時間のスケールは、払出ＣＰＵ７１０の演算処理時間のスケールと比べ縮小されているが、実際には、コマンドの１バイト目と２バイト目とのシリアル転送時間は、払出ＣＰＵ７１０の演算処理時間に比べて相当の時間を要する。したがって、図６に示したコマンド受信処理は、払出ＣＰＵ７１０が所定の間隔で繰り返し実行する定時割り込み処理の一環として、複数回の定時割り込み処理に分けて実行される処理である。
【００６２】
以上説明した払出制御基板７０の動作によって、主制御基板２０から送信された２バイトのコマンドが受信される。本実施例の払出制御基板７０は、主制御基板２０からコマンドを受信してから所定の期間の間に、主制御基板２０に対してＡＣＫ信号を送信する。
【００６３】
なお、本実施例では、シリアルＩＦチップ７２０のサンプリングタイミングは、転送レート（１２００ｂｐｓ）の１６倍である１９．２キロヘルツ（ｋＨｚ）に設定されている。本実施例では、シリアルＩＦチップ７２０は、スタートビット，コマンドの各データビット，ストップビットのビット毎に、それぞれ３回のサンプリングを行い、この３回のサンプリングで検出された値を多数決判定することによって、コマンド受信の信頼性の向上を図っている。
【００６４】
なお、逆に、払出制御基板７０からのコマンドを受信する主制御基板２０の動作は、払出ＣＰＵ７１０に代えて演算処理部２１０、受信シフトレジスタ７６０に代えて受信シフトレジスタ２６０、受信バッファレジスタ７７０に代えて受信バッファレジスタ２７０が、それぞれ上述した払出制御基板７０の場合と同様の動作を行うことによって実現される。
【００６５】
以上説明した第１の実施例のパチンコ機１０によれば、主制御基板２０の主ＣＰＵ２００が１回の定時割り込み処理内を行う間に、シリアルＩＦ部２２０がシリアル転送可能なコマンドを２バイト分、シリアルＩＦ部２２０の送信バッファレジスタ２４０，送信シフトレジスタ２５０に格納することができ、主制御基板２０の主ＣＰＵ２００がコマンドのシリアル転送に関わる期間を短縮することができる。その結果、主制御基板２０における他の制御処理の進行の阻害や、主制御基板２０で実行される制御プログラムの複雑化を抑制することができる。したがって、コマンドを分割してシリアル転送する場合における円滑な遊技制御を実現することができる。
【００６６】
Ｂ．第２の実施例：
Ｂ−（１）．パチンコ機１０ｂの構成：
第２の実施例のパチンコ機１０ｂの構成について説明する。第２の実施例のパチンコ機１０ｂの構成は、第１の実施例における主制御基板２０，払出制御基板７０に代えて、主制御基板２０ｂ，払出制御基板７０ｂを備える他は、第１の実施例のパチンコ機１０の構成と同様である。
【００６７】
図８は、主制御基板２０ｂおよび払出制御基板７０ｂの電気的な構成の詳細を示すブロック図である。主制御基板２０ｂは、主制御基板２０ｂにおける種々の演算処理を行うＣＰＵとして、外部とのシリアル通信機能およびパラレル通信機能を有する主ＣＰＵ２０５を備える。主ＣＰＵ２０５は、第１の実施例における主ＣＰＵ２００と同様である。
【００６８】
図８に示すように、払出制御基板７０ｂは、払出制御基板７０における種々の演算処理を行う払出ＣＰＵ７１５と、外部とのシリアル通信およびパラレル通信を行う回路が形成されたシリパラＩＦチップ７２５を備える。シリパラＩＦチップ７２５の構成は、第１の実施例におけるシリアル管理部７８０に代えて、処理動作の異なるシリアル管理部７８５を備えると共に、第１の実施例のパラレルＩＦチップ７３０と同様の機能を有するパラレルＩＦ部７３５を備え、これらを１チップに集積して構成されている他は、第１の実施例のシリアルＩＦチップ７２０と同様である。
【００６９】
シリアル管理部７８５の回路構成は、受信バッファレジスタ７７０からデータを消去する構成が異なる以外は、第１の実施例のシリアル管理部７８０の回路構成と同様である。シリアル管理部７８５は、受信バッファレジスタ７７０のデータが払出ＣＰＵ７１５からの読み出しによって消去される第１の実施例のシリアル管理部７８０とは異なり、払出ＣＰＵ７１５からのバッファクリア信号＃ＣＢｂに基づいて、受信バッファレジスタ７７０からデータを消去する。
【００７０】
Ｂ−（２）．パチンコ機１０ｂの動作：
パチンコ機１０ｂの動作のひとつとして、主制御基板２０ｂと払出制御基板７０ｂとの間におけるコマンド転送の際の動作について説明する。本実施例のパチンコ機１０ｂは、主制御基板２０ｂから払出制御基板７０ｂへのコマンド転送と、払出制御基板７０ｂから主制御基板２０ｂへのコマンド転送を行うことが可能である。以下の説明では、主制御基板２０ｂから払出制御基板７０ｂへのコマンド転送の際の動作について詳細に説明する。
【００７１】
Ｂ−（２−１）．主制御基板２０ｂのコマンド送信：
払出制御基板７０ｂに対してコマンドを送信する主制御基板２０ｂの動作について説明する。図９は、主制御基板２０ｂの演算処理部２１５が実行するコマンド送信処理を示すフローチャートである。主制御基板２０ｂの演算処理部２１５は、遊技の進行を制御する処理の一環として、図９に示したコマンド送信処理を所定のタイミングで繰り返し実行する。
【００７２】
演算処理部２１５は、図９に示したコマンド送信処理を開始すると、ジョブフラグＦｊの値を判断する（ステップＳ３１０）。ジョブフラグＦｊは、コマンド送信処理における状態を示すフラグであり、演算処理部２１５の起動時には「０」に設定されている。
【００７３】
「ジョブフラグＦｊ＝０」の場合には、払出制御基板７０ｂに対するコマンドの出力するためのコマンド出力処理を実行し（ステップＳ４００）、「ジョブフラグＦｊ＝１」の場合には、払出制御基板７０ｂからのＡＣＫ信号を確認するためのＡＣＫ待ち処理を実行する（ステップＳ５００）。コマンド出力処理（ステップＳ４００）、または、ＡＣＫ待ち処理（ステップＳ５００）を終了した後、コマンド送信処理を終了する。なお、コマンド出力処理（ステップＳ４００），ＡＣＫ待ち処理（ステップＳ５００）の詳細については後述する。
【００７４】
図９に示したコマンド送信処理におけるコマンド出力処理（図９中のステップＳ４００）の詳細について説明する。図１０は、コマンド出力処理（図９中のステップＳ４００）を示すフローチャートである。演算処理部２１５は、図１０に示すコマンド出力処理を開始すると、「送信バッファ空き信号ＴＥａがハイレベル」かつ「シリアル転送中信号ＴＣａがローレベル」であるか否か、すなわち、「送信バッファレジスタ２４０にデータが記憶されていない場合」かつ「送信シフトレジスタ２５０がシリアル転送中でない場合」であるか否かを判断する（ステップＳ４０５）。「送信バッファ空き信号ＴＥａがハイレベル」かつ「シリアル転送中信号ＴＣａがローレベル」である場合（ステップＳ４０５）には、「チェックフラグＦｃ＝１」であるか否かを判断する（ステップＳ４１０）。チェックフラグＦｃは、払出制御基板７０ｂからのＡＣＫ信号が確認できない場合に、払出制御基板７０ｂに対して動作状態の報告を指示するためのフラグであり、演算処理部２１５の起動時には「０」に設定されている。
【００７５】
「チェックフラグＦｃ＝１」でない場合であって（ステップＳ４１０）、遊技球の入賞口６１への入賞がある場合には（ステップＳ４１２）、払出制御基板７０ｂに所定の個数の賞品球の払い出しを指示する入賞コマンドの１バイト目を生成する（ステップＳ４１４）。
【００７６】
一方、「チェックフラグＦｃ＝１」である場合には（ステップＳ４１０）、チェックフラグＦｃを「０」に設定し（ステップＳ４１６）、払出制御基板７０ｂに対して動作状態の報告を指示するチェックコマンドの１バイト目を生成する（ステップＳ４１８）。なお、主制御基板２０ｂは、払出制御基板７０ｂからの動作状態の報告を、払出制御基板７０ｂから主制御基板２０ｂに対するコマンドの形態で受け取る。
【００７７】
入賞コマンドまたはチェックコマンドの１バイト目を生成した後（ステップＳ４１４，Ｓ４１８）、生成した１バイト目の各ビットを反転して、すなわち、１バイト目のビットのうち、「０」であるビットを「１」とし、「１」であるビットを「０」として、コマンドの２バイト目を生成する（ステップＳ４１９）。本実施例では、コマンドの１バイト目は、コマンドとしての実質的な意味を持つデータであり、コマンドの２バイト目は、払出制御基板７０ｂ側でコマンドの正誤を判断するためのデータである。
【００７８】
コマンドの２バイト目を生成した後（ステップＳ４１９）、生成したコマンドを送信する（ステップＳ４３０〜Ｓ４５０）。この処理（ステップＳ４３０〜Ｓ４５０）は、図４に示したコマンド送信処理における処理（ステップＳ１３０〜Ｓ１５０）と同様である。コマンドを送信した後（ステップＳ４３０〜Ｓ４５０）、ジョブフラグＦｊを「１」に設定し（ステップＳ４６０）、コマンド出力処理を終了する。
【００７９】
コマンド出力処理においてコマンドの送信が実行される際（ステップＳ４３０〜Ｓ４５０）の主制御基板２０ｂにおける各信号の様子は、図５に示した第１の実施例の主制御基板２０における各信号の様子と同様である。
【００８０】
図９に示したコマンド送信処理におけるＡＣＫ待ち処理（図９中のステップＳ５００）の詳細について説明する。図１１は、ＡＣＫ待ち処理（図９中のステップＳ５００）を示すフローチャートである。演算処理部２１５は、図１１に示すＡＣＫ待ち処理を開始すると、払出制御基板７０ｂからＡＣＫ信号を検出したか否かを判断する（ステップＳ５１０）。ＡＣＫ信号を検出した場合には（ステップＳ５１０）、ジョブフラグＦｊを「０」に設定し（ステップＳ５４０）、ＡＣＫ待ち処理を終了する。
【００８１】
一方、ＡＣＫ信号を検出しない場合には（ステップＳ５１０）、コマンドの送信（図１０中のステップＳ４３０〜Ｓ４５０）を終えてから所定の時間が経過したか否かを判断する（ステップＳ５２０）。この所定の時間は、払出制御基板７０ｂからのＡＣＫ信号の返答を待つ時間であり、本実施例では、１００ｍｓに設定されている。所定の時間が経過していない場合には（ステップＳ５２０）、そのままＡＣＫ待ち処理を終了し、所定の時間が経過した場合には（ステップＳ５２０）、チェックフラグＦｃを「１」に設定し（ステップＳ５３０）、ジョブフラグＦｊを「０」に設定した後（ステップＳ５４０）、ＡＣＫ待ち処理を終了する。
【００８２】
以上説明した主制御基板２０ｂの動作によって、払出制御基板７０ｂに対して２バイトのコマンドが送信される。なお、逆に、主制御基板２０ｂに対してコマンドを送信する払出制御基板７０ｂの動作は、演算処理部２１５に代えて払出ＣＰＵ７１５、送信バッファレジスタ２４０に代えて送信バッファレジスタ７４０、送信シフトレジスタ２５０に代えて送信シフトレジスタ７５０が、それぞれ上述した主制御基板２０ｂの場合と同様の動作を行うことによって実現される。
【００８３】
Ｂ−（２−２）．払出制御基板７０ｂのコマンド受信：
主制御基板２０ｂからのコマンドを受信する払出制御基板７０ｂの動作について説明する。図１２は、払出制御基板７０ｂの払出ＣＰＵ７１５が実行するコマンド受信処理を示すフローチャートである。払出制御基板７０ｂの払出ＣＰＵ７１５は、遊技球の払い出しを制御する一環として主制御基板２０ｂからのコマンドを受信する場合に、図１２に示したコマンド受信処理を実行する。なお、図１２に示したコマンド受信処理は、第１の実施例のコマンド受信処理と同様に、払出ＣＰＵ７１５が所定の間隔で繰り返し実行する定時割り込み処理の一環として、複数回の定時割り込み処理に分けて実行される処理である。
【００８４】
払出ＣＰＵ７１５は、コマンド受信処理を開始すると、「受信データ有り信号ＤＦｂがハイレベル」であるか否か、すなわち、「受信バッファレジスタ７７０にデータが記憶されている場合」であるか否かを判断する（ステップＳ６１０）。
【００８５】
ここで、コマンド受信処理において「受信データ有り信号ＤＦｂがハイレベル」であると判断される場合（ステップＳ６１０）には、主制御基板２０ｂから払出制御基板７０ｂに対して送信された２バイトのコマンドのうち、コマンドの１バイト目が受信バッファレジスタ７７０に記憶された状態である。
【００８６】
「受信データ有り信号ＤＦｂがハイレベル」である場合（ステップＳ６１０）には、受信バッファレジスタ７７０に記憶されているコマンドの１バイト目を読み出した後（ステップＳ６２０）、再び受信バッファレジスタ７７０に記憶されているコマンドの１バイト目を読み出す（ステップＳ６２５）。その後、１回目に読み出したコマンドの１バイト目と、２回目に読み出したコマンドの１バイト目とを照合して（ステップＳ６３０）、両者が一致するか否かを判断する（ステップＳ６３５）。
【００８７】
読み出したコマンドの１バイト目が１回目と２回目とで一致する場合には（ステップＳ６３５）、バッファクリア信号＃ＣＢｂを立ち下げることによって受信バッファレジスタ７７０に記憶されたコマンドの１バイト目をクリアする（ステップＳ６４０）。これによって、受信シフトレジスタ７６０に記憶されていたコマンドの２バイト目が、受信バッファレジスタ７７０に受け渡される。
【００８８】
受信バッファレジスタ７７０をクリアした後（ステップＳ６４０）、受信バッファレジスタ７７０に記憶されているコマンドの２バイト目を、コマンドの１バイト目と同様に、２回の読み出しの後に照合を行い（ステップＳ６５０，Ｓ６５２，Ｓ６５４）、１回目と２回目とが一致する場合には（ステップＳ６５６）、受信バッファレジスタ７７０に記憶されたコマンドの２バイト目をクリアする（ステップＳ６５８）。
【００８９】
その後、読み出したコマンドの１バイト目と、読み出したコマンドの２バイト目とを照合して（ステップＳ６６０）、両者が整合するか否かを判断する（ステップＳ６６５）。なお、前述したように、コマンドの２バイト目は、主制御基板２０ｂがコマンドの１バイト目の各ビットを反転して生成したデータである。
【００９０】
読み出したコマンドの１バイト目と２バイト目とが整合する場合には（ステップＳ６６５）、主制御基板２０ｂに対してＡＣＫ信号を送信して（ステップＳ６８０）、コマンド送信処理を終了する。
【００９１】
一方、読み出したコマンドの１バイト目が１回目と２回目とで一致しない場合や（ステップＳ６３５）、読み出したコマンドの１バイト目と２バイト目とが整合しない場合には（ステップＳ６６５）、次回のコマンド受信に備えるために、受信シフトレジスタ７６０および受信バッファレジスタ７７０をクリアして（ステップＳ６９０）、コマンド送信処理を終了する。
【００９２】
図１３は、コマンド受信処理が実行される際の払出制御基板７０ｂにおける各信号の様子を示すタイムチャートである。なお、説明の便宜上、図１３では、コマンドの１バイト目と２バイト目とのシリアル転送時間のスケールは、払出ＣＰＵ７１５の演算処理時間のスケールと比べ縮小されている。
【００９３】
図１２に示したコマンド受信処理にて、「受信データ有り信号ＤＦｂがハイレベル」であると判断されると（図１２中のステップＳ６１０）、読み出し信号＃ＲＥｂの立ち下がりによって、受信バッファレジスタ７７０からパラレルデータＲＤｂにコマンドの１バイト目が出力され、コマンドの１バイト目が、払出ＣＰＵ７１０によって受信バッファレジスタ７７０から読み出される（タイミングｔｂ１１〜ｔｂ１２，図１２中のステップＳ６２０）。その後、さらにコマンドの１バイト目が、１回目と同様にして読み出される（タイミングｔｂ１３〜ｔｂ１４，図１２中のステップＳ６２５）。
【００９４】
コマンドの１バイト目の２回の読み出しが完了した後、バッファクリア信号＃ＣＢｂの立ち下がりによって受信バッファレジスタ７７０がクリアされ、受信データ有り信号ＤＦｂはローレベルとなる（タイミングｔｂ１５，図１２中のステップＳ６４０）。その後、受信シフトレジスタ７６０から受信バッファレジスタへとコマンドの２バイト目が受け渡されると、受信データ有り信号ＤＦｂはハイレベルとなる（タイミングｔｂ１６）。
【００９５】
その後、コマンドの２バイト目が、コマンドの１バイト目と同様にして受信バッファレジスタ７７０から読み出される（タイミングｔｂ２１〜ｔｂ２４，図１２中のステップＳ６５０，Ｓ６５２）。コマンドの２バイト目の読み出しが完了した後、バッファクリア信号＃ＣＢｂの立ち下がりによって受信バッファレジスタ７７０がクリアされ、受信データ有り信号ＤＦｂはローレベルとなる（タイミングｔｂ２５，図１２中のステップＳ６７０）。
【００９６】
以上説明した払出制御基板７０ｂの動作によって、主制御基板２０ｂから送信された２バイトのコマンドが受信される。なお、逆に、払出制御基板７０ｂからのコマンドを受信する主制御基板２０ｂの動作は、第１の実施例と同様である。
【００９７】
以上説明した第２の実施例のパチンコ機１０ｂによれば、第１の実施例のパチンコ機１０と同様に、主制御基板２０における他の制御処理の進行の阻害や、主制御基板２０で実行される制御プログラムの複雑化を抑制することができる。更に、払出制御基板７０ｂの払出ＣＰＵ７１５側の都合に応じて受信バッファレジスタ７７０に記憶されているコマンドの消去を行うことができるため、２バイト単位で１バイト毎にシリアル転送されるコマンドに対して、払出ＣＰＵ７１５による２バイト単位での取り扱いの容易化を図ることができる。
【００９８】
また、払出制御基板７０ｂは、コマンドを重複して読み取り、重複して読み取ったコマンドを照合するため（図１２中のステップＳ６２０〜Ｓ６３５）、受信バッファレジスタ７７０から払出ＣＰＵ７１５へのコマンドの受け渡しの際に、ノイズなどの影響によって書き換えられてしまった異常なコマンドに基づいて処理が行われてしまうことを防止することができる。
【００９９】
また、主制御基板２０ｂは、コマンドの１バイト目を反転して２バイト目を生成し（図１０中のステップＳ４１９）、払出制御基板７０ｂは、コマンドの１バイト目と２バイト目とを照合するため（図１２中のステップＳ６６０〜Ｓ６６５）、主制御基板２０ｂから払出制御基板７０ｂへのコマンド転送の際に、ノイズなどの影響によって書き換えられてしまった異常なコマンドに基づいて処理が行われてしまうことを防止することができる。
【０１００】
また、コマンドを受け取った払出制御基板７０ｂは、主制御基板２０ｂに対してＡＣＫ信号を送信するため、主制御基板２０ｂは、コマンドが正常に転送されたか否かを確認することができる。さらに、主制御基板２０ｂは、払出制御基板７０ｂからのＡＣＫ信号の返答がない場合に、払出制御基板７０ｂに対してチェックコマンドを送信するため、コマンドが正常に転送されなかった理由が払出制御基板７０ｂにおける異常動作に基づくものであるか否かを判断することができる。
【０１０１】
Ｃ．その他の実施形態：
以上、本発明の実施の形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。例えば、本発明の適用は、複数の制御基板を備えた遊技機であれば良く、パチンコ機に限らず、アレンジボールやスロットマシンなどの遊技機にも適用することもできる。また、スロットマシンの場合には、遊技コインの払出を制御する払出基板に本発明を適用することができる。また、コマンドを正常に受信できなかった側の基板は、そのコマンドを送信した側の基板に対して、コマンドの再送を要求することとしても良い。この場合に、再送の要求は、シリアル転送で行うこととしても良いし、パラレル転送で行うこととしても良い。これによって、コマンド転送の信頼性を向上させることができる。
【０１０２】
また、サブ制御基板４０や図柄制御基板３０などの他の基板に、本発明を適用することとしても良い。例えば、主制御基板２０とサブ制御基板４０との間のコマンド転送に適用しても良い。主制御基板２０からサブ制御基板４０に対するコマンドとしては、ＬＣＤ３５における動画像表示の演出内容を指示する演出コマンドがある。
【０１０３】
また、送信側ＣＰＵが生成する２バイト以上のコマンドは、偶数バイトであることとしても良い。これによって、送信側ＣＰＵからシリアル通信ユニットに対する１回の定時割込処理あたり２バイト分のコマンドの格納を効率良く実行することができる。例えば、主制御基板２０は、演出指示を規定した３バイトの指示コマンドと、この指示コマンドのチェックサムを算出した１バイトのチェックコマンドとから成る計４バイトのコマンドを一群のコマンドとして生成し、４バイトの一群のコマンドを２回分に分けて、２回の定時割り込み処理にて２バイト毎にシリアル転送することとしても良い。
【０１０４】
また、主制御基板２０は、３バイトの指示コマンドと、１バイトのチェックコマンドとの各ビットを反転させた４バイトの反転コマンドも併せて、計８バイトのコマンドを一群のコマンドとして生成し、８バイトの一群のコマンドを４回に分けて、４回の定時割り込み処理にて２バイト毎にシリアル転送することとしても良い。
【図面の簡単な説明】
【０１０５】
【図１】パチンコ機１０の全体構成を示す正面図である。
【図２】パチンコ機１０の電気的な概略構成を示すブロック図である。
【図３】主制御基板２０および払出制御基板７０の電気的な構成の詳細を示すブロック図である。
【図４】主制御基板２０の演算処理部２１０が実行するコマンド送信処理を示すフローチャートである。
【図５】コマンド送信処理が実行される際の主制御基板２０における各信号の様子を示すタイムチャートである。
【図６】払出制御基板７０の払出ＣＰＵ７１０が実行するコマンド受信処理を示すフローチャートである。
【図７】コマンド受信処理が実行される際の払出制御基板７０における各信号の様子を示すタイムチャートである。
【図８】主制御基板２０ｂおよび払出制御基板７０ｂの電気的な構成の詳細を示すブロック図である。
【図９】主制御基板２０ｂの演算処理部２１５が実行するコマンド送信処理を示すフローチャートである。
【図１０】コマンド出力処理（図９中のステップＳ４００）を示すフローチャートである。
【図１１】ＡＣＫ待ち処理（図９中のステップＳ５００）を示すフローチャートである。
【図１２】払出制御基板７０ｂの払出ＣＰＵ７１５が実行するコマンド受信処理を示すフローチャートである。
【図１３】コマンド受信処理が実行される際の払出制御基板７０ｂにおける各信号の様子を示すタイムチャートである。
【符号の説明】
【０１０６】
１０，１０ｂ...パチンコ機
１１...外枠
１２...内枠
１３...遊技板
１４...ガラス枠
１５...ハンドル
２０，２０ｂ...主制御基板
３０...図柄制御基板
３５...ＬＣＤ
４０...サブ制御基板
４５...スピーカ
５５，５６，５７，５８，５９...電飾
６１...入賞口
６５...遊技球センサ
６６...遊技板駆動部
７０，７０ｂ...払出制御基板
７５...払出駆動部
９０...カードユニット
２００，２０５...主ＣＰＵ
２１０，２１５...演算処理部
２２０...シリアルＩＦ部
２３０...パラレルＩＦ部
２４０...送信バッファレジスタ
２５０...送信シフトレジスタ
２６０...受信シフトレジスタ
２７０...受信バッファレジスタ
２８０...シリアル管理部
７１０，７１５...払出ＣＰＵ
７２０...シリアルＩＦチップ
７２５...シリパラＩＦチップ
７３０...パラレルＩＦチップ
７３５...パラレルＩＦ部
７４０...送信バッファレジスタ
７５０...送信シフトレジスタ
７６０...受信シフトレジスタ
７７０...受信バッファレジスタ
７８０，７８５...シリアル管理部
【図１】
2006068298.tif 000003
【図２】
2006068298.tif 000004
【図３】
2006068298.tif 000005
【図４】
2006068298.tif 000006
【図５】
2006068298.tif 000007
【図６】
2006068298.tif 000008
【図７】
2006068298.tif 000009
【図８】
2006068298.tif 000010
【図９】
2006068298.tif 000011
【図１０】
2006068298.tif 000012
【図１１】
2006068298.tif 000013
【図１２】
2006068298.tif 000014
【図１３】
2006068298.tif 000015