• 締切済み

マイクロチップ社PIC用の Cコンパイラについて

今までPICのプログラムを作るのにマイクロチップ社のアッセンブル言語を使っていましたが、今後もう少し複雑なプログラミングをしようと思っているのでC言語のコンパイラを購入しようと思っています。 ここで結構迷いまして、どのメーカーのコンパイラがいいか色々な意見を聞きたいために書き込みをしました。 コストパフォーマンスで考えていた候補が CCS-CかMikroCです。 試しにMikroCを使ってみたところ確かにあっという間にちょっとしたプログラムが作れるので快適なのですが、ソフト上のシミュレーション機能で変数の変化を見ると時々挙動が変だったりするのが気になります。 (知っておくべき知識があるのかバグなのかはわかりません)。 また、CCS-Cは若干値段が高く癖のあるC言語ということを聞きますが、人気があるように思えます。私は癖があってもそれを覚えればいいと楽観的なのですが・・。 PIC用のCコンパイラに見識がある方がおられれば意見をお聞かせいただければと思います。 こういうところはかなり問題だとか、こういう機能はすごく便利だとか、こっちの方がこうだから絶対お勧めだとか、なんでもいいので教えていただければ幸いです。 よろしくお願いします。  

みんなの回答

  • bug_bug
  • ベストアンサー率78% (36/46)
回答No.1

私はサードパーティのコンパイラを購入するメリットをあまり感じません。趣味レベルであればMicrochipからのサポートを期待できる純正のMCCシリーズか、先日買収されたHi-Tech社のコンパイラのそれぞれお試し版を利用します。 Lite版や評価期間を過ぎた後は最適化が効かなくなりますが、ROMサイズ等の問題であればデバイス選定の時点で大きなものを選んでおけば良いことですし、サードパーティを選ぶ際との大きな違いは付属するライブラリの利便性ですが、PICの中身が分かってしまえばライブラリの仕様を確認するより自分で組んだ方が速いですし。 お金を掛けてでも存分にPICを楽しみたいのであれば、なおの事純正サポート対象のコンパイラを選ぶべきかと。 ちなみに業務での選択基準は短納期を実現する為、利用可能なライブラリやフレームワークの必須とする環境と、想定されるコンパイラのバグとのトレードオフで考えてます。おおむね純正に落ち着きますね。 コンパイラを購入したところでモノづくりのスキルは上がりませんので、私であればコンパイラはお試し版で充分。その代わりに書籍や評価ボード(ハード)にコストを回すと思います。

super4king
質問者

お礼

そうですね、一定の予算で書籍とコンパイラの有用さを天秤にかけると迷いとかジレンマが生じます。 とりあえずお試し版で試してみて処理時間とかコンパイルの容量に問題が生じてきた時点でコンパイラを買おうかなと考え始めました。 ちなみにCCS-Cの人気がある理由はご存じですか? 書籍でも紹介されている場合もありますし、 マイクロチップ社のショップでもサードパーティーのソフトとして販売しているということはやはりそれなりに優良なソフトなんですかね?

