#freeze
閲覧総計:&counter();  (本日:&counter(today);  昨日:&counter(yesterday);)~
~
後関氏の「電子工作の実験室」ページには、CCS C言語によるPICプログラミング~
のサンプルソースが多数掲載されています。~
http://picfun.com/ctechframe.html~

CCS C言語で書かれたソースを「MikroC」に書き換える際のポイントを~
紹介します。~
~
~

**入出力ピンの制御方法 [#k3a4436f]
http://picfun.com/c06.html
***出力【変数レジスタとして制御する方法】 [#dd5b9c34]
http://picfun.com/c06.html の1例目

 /** 
 * CCS C → MikroC書き換え例題1 
 * LEDの点滅 
 *【変数レジスタとして制御する方法】 
 * 
 * PIC 16F84A 
 * 発信器 10MHz 
 * 言語 MikroC v2.1 
 * Device Flags: _CP_OFF _PWRTE_ON _WDT_OFF _HS_OSC 
 * 
 * PortB 0:LED 
 */ 
 //MikroCではCCS Cの#記述部が不要 
 //#device PIC16F84 
 //#use delay(clock=10000000) 
 //#byte port_b=6 
 void main(){ 
   TRISB = 0;     //set all output 
   while(1){      //endless 
     PORTB = 0xff;  //all led on 0と1が逆 
     Delay_ms(500); //wait 0.5sec 
     PORTB = 0;   //all led off 0と1が逆 
     Delay_ms(500); 
   } 
 }

★この情報は役に立ちましたか?
#vote(はい[54],普通[4],いいえ[16])
~

***出力【ビット制御関数による制御方法】 [#x02bbe6c]
http://picfun.com/c06.html の2例目

 /** 
 * CCS C → MikroC書き換え例題2 
 * LEDの点滅 
 *【ビット制御関数による制御方法】 
 */ 
 //MikroCではCCS Cの#記述部が不要 
 //#include <16f84.h> 
 //#use delay(clock=10000000) 
 void main(){ 
   TRISB = 0;     //set all output 
   while(1){     //endless loop 
     PORTB.F0 = 1; //led on 
     Delay_ms(500); 
     PORTB.F0 = 0; //led off 
     Delay_ms(500); 
   } 
 } 

★この情報は役に立ちましたか?
#vote(はい[4],普通[0],いいえ[3])

~

***入力【変数レジスタとして制御する方法】 [#qea5869a]
http://picfun.com/c06.html の3例目

 /** 
 * CCS C → MikroC書き換え例題3 
 * スイッチ入力 LED点灯 
 *【変数レジスタとして入力する方法】 
 */ 
 //MikroCではCCS Cの#記述部が不要 
 //#device PIC16F84 
 //#byte port_a=5 
 //#byte port_b=6 
 void main(){ 
   TRISA = 0xff;   //set all input 
   TRISB = 0;     //set all output 
   while(1){     //endless 
     PORTB = PORTA; 
   } 
 } 

★この情報は役に立ちましたか?
#vote(はい[1],普通[0],いいえ[1])

~

***入力【ビット制御関数による制御方法】 [#l8c54e51]
http://picfun.com/c06.html の4例目

 /** 
 * CCS C → MikroC書き換え例題4 
 * スイッチ入力 LED点灯 
 *【ビット制御関数により入力する方法】 
 */ 
 //MikroCではCCS Cの#記述部が不要 
 //#include <16f84.h> 
 void main(){ 
   TRISA = 0xff; 
   TRISB = 0; 
   //MikroCではCCS Cの#記述部が不要 
   //#use fast_io(a) 
   //#use fast_io(b) 
   while(1){        //endless
     PORTB.F0 = PORTA.F0; 
   }
 }

★この情報は役に立ちましたか?
#vote(はい[4],普通[0],いいえ[1])