#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(はい[19],普通[7],いいえ[15])
- 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};
- 内臓はひどい --  &new{2009-01-01 (木) 22:01:35};
- 内臓→内蔵に変更しました。お恥ずかしい。 -- [[PICとMikroC]] &new{2009-05-30 (土) 11:11:13};

#comment_nospam

* 発光ダイオード(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(はい[13],普通[0],いいえ[6])
- とても有効でした。ありがとう! -- [[bentenkids]] &new{2010-02-22 (月) 22:42:15};
- hiroshiさん、よろしく 新しく単行本をかいましたが、microCの入手が出来るか?心配です。79歳の老人だから、がんばるつもりです。 援助を待ちます。 -- [[hiroji]] &new{2010-03-29 (月) 11:40:29};

#comment_nospam