自主課題11
目次
コメント†
11月18日(金)†
そしてダイナミック駆動へ†
自主課題研究5日目。
138をもらってブレッドボードに配線してからはプログラム書いては試しの繰り返し。今回から特定の場所を光らせることを考え始めて、やっと慣れてきた。まず列の選択。関数にしてループの中に入れてカウントアップ。次に行のパターン。配列を用意して決めておく。そしてループ内で行と列を対応させればダイナミック駆動。そんな感じで進んだ5にちめ。
先生「あとはタイマ割込みすればいいじゃん」
ある時間間隔ごとにダイナミック駆動用のプログラムを裏で動かしとくって感じ?詳細は次回、乞うご期待。
やったこと†
- 3to8デコーダ(74HC138)を使ってPSoCからLEDマトリクス(列)の制御
- 行も対応させてダイナミック制御するプログラム作り
はじめてしったこと†
- ブレッドボードの構造を忘れていた
マイコンは溝をまたがせる。
- LEDモジュールを使う時(に限らずだが)は"Drive"を"Active Low"のままだと負論理で動作
- ピンの値書き込み
PRT○DR &= 0b11111111; ←0にしたいピンに0を
PRT○DR |= 0b00000000; ←1にしたいピンに1を
並べて書くと0か1かを指定しないピンは出力を変えない。関数作っちゃったから以降気にすることは無いだろうけど。
- 出力ピン設定
モジュールを割り当てなくても出力ピンとして使うポートは、"Workspace Explorer"の"プロジェクト名 [Pinout]"から"Drive"を"High Z Analog"→"Strong"に。
- ダイナミック駆動
列選択の関数を作る→行のパターンを作っておく→列に対応する行のパターンを同時に表示
おもったこと†
- ダイナミック駆動って、行のパターンを配列で作っておけば、ループ内で配列の添え字と選択する行を対応させるだけじゃん。
- 特定のトコを光らせるには、どこを1にしてどこを0にすればいいかやっと分かってきた。落ち着いて考えれば簡単。
- ライタへのPSoC抜き差しがつらかった。PSoCの足折れたし指に刺さったし...今回調子悪かったけど次からブレッドボード上で書き込む。
- 光った!パターンが動くとそれっぽい。
つぎやること†
- 緑LEDのダイナミック駆動も同様に実装
- ダイナミック駆動部分をタイマ割り込みへ
11月11日(金)†
書き込み器作りつづきと自分の道†
自主課題研究4日目。
書き込み基板に抵抗とLEDとSWつけて光らせた。プログラムは回りくどいけど納得。後半は自分が使うLEDマトリクスのテスト用ケーブルを作った。そして、ブレッドボード上で光らせてみた、赤だけ。また配線ミスっていた。落ち着こう。
いよいよ別々の道へ分かれていく。その中でも有益な知識を共有できたら良い。
やったこと†
- 書き込み器作りの続き(抵抗、LED、SW)
- PSoCにてLEDのSW制御
- LEDマトリクスのテスト用ケーブル作り(とりあえず赤だけ16ピン)
- LEDマトリクス光らせてみた(!)
はじめてしったこと†
- カラーコードの見方ぼんやりと(黒0茶1赤2)
- PRT○DRの使い方→変数に代入で読み出し、値代入で書き込みもできる。
- Pull down→ループ開始の度'L'にしとく。初期値設定みたいな。
おもったこと†
- ライタできた。はじまりだ。
- SW制御は回りくどいけど難しくはない。
- ケーブル作りは単純作業。無心になれて嫌いじゃない。また配線ミスったけど。
- ドットマトリクスも光っていよいよだ。
つぎやること†
- ドットマトリクスの構成理解
- PSoCでドットマトリクス制御(まず1色)
10月28日(金)†
制作案発表と書き込み器作り†
自主課題研究3日目。
発表では色んなアイデアが出ておもしろかった。できたらみんなで遊びたいと思った。
はんだ付けなんて中学校以来なので緊張した。ソケットとピンの接続をミスった。ちくせう。けどはんだ付けの練習になったかと。。。
項目があるとここに書くことが無くなる。ここの自由欄廃止かも。
11.10.29追記 ソケットとピンの接続をミスった原因は絵をいい加減に描いたためと考える。分かりやすい絵を描き落ち着いて配線する。
やったこと†
はじめてしったこと†
おもったこと†
つぎやること†
10月21日(金)†
自主課題研究2日目。
PSoC入門:PSoC First Touch編の前に簡単な実習を行った。家でインストールしてちょっと動かしてみた時のエラーが根本的なものらしく、Designerの再インストールに多くの時間が取られもったいなかった。
PWMの実習では、決めた音の高さを出す時はPWMへのクロックは固定でPeriodで調整した。PulseWidthはPeriod/2としてなるべくデューティー比50%を実現した。
Tutrialの途中までやったので続きをやっとく。来週は発表なのでアイデアを探し寝かせることにする。
やったこと†
- PSoC Designerの再インストール
- LEDつけるだけ
- PWMでLEDの明るさ制御
- 周波数をPWMで設定しブザーで鳴らす
はじめてしったこと†
おもったこと†
つぎやること†