SSブログ

S88 基板 フル装備(16ポート)の検討 その2 [S88]

 S88 フル装備(16ポート)と言いましたが、14ポートとかになりそうです。ちょっとPICのことについて勉強を始めています。まず、何も考えずに秋月電子に行って、A/Dが多そうな40PinのPicを三種類買ってきました。ATMEGA328Pのスペックに比べ、なんか安いような気がして少々タガが外れてしまいました。
 買ったのは、
16F887-I/P
16F1939-I/P
18F4550-I/P
 887と1939はA/Dが14chついています。現在はまだ「捕らぬ狸の皮算用」ですが、直繋ぎすれば14PortのS88が完成しそうです。4550はUSBにつなげられるとか書いてあったのでつなげたらいいなあとよく考えずに買っています。
 家についてから、まじめにネットでPICのことを勉強し始めて(ネットサーフィンしているだけ)、なんか、PICはシリーズごとに違って、違いをちゃんと理解しないとさっぱり動かない的なことが書いてあり、これは少々怖いかもと思いました。
 Nucky様のデコーダにプログラムを書き込むために、すでにマイクロチップのIDEはインストールしてありますので、あとは、どうにかプログラムを書いて、実験あるのみです。
 ネットをななめ読みすると、Cで書くプログラムは、ArduinoにはなくATMega328Pの機能を使う時と使い方が似てそうなことが分かりました。(よくわからんPortのBitをいっぱいいじればよさそう。Main文が一回呼び出されるだけなので、Setup,Loopと来るArduinoよりもCプログラムとしては、まんまですねという感じ)
 で、デバイスは、16F1939を使うことに決めました(今日のところは)。理由は簡単で、きむ茶工房ガレージハウス様のページが分かりやすかったからです。あと、データシートも日本語があったし。
 きむ茶工房様のPICの動かせ方入門ページから16F1938のことが詳しく書いてあります。16F1938と今回買った16F1939はポート数が違うだけで似たような動きらしいです。
 今回のマイコンの機能としては現在のATMega328Pのものの原理をほぼそのまま使用する予定ですので、ATMega328P→PIC16F1939で
(1)A/D変換機能・・・ATMega 10bit *6ch →PIC 10bit*14ch
(2)S88通信(シリアル転送)・・・ATMega 割り込み2つ→PIC 割り込み2つ 使用する
(3) LED点灯・・・ATMega トランジスタを使用して6ch同時ドライブ→PIC マイコンのドライブ能力だけで1chずつドライブ、
というつもりです。
 でも、まずはIDE(MPLAB X IDE v3.20)にXC8 V1.36のコンパイラーを入れてLチカからやってみました。
 実験風景は以下。
 re_DSC00465.jpg
 LEDの光らせ方(端子のH,Lの設定の方法)とDelayの使い方はわかりました。
 ソースは、こちらを参考にしています。
 次はLEDをナイトライダーさせたり、A/Dの入力を試したりかなあと思います。
 そして、割り込みを使ったシリアル転送を試します。
 つまり、まだまだ先は長そうです。


 
コメント(2)  トラックバック(0) 

コメント 2

あやのすけ

ちょっと前のPIC用Cコンパイラは高かったし(最近フリーになった?)書き込む時は、高電圧が必要だったりしてライターが作りにくかったけど、最近は改善されたのでしょうか。
(そんなことがあって、ずっとATMEL使いなのですがw)
by あやのすけ (2016-02-14 16:00) 

fujigaya2

あやのすけ様

コメントありがとうございます。

今回使ったコンパイラは純正のフリーのようです。有料のPro版とかもあるようです。
書き込みは5V(外部から供給)で行いました。
今のところ、Pickit3(バッタもん)を使ってATMEGA328のような感覚で書き込めています。
(PICは使い始めでよくわかっていません)
by fujigaya2 (2016-02-14 22:11) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。