&size(20){&color(#3CB371){''■ 目次''};};
#Contents
~
*2016年 [#t6e93d0a]
**5/25(水) [#o0f9ce55]
***マトリクスLED (型番:BU5004-R) のデータシート [#udda8d7c]
>このマトリクスLEDのデータシートが見当たらなかったので、ネットで見つけた情報を記録しておく。~
まず、ピン配置は次の通り。

#ref(pin_num.jpeg,nolink);
>これらのピンが以下のようにROW(行)とCOL(列)に対応している。~
||CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|CENTER:|c
|~ROW|~1|~2|~3|~4|~5|~6|~7|~8|
|PIN No.|16|1|14|13|5|6|9|8|
|~COL|~1|~2|~3|~4|~5|~6|~7|~8|
|PIN No.|7|4|3|2|10|11|12|15|

>また、このLEDは ''COL → ROW'' に電流が流れることで点灯するように設計されているので、~
LED_C1〜C8を''「Active High」''、LED_R1〜R8を''「Active Low」''に設定すること。~

***マトリクスLEDの表示について [#ab649b4f]
>導入教育で、マイコンブのチュートリアルである「PSoC1duino マトリクスLED編」に取り組んでいたが、どうにも上手くいかなかった。~
先のデータシートの行方が分からなかったのも一つの要因であるが、ページに記載されていたコードに不備があったようだ。~
>良く見ると、コード中4行目のTimer8ユーザモジュールの宣言(?)部分の関数名が抜け落ちていた。~
>&color(Black,#FFE4B5){訂正前:#pragma interrupt_handler};~
&color(Black,#FFE4B5){訂正後:#pragma interrupt_handler ''Timer8_1_ISR''};~

>なお、現在はページを修正し、正しく動作するようなコードとなっている。
>また、タイマーを用いたダイナミック駆動では、クロックの周波数を落とすことで、~
任意のLEDを一斉に点灯させるのではなく、順番に点灯させることも可能。~
タイマーの''モジュールパラメータ''における''Clock''の参照元か''Period''の数字を大きくすると動作は遅くなる。~