この作業日誌は狩野のPSoCライフを淡々と描くものです。過度なk(ry
目次
PSoCを借りて遊んでみる。
とりあえず秋田先生のTutorialやってみた。
…LEDの強度変化しねぇorz
というわけで、とりあえず光る色を変えてみた。
これは単にPWMの出力ピンを変えるだけでお手軽に出来ます。
First Touch Guide.pdfやらにピン配置書いてあった。
んで、結果
Green,Red,Blue三色あるが、一番目立つ赤でこれ。
これでも一応光ってますorz
書き込み機のLED自重しろ
まず、昨日出来なかったLED強度変化について。
PSoC Programmerを再起動したら動いた。
何でだよ
次。タッチセンサ作ってみた。
該当PortはP2[1]〜P2[7]
↑の部分を使う。プログラムは使いまわしで良い
唯一変わるのは配線。
光センサはADCの直入力に出来たけど、これは出来ない。
つうわけで、一回ユーザ定義の空いてるPort(P0[5]とか)に引き回してやって作る。
↑こんな感じ
IRDropとか色々あるから正しい値ではないけど、一応動く。
ADCが8bitなので、255からパルス幅dをさっぴいてやれば、触ると光るセンサになる。
上記のプログラムを使いまわしてやってみた。
…回路見て判ってたが、単音ツマンネ(ぁ
たいした説明じゃないが、CSDとCSRの違いについて備忘録程度に
ΔΣ変調を用いて、周りの白色ノイズを低減+所望周波数のみ抽出
後段のBitStreamはディジタル処理のための波形整形。
上記のような処理なし。そのまま出力。
男の子の夢。それはLEDチカチカ(違)。
このPSoCつうものは非常に良く出来ていて、
システムクロック(24MHz)を最大で、16(VC1)→16(VC2)→256(VC3)
分周して回路クロックとして入力が出来る。
つうわけで、8bitカウンタ(Period 255)を用いることで
最大、1.43Hzまで分周できる。
これでLEDを光らせればたいていの人は見えるはず!
ちなみに、システムクロックを弄って6MHzにすれば、もっと少ない分周数でもいける。
その際のエラー解決法は↓参照。これで8bitカウンタ一個で1Hzが作れる。
http://merl.ec.t.kanazawa-u.ac.jp/micon-bu/index.php?FAQ#zc20cf82
うちはボケて詰まったところなので詳細に書いてみる。
pragmaとは、コンパイラの挙動を精細に指示する構成要素であり…(うんたらかんたら)
まぁ、アレだ。
タイマ割り込みしたかったら
#pragma interrupt_handler (モジュール名)_ISR |
って入れとけ。これで5割。
ISRはヘッダにかかれてないから任意かもしれんが、
わざわざわかりやすい名前から変更する意義はない。
なお、pragmaの位置は、場所依存性は無いけど(←確認済)
割り込み変数の上あたりに置いとくと忘れなくていいかも。
んで、俺が何をミスったかって言うとだ………
PWM起動し忘れたよウワーン・゜・(/Д`)・゜・。
みんなはそんなこと無いと思うが、タイマは直接出力出してるわけじゃなくて、
割り込みかけてるだけだからな。
んで、グローバル変数およびパルス幅変更してるだけ。
多分今日中に終わらないが。
折角PSoCが書き込み機いらない子だって知ったので、手元にあるSC1602を使ってみる
↓こんなの
…bit数たらねぇ。PSoCは4ピンしかだせねぇのに、必要ピンは8bit orz
〜10分後〜
ああ。4bitモードで動かせるらしいぞこのLCD
データシートの端に書いてあった。