CAmiDion 2号機のマトリクス接続を3号機に合わせました

CAmiDion3号機では、2号機のキーボードマトリクスの割り当てを見直し、線の引き回しが少なくなるようにしています。

具体的にはこんな感じです:

//////////////////////////////
// LED buffer (in HEX)
//
// CAmiDion-2:
//       C       1 3   6 8 A
//     D E F    0 2 4 5 7 9 B
//
// CAmiDion-3:
//       3       5 7   A C E
//     0 1 2    4 6 8 9 B D F
//////////////////////////////

////////////////////////////////////////////////////////////////////
// Button matrix anode6-cathode8
//
// CAmiDion2:
//   4-5     |                     5-5 5-6 5-7 |
// 3-5 4-6   | 2-0 2-1 2-2 2-3 2-4 2-5 2-6 2-7 | 5-0 5-1 5-2 5-3 5-4
//   3-6 4-7 | 1-0 1-1 1-2 1-3 1-4 1-5 1-6 1-7 | 4-0 4-1 4-2 4-3 4-4
//     3-7   | 0-0 0-1 0-2 0-3 0-4 0-5 0-6 0-7 | 3-0 3-1 3-2 3-3 3-4
//
// CAmiDion3 (recommended):
//   1-0                          | 2-0 2-1 2-2
// 0-0 1-1    2-3 2-4 2-5 2-6 2-7 | 5-0 5-1 5-2 5-3 5-4 5-5 5-6 5-7
//   0-1 1-2  1-3 1-4 1-5 1-6 1-7 | 4-0 4-1 4-2 4-3 4-4 4-5 4-6 4-7
//     0-2    0-3 0-4 0-5 0-6 0-7 | 3-0 3-1 3-2 3-3 3-4 3-5 3-6 3-7
//
////////////////////////////////////////////////////////////////////

比べてみるとわかりますが、anode6 の軸(LEDおよびボタン同時押し対策ダイオードのアノード側)が 0,1,2 と 3,4,5 の2つに分かれる区切り | の位置を変えたのです。CAmiDion3 のほうが区切りがまとまっているので、線の引き回しがより少なくて済むのです。

前回の記事で2号機と3号機のソースを一本化しましたが、今回、2号機のほうを改造して3号機に合わせたことで #define CAMIDION_2 で分ける必要すらなくなりました。

思っていたより直す箇所が多く、しかも色々なことをやりながらだったこともあって一日がかりでしたが、配線が減った分、以前よりもすっきりしました。

というわけで作業部屋にあった CAmiDion2号機のフォルダの中身は old_version に移動しました。今後は3号機が標準的な構成となります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です