前回の更新から1週間過ぎていました…
新しい職場になかなか慣れず、落ち着かない1週間を過ごしていました。
化学工学の専門知識をしばらく使っていなかったため、その内容についてテストされたけれど
あんまり答えられず…怒られてばかりです。LEDサイリウムばかり作っていたので忘れるのも当然…かもしれません。
他にも理由はあります。
今回は、「出来ちゃった」物を紹介します。
色の変えられるライトセイバーのような物を作ってみた
http://www.nicovideo.jp/watch/sm14136336
ネタに走りました。
もっとも、これは、「長い(50cm)シナモンブレードを作ってほしい」という依頼を受け、作ったものです。
実際に作ってみて、面白い物ができたので動画にアップロードしました。
赤色は、どう見ても工事現場で振られているあの棒です。
優れている点は、比較的在庫のある単4電池で動かせること。
最近、単1電池が品薄ですから…
単に工事現場で使うなら、素直に専用の棒を買ったほうがいいです。
動画見ました。技術力に尊敬します。それと同時に嫉妬も・・・
返信削除さて、本題なのですが、僕が作っているフルカラーサイリウムにはPIC12F629を使用しています。
IOピンのTRISレジスタの設定と、IOポートから入出力する方法がわかりません。
図々しいのですが、もし分かるようならご連絡頂きたいので、お願いします。
IOポート0~2はLEDへの出力で、IOポート3~4はスイッチ入力です。スイッチ側はプルアップし、LEDはトランジスタでスイッチングで点灯させる予定です。
takumaさん
返信削除動画を見ていただきありがとうございます。
ネタに走った動画ですが、少しでも面白いと思ってもらえると嬉しいです。
TRISレジスタはビット0から順番にポート0からポート5に対応しています。
1は入力、0は出力です。使わない場合は、とりあえずどこにもつながず出力にしておくのが良いでしょう。
つまり、TRISIO=0b00011000となります。
2進数で設定してあげると分かりやすいと思います。
100ページ以上の英語資料を読む気合があれば、一応こちらのデータシートの22ページ目にも書いてはいますが
慣れないときついかと思います…
http://ww1.microchip.com/downloads/en/DeviceDoc/41190G.pdf
それでは、応援しています!
わざわざご連絡ありがとうございます。
返信削除出力はGPIO=0x01(1ビット目の点灯)という感じで書くということはわかりました。入力をif分で書くときの判定条件の書き方がわからず、手を付けていない状態です。
申し訳ないのですが、そちらに関してもご教授いただけたら幸いです。
takumaさん
返信削除プログラムを1から作っているようで、感心します。
自分の場合、色々な人から持ってきた物をちょっと改造したところから始まったので、凄いと思います。
自分が勘違いしていたようで、ご迷惑をおかけしました。
既にレジスタを設定した物として、プログラム中では
GPIOn(nは0から5、ポート3ならGPIO3)として、まるで変数であるかのように扱うことができます。
つまり、IF(GPIO3==1){GPIO0=1;}とすると、
ポート3が1(HI)ならポート1を1(HI)にする、という具合です。
出力は、もちろんGPIO=0x01という具合に書いても大丈夫です。
また分からなくなったらお答えします~