[][mobile][Homepage][BBS][Blog][YouTube][asablo]

過去の記事の検索が簡単にできるよ (・∀・) 例 ランチャー9
カスタム検索

PIC16F877Aボード2010/03/10 13:21:37

PIC16F877Aボード
ある案件を依頼されて、色々製作。その中のコントローラ基板として、今更ながら16F877Aを使ってボードを配線する。まだこれは未完成で、LCDをとりあえず表示させただけである。
内蔵オシレーター無しだが、秋月で16F877Aが300円で買える事もあり、これを利用した。いや、16F887 (pdf)買った方が良かったのは内緒だ。200円かよ orz 
pickit2での書き込みは16F877無印だと40秒以上もかかるが、16F877Aだと10秒も掛からないで書き込める。

16F877無印データシート(pdf)
16F877A Datasheet

ただ、手持ちに16F877無印も数個あるので、最後に完成したらそれを使い切るつもりだ。A付きと無印の内部の違いは、コンパレータの有無である。 そこで、それも利用できるように最初の初期部分に以下のコードを書き込む。
#if defined(_16F877A)
CMCON = 0x07; //全てデジタルI/Oとして使用
#endif
こうすれば、デバイスを変更したときでもソースを変えずにビルドできる。 
※16F877Aのコンパレーターはリセット時は0x07になっていたので、これ要らない orz

今回の案件は正確な時間管理が必要な装置なので、クロックには秋月で安価に手に入る12.8MHz高精度水晶発振器を原発として使う。 オシロで波形を確認して、電源側に20KΩ、グラウンド側に10KΩでバイアスをかけて、出力を直接PICに入れて使用した。この波形、結構なまっているんだな。出力も小さいので、バッファを入れたほうがいいかもしれない。
 →そのままでも動くようだが、念のため74LCX14でバッファを入れ、電源側の20kΩを10kΩに変更し、ヒステリシス領域を通過するように修正。

RA4を出力で使用するときのオープンドレインにはハマったよ orz

以下は私の覚書。

12.8(MHz)/4=3.2(MHz)、1/3.2(MHz)=312.5ns
1msを得るには、
 (1 x 10^-3) / ( 312.5 x 10^-9)=3200
3200カウントで1msが生成できることになる。

[PR] 送料無料新製品想定外究極の100Msサンプリング25MHzカラーポータブルデジタルオシロスコープフルセットPDS5022セール品: ¥ 32,800
[PR] 学習用オシロスコープ2MHz
[PR] 電気に弱い人にもわかるオシロスコープ入門―2現象オシロスコープの簡単操作ガイドブック




Google
www Blog HP BBS


air_variableサイトをまとめて検索 
カスタム検索
[][admin][mobile][Homepage][BBS][Blog][YouTube][asablo]