#freeze 閲覧総計:&counter(); (本日:&counter(today); 昨日:&counter(yesterday);) PICプログラミングの基本中の基本。LEDを点灯する。点滅させる。 *発光ダイオード(LED)を点灯する [#e055f4fd] ~ |&attachref(PIC_LED.jpg,zoom,150x150,button){新しい写真添付};|&attachref(PIC_LED_kairo.jpg,zoom,150x150,button){新しい写真添付};| /** * 発光ダイオード(LED)の点灯 * * PIC 16F628A * RB3:LED(緑) * 発信器:内臓4MHz * 電源:乾電池4本(実測5.4V) * * Device Flags: _BODEN_OFF _CP_OFF _DATA_CP_OFF _PWRTE_ON * _WDT_OFF _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT * * 言語 MikroC v2.1 */ void main() { //メイン プログラム PORTB = 0b00000000; //PORTBの中身をきれいにする TRISB = 0b00000010; //RB1は1:入力、他のPORTBは0:出力に設定 PORTB.F3 = 1; //RB3をON(LED点灯) } //メイン プログラム終了 ★この情報は役に立ちましたか? #vote(はい[3],いいえ[3]) - Device Flags=コンフィギュレーションワードは、プログラムソースに書き込むことは出来ないのですか?できればソースに含めた方がいいかなと思います。 -- [[Hiroshi]] &new{2007-09-19 (水) 20:41:49}; - Device Flags=コンフィギュレーションワードは、設定ウィンドウで設定するのですね!納得!! -- [[Hiroshi]] &new{2007-09-19 (水) 21:12:15}; - Hiroshiさん、コメントありがとうございます。 私も「Device Flags=コンフィギュレーションワード」情報は他社のCコンパイラと同様に ソースの中で設定し、保管・管理する方式の方が良いと感じます。この件はMikroCの欠点 と感じ、こちらに書かせてもらいました。 http://kuri6005.sakura.ne.jp/pic/pukiwiki.php?MikroC%A4%CE%C6%C3%C4%A7 コンパイラの設計にも色々あって、MikroCは、この様にしているのだとは思いますが。 -- [[PICとMikroC]] &new{2007-09-20 (木) 07:56:24}; ~ * 発光ダイオード(LED)の点滅 [#jea4cdb9] 1秒点灯、1秒消灯を繰り返す。 /** * 発光ダイオード(LED)の点滅 * * PIC 16F628A * RB3:LED(緑) * 発信器:内臓4MHz * 電源:乾電池4本(実測5.4V) * * Device Flags: _BODEN_OFF _CP_OFF _DATA_CP_OFF _PWRTE_ON * _WDT_OFF _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT * * 言語 MikroC v2.1 */ void main() { //メイン プログラム PORTB = 0b00000000; //PORTBの中身をきれいにする TRISB = 0b00000010; //RB1は1:入力、他のPORTBは0:出力に設定 do { //doとwhileの間を繰り返す PORTB.F3 = 1; //RB3をON(LED点灯) Delay_ms(1000); //1秒(=1000ミリ秒)待つ PORTB.F3 = 0; //RB3をOFF(LED消灯) Delay_ms(1000); //1秒(=1000ミリ秒)待つ } while(1); //doとwhileの間を繰り返す } //メイン プログラム終了 【16F84Aの場合】 /** * 発光ダイオード(LED)の点滅 * * PIC 16F84A * RB3:LED(緑) * 発信器:外部10MHz * 電源:乾電池4本(実測5.4V) * * Device Flags: _CP_OFF _PWRTE_ON _WDT_OFF _HS_OSC * * 言語 MikroC v2.1 */ void main() { //メイン プログラム PORTB = 0b00000000; //PORTBの中身をきれいにする TRISB = 0b00000000; //PORTBは8個全て0:出力に設定 do { //doとwhileの間を繰り返す PORTB.F3 = 1; //RB3をON(LED点灯) Delay_ms(1000); //1秒(=1000ミリ秒)待つ PORTB.F3 = 0; //RB3をOFF(LED消灯) Delay_ms(1000); //1秒(=1000ミリ秒)待つ } while(1); //doとwhileの間を繰り返す } //メイン プログラム終了 ~ ~ ★この情報は役に立ちましたか? #vote(はい[10],いいえ[4])