SSブログ

ランタンLED流用 [電子工作]

久しぶりの電子工作
まだ環境が十分でないので、簡単なところで、18ピン16F1827が秋月で110円と安価なので試してみる。書き込み器PICKit2のAP,デバイスファイルを更新して新デバイスが使える様になった。

MPLAB IDE(V8.30)
HI-TECH C Compiler for PIC10/12/16 MCUs Version 9.83
PICKIT2 2.61
Device  1.62.01
Firmware 2.32
ledonoff.jpg16F1827.JPG

100ショップダイソーにて4LEDランタン購入。16F1827にて、4個のLEDを順次on/offするようにする。ランタンを分解し、LEDパターンをカットし、PICと接続。ランタン組み込みはこれから。
4LED.JPG



/*******************************************************************************
* タイマー割込みを使って4個のLEDを順に点滅 *
* PIC 16F1827 *
* MPLAB IDE(V8.30) *
* HI-TECH C Compiler for PIC10/12/16 MCUs Version 9.83 in Lite mode *
*******************************************************************************/
#include int Count ; //Int count int LEDcnt; //LED count // config 1 __CONFIG(CLKOUTEN_OFF & FOSC_INTOSC & FCMEN_OFF & IESO_OFF & BOREN_ON & PWRTE_ON & WDTE_OFF & MCLRE_OFF & CP_OFF & CPD_OFF) ; // config 2 // PLLEN_OFF // STVREN_ON // LVP_OFF // WRT_OFF // BORV_HI __CONFIG(PLLEN_OFF & STVREN_ON & WRT_OFF & BORV_HI & LVP_OFF); /******************************************************************************* * INT timer * *******************************************************************************/ void interrupt InterTimer( void ) { if (TMR2IF == 1) { // Timer2? Count++ ; // TMR2IF = 0 ; // Timer2 INTFlag reset if (Count >= 24) { // 200ms Count = 0 ; LEDcnt++; } } } /******************************************************************************* * main * *******************************************************************************/ void main(void) { int wk; OSCCON = 0b01110010 ; // 内部クロックは8MHzとする ANSELA = 0x00; // AN0-AN4 はデジタルI/Oとする ANSELB = 0x00; // AN5-AN11はデジタルI/Oとする TRISA = 0x00; // out port(RA5/MCLは入力) TRISB = 0x00; // out port PORTA = 0x00; // PORTB = 0x00; // T2CON = 0x07; // TMR2プリスケーラ値を16倍、ポストスケーラ値は1:1の設定 PR2 = 249 ; // タイマーの周期を設定(1000Hzで設定) TMR2 = 0 ; // タイマー2の初期化 Count = 0 ; // 割込み発生の回数カウンターを0 TMR2IF = 0 ; // タイマー2割込フラグを0 TMR2IE = 1 ; // タイマー2割込みを許可 PEIE = 1 ; // 周辺装置割り込み有効 GIE = 1 ; // 全割込み処理を許可 while(1) { wk=LEDcnt &0x03; switch (wk){ case 0: PORTB=0x10; //RB4 break; case 1: PORTB=0x20; //RB5 break; case 2: PORTB=0x40; //RB6 break; case 3: PORTB=0x80; //RB7 break; default: PORTB=0x00; break; } // switch } } /////////////////////////////////////////////////////////////////////////////// :0400000080312A28F9 :10000800803120007F08F400911C0B280C2826283A :100018000130F0070030F13D91107108803AFF007F :1000280080307F02031D1A2818307002031C1D2817 :100038001E282628F001F1010130F2070030F33DB7 :100048002628262874082000FF000900880180312E :10005800772872302100990023008C018D0121003E :100068008C018D0120008C018D0107309C00F93036 :100078009B009A01F001F1019110210091140B17D6 :100088008B1703307205F50000307305F600602801 :10009800103020008D004528203020008D00452894 :1000A800403020008D004528803020008D004528F4 :1000B80020008D01452845287608003A031965284F :1000C8005C287508003A03194C28013A031950288E :1000D800033A03195428013A031958285C2845287B :1000E800452880312A28F001F101F201F3012000AE :0400F80080312D28FE :020000040001F9 :04000E0084CFFFDAC2 :00000001FF
タグ:pic 16F1827
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:趣味・カルチャー

nice! 0

コメント 0

コメントを書く

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

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

トラックバック 0

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