Tag Archives: PIC16F88

LEDフラッシャーIC「M34-1L,2L,8L」の点滅をPICで再現する

2012年11月25日 (カテゴリ: PIC:, )

LEDを点滅させるためのICとして、M34シリーズの三端子LEDフラッシャ-ICというものが有ります。 これは、トランジスタのように3本の端子が出ているパーツで、接続するだけで指定された周期でLEDを点滅させる事が出来ます。 点滅の周期は型番によって異なり、以下の通りとなっています。 M34-1L 1.0 秒周期 ON-OFF比率 = 1:8 M34-2L 0.5 秒周期 ON-OFF比率 = 1:8 M34-4L 0.25 秒周期 ON-OFF比率 = 1:8 M34-8L 0.125秒周期 ON-OFF比率 = 1:2 実際にどんな感じで点滅するか、YouTubeに動画があがってました。 …


続きを読む

[PIC]16F88でRB6,RB7が入出力ピンとして使えない時にチェックする事

2012年10月7日 (カテゴリ: PIC:, )

PIC16F88等の18ピンのPICを使用している場合、RB6,RB7ピンが入力として使えない場合があります。 このような際ににチェックする事を羅列してみました。 RB6,RB7が入出力ピンとして使用できないときのチェックポイント Check1:アナログ入力ピンとの競合 RB6,RB7は、アナログ入力のAN5,AN6と共用になっています。 PORTBのデジタル入出力として利用したい場合は,ANSELレジスタの値を0にする必要があります。 [PIC]PIC16F88でPortAを入出力ピンとして動作しない場合にチェックする事 HI-TECH Cによるコード例 void main( voi…


続きを読む

[PIC]PIC16F88でPortAが入出力ピンとして動作しない場合にチェックする事

2012年10月6日 (カテゴリ: PIC:, )

PIC16F88にあるPortAのうち、RA0-RA4はアナログ入力と兼用になっているのですが、デフォルトではアナログ入力側が有効になっているのでデジタルのI/Oとして使用できません。 この為、ANSELレジスタ(Analog Select Register)をデジタル入出力として設定する必要があります。 ANSELレジスタ(0x9B) bit7 unimpremented bit6 ANS6 bit5 ANS5 bit4 ANS4 bit3 ANS3 bit2 ANS2 bit1 ANS1 bit0 ANS0 ANSnはANnピンのモード指定で、0でデジタル入出力、1でアナログ入出力となりま…


続きを読む

[PIC16F88]HI-TECH CでTimer1割り込みを使用する

2012年10月6日 (カテゴリ: C, PIC:, , )

PICの16F88はTimer0,1,2という3つのタイマーモジュールを持っており、それぞれのタイマーは役割が異なっています。 今回は、16F88でHI-TECH Cを使用してTimer1割り込みを利用し、0.5秒周期でLEDを点灯させてみます。 クロックは16F88の内部オシレータを8MHzで駆動させます。 #include <stdio.h> #include <htc.h>   #define TIMER_INTERVAL (0xffff – 20000) // TMRモジュールのカウント初期値 // 8MHz, 1/1プリスケーラで、10msecごとに…


続きを読む

[PIC] 16F84A->16F88で,ピンに追加された機能を確認する

2012年9月2日 (カテゴリ: PIC, 未分類:, )

PICの入門向け書籍でよく紹介されているPIC16F84Aですが、16F84Aとピン互換がありながらプログラムメモリが4倍に増えたPICに16F88が有ります。 16F88を単に84Aのプログラム容量が大きい版として使うのもよいのですが、機能も追加されています。 今回はデータシートのピンアサインを元に、16F88で増えた機能を確認します。 まず、こちらがPIC16F84Aのピンアサインです。 で、こちらが16F88です。 16F88を見ると分かるように、各ピンに対して様々な機能が追加されています。 慣れればピンの名称だけで機能が類推できますが、最初のうちは略称だけでは内容が分からないので、Pi…


続きを読む