1・1 ロータリエンコーダ・ボードの機能


 ロータリエンコーダ・ボードは、ロータリエンコーダ信号処理回路とタッチセンサ信号処理回路を1つにまとめ、IndustryPackの形態にしたものである。ボードには、2相式のロータリエンコーダを2つと、タッチセンサを3つまで取付可能とする。
 ボードの機能は次のとおりである。
  • ロータリエンコーダの信号処理であるカウント機能
  • カウンタのリセット機能
  • タッチセンサによるスイッチ割込み機能
  • 割込みサイクルに必要になる割込みVECTOR発生機能
  • ソフトウェアによる割込みマスク機能
  • 初期化機能


     ロータリエンコーダ信号処理回路
     ロータリエンコーダ信号処理回路は、ロータリエンコーダの2相の信号からロータリエンコーダの回転数と回転方向を測定し、CPUの命令にしたがってデータの出力を行う。
     回路はロータリエンコーダ接続回路とカウンタ回路、カウンタリセット回路から成る。
    図1 ロータリエンコーダ接続回路     
    図1 ロータリエンコーダ接続回

     ロータリエンコーダ接続回路はロータリエンコーダの出力波形が論理回路の”H”、”L”レベルを満足するように振幅を設定するためのものである。この回路は、使用するロータリエンコーダに合わせて設計する必要がある。図1にロータリエンコーダ接続回路を示す。


    1・2 タッチセンサの機能


    《タッチセンサ信号処理回路》
     タッチセンサ信号処理回路は、タッチセンサの信号からスイッチ割り込みの割込み要求を行う。回路は、タッチセンサのチャタリング防止回路と割込み信号発生回路、タッチセンサステータス出力回路、割込みVECTOR発生回路から成る。
     タッチセンサの信号処理にも、μPD4701Aを利用する。タッチセンサはSR−FFを用いてチャタリングを除去し、その信号をμPD4701Aに取り込む。そして、μPD4701Aの持つスイッチフラグ信号を利用して割込み信号発生回路で割込み信号を発生させる。タッチセンサの状態は、μPD4701Aのカウント値とまとめて出力される為、別に、タッチセンサステータス出力回路を設計する必要はない。
     割込みVECTOR発生回路は、割込みサイクル時にVIPC310−IP間のデータバス(Internal Data Bus)に8ビットの割込みVECTORを載せる回路である。IPからデータバスには通常μPD4701Aの出力データが載せられる為、バス上にμPD4701Aの出力データと割込みVECTORが同時に載るようなことの無いよう、3ステートのバッファを用いて割込みVECTORの出力を制御する。割込みVECTORの設定は、8ビットディップスイッチによって行う。IPをVIPC310に搭載するとき、両者は互いにボードの部品面を向かい合わせる事になる。IPをVIPC310に搭載したまま割込みVECTORの設定を行えるよう、ディップスイッチは横向きのものを使用した。


    2、概要

     ロータリーエンコーダ、タッチセンサボード(以後RTボードと呼ぶ)は,Industry-Packの形にする。IndustryPackとは、VIPC310に直接載せるもので、RTボード以外には、PIO IP-Dig.48がある。
     RTボードは,VIPC310のコネクタJ3とJ5に取り付ける(図2)。J3にはInternalData Bus、Address、制御用信号線、等があり、VIPC310を介してRTボードとVSBC-1(CPU)とのやり取りを行う。J5は直接JAとつながっており、ここからロータリーエンコーダのパルス信号およびタッチセンサスイッチデータを取り込む。
    図2 RTボード     
    図2 RTボード

    2・1 回路構成


    以下に回路構成を示す。
    回路1     
    回路1

    リードサイクル
    アドレス
    データ
    A8A7A6-A4A3A2A1A0D00-D07
    00未使用0000右ロータリーエンコーダ下位8ビット
    00未使用0010右ロータリーエンコーダ上位8ビット
    00未使用0100左ロータリーエンコーダ下位8ビット
    0<0/TD>未使用0110左ロータリーエンコーダ上位8ビット


    リセットサイクル
    アドレス
    データ
    A8A7A6-A4A3A2A1A0D08D09 
    00未使用100001右カウンタ
    00未使用100010左カウンタ
    00未使用100011両カウンタ
    回路2     
    回路2

    回路3     
    回路3

    2・2外形


    外形     

    ロータリエンコーダ・ボード外観図       
    ロータリエンコーダ・ボード外観図

     2・3インターフェス


     以下に各ピンのピンアサインを示す。 コネクタJ3 ←←
    No.信号名方向内容備考
     1GND--GND 
     2CLKClock 8MHz 
     3BRESET*CPUリセット信号 
     4D00←→DATA 2^0 
     5D01←→DATA 2^1 
     6D02←→DATA 2^2 
     7D03←→DATA 2^3 
     8D04←→DATA 2^4 
     9D05←→DATA 2^5 
    10D06←→DATA 2^6 
    11D07←→DATA 2^7 
    12D08←→DATA 2^8未使用
    13D09←→DATA 2^9未使用
    14D10←→DATA 2^10未使用
    15D11←→DATA 2^11未使用
    16D12←→DATA 2^12未使用
    17D13←→DATA 2^13未使用
    18D14←→DATA 2^14未使用
    19D15←→DATA 2^15未使用
    20BS0*Byte Select (下位バイト)BS0*=0 (active)
    21BS1*Byte Select (上位バイト)BS1*=1 (negative)
    22V---電源-12V未使用
    23V+--電源+12V未使用
    24Vcc--電源+5V 
    25GND--GND 
    26GND--GND 
    27Vcc--電源+5V 
    28PWR*Read*Write Select1=Read,0=Write
    29IDA*ID PROM Select 信号 
    30H1high level 入力 
    31MEMSELA*Memory R*W Cycle 信号未使用
    32H2high level 入力 
    33INTSELA*Interrupt Cycle 信号 
    34H3high level 入力 
    35IOSELA*I/O Cycle 信号 
    36H4high level 入力 
    37ADDR1Address 2^1 
    38H5high level 入力 
    39ADDR2Address 2^2 
    40H6high level 入力 
    41ADDR3Address 2^3 
    42IRQA0*Interrupt 信号 (割込み level=4) 
    43ADDR4Address 2^4 
    44IRQA1*Interrupt 信号 (割込み level=5)未使用
    45ADDR5Address 2^5 
    46H7high level 入力high level 入力
    47ADDR6Address 2^6 
    48ACKA*Acknowledge 
    49+5PSTBT--VIPC310ボードのバッテリー電源データ保存用、未使用
    50GND--GND 


    コネクタJ5
    No.信号名方向内容備考
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    GND--GND 
    10GND--GND 
    11GND--GND 
    12GND--GND 
    13GND--GND 
    14GND--GND 
    15GND--GND 
    16GND--GND 
    17GND--GND 
    18GND--GND 
    19GND--GND 
    20GND--GND 
    21GND--GND 
    22GND--GND 
    23GND--GND 
    24GND--GND 
    25GND--GND 
    26GND--GND 
    27RRa右ロータリ・エンコーダa相信号 
    28GND--GND 
    29Vcc--電源+5V 
    30GND--GND
    31RRb右ロータリ・エンコーダb相信号 
    32GND--GND 
    33RLa左ロータリ・エンコーダa相信号 
    34GND--GND 
    35Vcc--電源+5V 
    36GND--GND 
    37RLb左ロータリ・エンコーダb相信号 
    38GND--GND 
    39TRs*右タッチセンサON信号 
    40GND--GND 
    41TRr*右タッチセンサOFF信号 
    42GND--GND
    43TMs*中央タッチセンサON信号 
    44GND--GND 
    45TMr*中央タッチセンサOFF信号 
    46GND--GND 
    47TLs*左タッチセンサON信号 
    48GND--GND 
    49TLr*左タッチセンサOFF信号 
    50GND--GND 


    3、ソフトウェアビジビリティー

    次にソフトウェアからの見え方を示す。
    Address
    A8A7A6A5A4A3A2A1A0
    Read/Write DATA
    D7 D6 D5 D4 D3 D2 D1 D0
    MEMO
    0 x x x x 0 0 0 1Read2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
    右ロータリ・エンコーダカウンタ下位8ビット
    一定時間毎読む
    0 x x x x 0 0 1 1ReadSF L R M 2^11 2^10 2^9 2^8
    右ロータリ・エンコーダカウンタ上位4ビット
    +スイッチデータ
    SF:スイッチフラグ
    (SF=L+R+M,active high)
    L:左スイッチ(active high)
    R:右スイッチ(active high)
    M:中央スイッチ(active high)
    一定時間毎、スイッチ割込み時に読む
    0 x x x x 0 1 0 1Read2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
    左ロータリ・エンコーダカウンタ下位8ビット
    一定時間毎読む
    0 x x x x 0 1 1 1ReadSF L R M 2^11 2^10 2^9 2^8
    左ロータリ・エンコーダカウンタ上位4ビット
    +スイッチデータ
    SF:スイッチフラグ
    (SF=L+R+M,active high)
    L:左スイッチ(active high)
    R:右スイッチ(active high)
    M:中央スイッチ(active high)
    一定時間毎、スイッチ割込み時に読む
    0 x x x x 1 0 0 1Write(カウンタリセット)
    x x x x x x 0 1
    x x x x x x 1 0
    左ロータリ・エンコーダカウンタリセット
    \ x x x x x x 1 1
    左右カウンタ同時リセット
    右カウンタ読み込み後に行う

    左カウンタ読み込み後に行う

    スタート時に行う

    0 x x x x 1 0 1 1Write(割込みenable)
    x x x x x x x 0
    割込み不可
    x x x x x x x 1
    割込み許可
    リセット後に行う
    ※ アドレスA8より上位桁は、ジャンパ設定。
    ※ アドレスおよびデータの "x" は、don't care を意味する。


    4、部品表

    初版基板の部品表はV94−CARD−301である。