閲覧総計:18474  (本日:1  昨日:0)



後関氏の「電子工作の実験室」ページには、CCS C言語によるPICプログラミング

のサンプルソースが多数掲載されています。

http://picfun.com/ctechframe.html

CCS C言語で書かれたソースを「MikroC」に書き換える際のポイントを

紹介します。




入出力ピンの制御方法

http://picfun.com/c06.html

出力【変数レジスタとして制御する方法】

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); 
  } 
}

★この情報は役に立ちましたか?

選択肢 投票
はい 61  
普通 9  
いいえ 61  


出力【ビット制御関数による制御方法】

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); 
  } 
} 

★この情報は役に立ちましたか?

選択肢 投票
はい 4  
普通 0  
いいえ 4  


入力【変数レジスタとして制御する方法】

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; 
  } 
} 

★この情報は役に立ちましたか?

選択肢 投票
はい 1  
普通 0  
いいえ 2  


入力【ビット制御関数による制御方法】

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; 
  }
}

★この情報は役に立ちましたか?

選択肢 投票
はい 6  
普通 0  
いいえ 2