Sahara's WebLog

日記のような、備忘録のような、うらみつらみのような、自慢のような…。

もし、これからPICを始めるなら、まず何をそろえる?(作例 PIC16F1827 XC8)

もし、これからPICを始めるなら、まず何をそろえる?」から作例の部分だけを独立させた。

言いっ放しもなんなので、つたないサンプル(すべてPIC16F1827用 XC8環境用)を書いておくことにした。


※LEDが1秒間隔で点滅する。
ブレッドボード上の回路
pic16f1827_led_01
実物の写真
20150918161726
上のようにジャンパーケーブルで直接PICkit 3に接続してもいいし、下の右下のようなコネクターを自作してもいい。
20140309163904
プロジェクトファイル
※下の3例の回路は上の絵と同じ
※方法は異なるが、どれも1秒間隔でLEDが点滅を繰り返す
PIC16F1827_LED_delay_1 delayを用いたもの PIC16F1827_LED_delay_1 (6051 ダウンロード )
PIC16F1827_LED_TMR0_1 TIMER0の割り込みを用いたもの PIC16F1827_LED_TMR0_1 (6101 ダウンロード )
PIC16F1827 LED TMR2 2 TIMER2の割り込みを用いたもの PIC16F1827_LED_TMR2_2 (5348 ダウンロード )
※PWMで明るさを変更したもの(じんわり消えてぱっと点く「PIC16F1827 PWM」参照) PIC16F1827_LED_PWM_2 (11437 ダウンロード )


以下、その他のPIC16F1827を使った簡単な作例を列挙する。


※圧電素子をピピッと鳴らす。
※回路は上の絵のLEDの換わりに圧電サウンダ(例えばこれ30円)を取り付ける(+-の極性は無い)以外は全く同じ
※ピピッ、ピピッと繰り返し鳴る(こちらの記事「PIC16F1827 + PKM13EPYH4000-A0(圧電スピーカー)」も参照のこと)
[BOOTH PIC16F1827_Sounder_TMR2]


※FT232RLモジュールでPCにシリアルでAD変換のデータを送る
「PIC16F1827 – ADC – Bit Banging UART -> FT232RL -> PC」参照
半固定抵抗(例えばこれ)FT232RL搭載小型USB-シリアルアダプタ
が必要。
MPLAB Code Configurator(MCC)を使って楽をしたバージョンも。
PIC16F1827 – AD変換結果をシリアル-USB変換モジュールで出力する。-


※CdSで明るさの変化を読み取ってLEDを点灯させる。
CdSで拾った明暗をPICに取り込む with PIC16F1827」参照のこと。
秋月のCdSセル(30円)を使っている。
リンク先の記事では今見ているこの記事に出ているのとは違うLEDと抵抗を使っているが、買い直す必要は無く差し替えれば同様に動く。
ただし、100k~200kΩ程度の抵抗が1つ追加で必要。[BOOTHで販売中 PIC16F1827_CdS_LED_01]


※ステッピング・モーターの駆動テスト。
ステッピング・モーター 再び」の一番下のリンクから。
新たにステッピング・モーターSPG20-1308ステッピング・モーター・ドライバーTB6674PGが必要。
リンク先の記事で使っている物と型番が違うが、モーターはギア比が違うだけ、モーター・ドライバーは代替品なので、そのまま動くはず。


※定番LCDのSC1602に文字を表示する。
PIC16F1827 + SC1602B」を参照のこと。
LCDキャラクタディスプレイモジュール(16×2行バックライト無)500円などを用いる。
コントラストの調整に半固定抵抗(20円)が必要。
Data:LATB4-7, RS:LATB1, E:LATB0 のバージョン[BOOTHで販売中 SC1602_08]
Data:LATA0-3, RS:LATA6, E:LATA7 のバージョン[BOOTHで販売中 SC1602_09_A0-4_A67]


※7セグメントLEDに数字を表示する。
秋月の小さな7セグメントLEDに数字を表示する例を作ってみた。
回路図などの詳細は「PIC16F1827 + 2381B(7 seg x 3 LED)」を参照のこと。
回路図はこちらに。
0~999まで繰り返し表示する。 PIC16F1827_7Segx3LED_delay_6 (9480 ダウンロード )
3分カウント・ダウン表示。 PIC16F1827_LED_TMR2_2_7Segx3_Count_down (10726 ダウンロード )
AD変換値の表示。 PIC16F1827_7Segx3LED_ADC_9 (8956 ダウンロード )
半固定抵抗を1つ追加しただけだが、回路図はこちらに。


※K型熱電対 + MAX6675モジュールとSPI通信して温度を表示する。
たとえばこれ(MAX6675 モジュール+ K タイプ 熱電対 センサー)をSPI通信でPIC16F1827につないで、データをFT232RL搭載小型USB-シリアルアダプタ経由でPCに表示する。
詳細は「PIC16F1503 or PIC16F1827 + MAX6675使用K型熱電対モジュール」を参照のこと。
MAX6675_02-1 (5241 ダウンロード )


※Nokia 5110 Graphic LCD というグラフィックLCDに文字や絵を表示させる。
ドライバICはPCD8544というもののようだ。
上に書いたSC1602よりもコンパクトなので、なかなか気に入っている。
PIC16F1827 + Nokia 5110 Graphic LCD (PCD8544)」を参照のこと。
ちなみに、ここではMPLAB Code Configuratorを使っている。


ここまでに登場したパーツ類一覧
PIC16F1827 1個 135円
PICkit 3 1個 5700円
ブレッドボード 1個 270円
ブレッドボード・ジャンパーコード 1セット 180円
高輝度5mm赤色LED 10個 150円
300Ω カーボン抵抗 100本 100円
圧電サウンダ 1個 30円
半固定抵抗 1個 40円
FT232RL搭載小型USB-シリアルアダプタ 1個 1868円、ただし海外通販なら300円台で入手可能
CdSセル 5mmタイプ 1個 30円
100kΩ カーボン抵抗 100本 100円
ステッピングモーター SPG27-1601 1個 350円
ステッピング・モーター・ドライバーTB6674PG 1個 200円
LCDキャラクタディスプレイモジュール(16×2行バックライト無)1個 500円
半固定抵抗1個 20円
小型3桁青色7セグメントLED表示器 2381B 1個 120円
MAX6675 モジュール+ K タイプ 熱電対 センサー 1個 2580円
Nokia 5110 Graphic LCD 1個 数百円から(eBayで206円で購入)
ちまちま少しずつ買いそろえる場合、小さなものなら定形外料金で買える共立エレショップがお勧め。
ある程度まとめて買うなら、送料を一律500円取られても秋月電子通商で買う方が他より安い。
先日1.9kgのバッテリーを購入したけどやっぱり送料は500円だった。


もし、これからPICを始めるなら、まず何をそろえる?」へもどる
リンク切れ、サンプルの不具合などは、下の「コメントを残す」からコメントをいただけると助かります。

このエントリーをはてなブックマークに追加

Posted under: これから始めるなら


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.