CCS C Compilerの概要と全体構成 


2018/6/26

【CCS社コンパイラ】(Custom Computer Services Inc.)



PIC用のコンパイラとして
私が選んだのは、比較的安定である
低価格である、組込み関数が
豊富であるなどの理由から、
CCS社のコンパイラです。



【入手方法】

日本の代理店もあり、オンラインでも容易に入手可能です。
下記の3種類があり別々に販売されています。

 ・PCB : 12ビットのPICベーシックシリーズ用のコンパイラ
 ・PCM : 14ビットのPICミドルシリーズ用のコンパイラ
 ・PCH : 16ビットの‘ICハイエンドシリーズ用のコンパイラ
 ・PCW : Windowsベースの統合環境でPCBとPCM両方を含む
 ・PCWH: Windowsベースの統合環境でPCB、PCM、PCHを含む
《オンライン入手先》
  ・CCS社
  ・Dontronics社

《日本の販売店》
  ・データダイナミクス社

《価格》
(オンライン注文) (データダイナミクス社)
  PCB  $125    PCB  \24,900
  PCM  $125    PCM  \24,900
  PCH  $175    PCH  \24,900
  PCW  $350    PCM  \59,000
  PCWH  $425    PCWH  \64,900

《個人輸入》
  個人輸入といっても、ただ上記のオンラインで注文を直接するだけです。
  フォームに記入するだけですので難しいことは何もありませんでした。
  私はCCS社に直接申し込みました。カードIDだけをFAXで別に送付してから、
  5日目には宅急便で自宅に届きました。素晴らしく早いと感心しました。 
  PCMの購入にかかった費用は 送料が$29で合計$128
  (当時で約1万5千円)でした。


【CCS C Compilerの特徴】

(1) MPLABとの統合環境が構築できる
  PCB/PCM/PCHをインストールしたあと、簡単にMPLABと統合できます。
  統合してしまうとMPLAB環境が主となりコンパイラは表からは明確には
  見えなくなります。
  またデバッグがMPLAB上でできるようになるので、非常に扱い易くなります。
  しかし、この時のデバッグはアセンブラベースとなりますので、コンパイラが
  生成するリストを使ってデバッグします。

(2) 豊富な組込み関数が用意されている
  RS232シリアル通信、A/D変換、I2C、入出力ピン制御、CCP制御などPICの
  周辺機能を直接制御できる多くの組込み関数が用意されており、
  プログラミングが非常に楽にできます。

(3) プロジェクトによる複数モジュールの自動リンク
  プロジェクトとして統合することで、プログラムを複数のモジュールに分割して
  作成し、あとでそれをつなぎ合わせるリンクができます。

(4) ビットデータ定義も可能
  データとして、1ビット、8ビット、16ビット、32ビットが扱える他に、32ビット
  の浮動小数点数も扱うことが出来ます。

(5) アセンブラ記述を挿入できる
  C言語のソースプログラムにインラインでアセンブル記述を挿入することが
  出来ます。また、C言語との変数渡しもサポートされており、自由に行き来が
  できます。

(6) 標準入出力デバイスが用意されている
  どのPICにでもピンを自由に指定できるRS232シリアル通信の標準入出力
  デバイスが使えるため、printf関数で簡単にパソコンとの通信が実現できる。

(7) 豊富な外部周辺デバイスのサポート
  PICの外部周辺デバイスとして接続される多くのICや機器を制御するための
  デバイスドライバ関数が提供されている。
  液晶表示器、シリアル接続メモリ、キーパッドなどがあります。

(8) 変数エリアの有効利用
  定数はプログラムメモリに格納し、一時変数は同じ変数エリアを共有するなど、
  少ない変数エリアを有効活用します。

(9) 割り込みサポート
  割り込み処理に必要なレジスタ待避復旧や、フラグのリセットなど必要な処理は
  自動的に作り込まれるため、割り込み処理作成が非常に楽にできます。

【CCS Cコンパイラの全体構成】

CCS社のCコンパイラは、PCB、PCM、PCH、PCW、PCWHの5つの種類で
構成されており、その関係は下図のようになっています。
つまり、

  PCBは12ビットのPICのBase Lineシリーズ用のコンパイラ
  PCMは14ビットのPICのMiddle Rangeシリーズ用のコンパイラ
  PCHは16ビットの‘ICのHighEndシリーズ用のコンパイラ

で、これらはいずれも単独では起動できないWindowsのDLLライブラリとして
提供されていて、Microchip社の統合開発環境であるMPLABと連動させる
ことで、Windows環境で動作します。

これに対し
  PCWPCWHはWindows環境での統合開発環境で、PCB、PCM、PCHを含み
  その他にプロジェクトスタータなどの自己完結型機能が含まれています。


《PCB、PCM、PCH、PCW、PCWHの関係》




★プロジェクトスタータ
  プロジェクトを生成するためのツールで、PICのハードの使用条件
  を指定して行くことで、ヘッダーファイルとプログラムのフレームを
  自動生成します。

★スーパーオプティマイザ
  もう一段のオブジェクトの最適化を行います。

★デバイステーブルエディタ
  新規にPICの品種が追加された時に、そのデバイスの基本仕様を
  あらかじめデータベースとして組込んでおくためのエディタです。





   次のページへ      目次ページへ