関連するQ&A

  • PICのCコンパイラーについて

    PICのCコンパイラーでどれを使うかで迷っています。 高価なものでCCS社やmicrochipのものがいいかなと思うんですが、 やはり安く済まそうと思うとmikroCやBoostCがやすいかなって思います。安いにこしたことはないんですが、購入後に不便に感じて、あっちのコンパイラーをにしとけば良かったなどと後悔したくもありません。 実際、ある程度の経験がないとそれぞれの(コンパイラーの)長所と短所が見えてこない気がしましたので、お伺いします。 説明がわかりづらいかもしれませんが、よろしくお願いします。

  • PIC用のフリーCコンパイラはありますか?

    PICでプログラムを組みたくて、本屋で 「C言語によるPICプログラミング入門」 を買ってきました。 さて早速取り組もうと思ったのですが、いきなりCコンパイラは有料(高価)であるとのこと・・・T-T そこでフリーのCコンパイラについてご存知の方がいらっしゃいましたら紹介して頂けないでしょうか? 以上よろしくお願いします。

  • pic16FのコンパイルにCCSのCコンパイラ

    pic16FのコンパイルにCCSのCコンパイラをMPLABに統合した環境で使用しています。 大文字と小文字の区別をつけることは出来ないのでしょうか? 誰か教えてください。

  • PICプログラム C言語とアセンブラ言語

    PIC18シリーズを使用して、プログラミングをしています。コンパイラはCCS-Cです。今まではすべてC言語で書いてきたのですが、アセンブラでしか設定ができない部分があり、今までのC言語のソースに加えてアセンブラを組み合わせようと思っているのですが、C言語とアセンブラを組み合わせることは可能なのでしょうか?

  • PICのI2C通信のプログラムについて

    I2Cの同報機能を使いたいのですが、プログラムの書き方がよく分かりません。 後閑さんの電子工作の実験室も見たんですが、そこに書いてあったのは多分アセンブラのプログラムで、CCSを使っている自分には理解できませんでした。 CCSで同報機能は使えるのでしょうか?もし使えるのなら、プログラム例などをいただけると助かります。 ちなみに、使っているPICはマスターが16F873でスレーブが16F819です。 よろしくお願いいたします。

  • PIC16F84AのデバイスでC言語を用いて音を出したい

    PIC16F84AデバイスでCCS社のCコンパイラーを用いて音を出したいのですが、C言語の記述が分かりません。 音は、圧電ブザーで、Bポートの1つを使います。 Aポートの1つにスイッチを取り付け、スイッチが入ったら、音を鳴らしたいのですが、C言語で音階が記述できるんでしょうか? 簡単で良いので、C言語で、音を鳴らす記述を教えていただけないでしょうか?

  • PICライタ (C言語→HEXファイル)

    今PICライタについて独学で勉強しています。 今ソフト的には秋月のPICライタおよび、MPLAB使ってます。 しかし、MPLABがC言語読み込めないため迷っています。 そこで質問なんですが (1) C言語をアセンブラ言語に変換する無料ソフトありますか? (2) (1)をあきらめたとしてアセンブラ言語で書くとして、アセンブラ言語でPICのプログラム書くための、わかりやすい本などご存知ですか? やっぱりCコンパイラを買うしかないのでしょうか??

  • PICでの入力カウントについて

    PICを最近はじめました。 スイッチを10回押せば、出力がONするようなプログラムを作るにはどうすればよろしいでしょうか? PICは16F819で、コンパイラはCCS社のPCMを使用しています。 わかる方、よろしくお願いいたします。

  • PICマイコンでLEDの点滅をC言語で記述法を教えてください

    PICマイコン(PIC16F84A)にLEDを1個接続し点滅だけのプログラムをC言語で記述を書きたいのですが、教えていただけないでしょうか? CCS社のコンパイラを用いた時の記述の書き方を教えていただけないでしょうか? 条件は、 ・電池を繋げるとLEDが点滅、スイッチ素子は用いません。 ・LEDは1秒間隔で点滅し、永遠に点滅 ・LEDは、PICマイコン(PIC16F84A)の9番ピン(RB3に該当)に接続 ・水晶発振子は、10MHzを使用。 ・コンパイラは、CCS社を使用 私が分かる範囲は下記なのですが、これから先の記述方法が分かりません。 #include <16f84a.h> #fuses HS, NOWDT, NOPROTECT #use delay(clock=10000000) #byte port_b=6 main() { この中身の記述方法が分かりません。 教えていただけないでしょうか? } よろしくお願いします。

  • picの連射状態について

    閲覧ありがとうございます。 現在学校でPICマイコンを使った授業をしており、スイッチを押すと7セグLEDがカウントアップ されるものを作っているのですが、どう作っても連射状態(スイッチを押しっぱなしだと勝手に カウントアップされる)になるのですが、これをスイッチを押すたびにカウントアップするように するにはどうすれば良いのでしょうか? 言語はCで使用PICは16F84A、環境はMPLABでCCS-Cコンパイラを使用 しています。

専門家に質問してみよう