• 締切済み

PIC・AVRのC言語の初心者無向け勉強・参考本

まずカテゴリーがコンピュータのC C++になっていますが、PIC・AVRもこのカテゴリーで良いのか分からなかったので、間違いでしたらご指摘下さい。 PIC・AVRのC言語の初心者無向け勉強・参考本・シンプルなフリーコンパイラをご紹介頂きたく思います。 現在PICは、ほとんどがPIC Basic Proでプログラミングしています。 あとは、フリーで公開されているアセンブラ(ASM)をNotepadで自分の仕様に修正してコンパイルしています。 しかし、PIC24Fシリーズ以降はPIC Basic Proは対応しておらず、フリーで公開されているプログラムのほとんどがC言語です。 一様、PIC24Fシリーズが出た頃にHI-TECH C CompilerとPIC-Cで試しにコンパイルできるかやって見たのですが、多分設定の段階でミスってしまい再インストールやバージョンを変えても、上手くコンパイルできません。 その後、放置していたので今現在は試用期間切れになってしまっています。 AVRの方は(Arduinoが周辺キットが豊富みたいですが・・・)、 一様ライティング機器としてAVRISP mk2を購入しAVR Studio 6.1をインストールしてありますが、PICマイコン同様C言語は初心者で、自分でプログラムを書くことが出来ません。 また、PICとの使い勝手の違いからハード・ソフトの準備は出来ているものの、現状は宝の持ち腐れに近い状態です。 フリーで公開されているHEXファイルを書き込む程度にしか使ってません、多少の使用環境の違いの修正も、AVRの方も上手くいきません。 勉強不足・学力不足と言わざるを得ません。 長々と前置きを書いてしまいましたが本題です。 PICとAVR各々に特化したC言語の初心者向けの本を色々教えて下さい。 書店でC言語の本を探すとWindows用がほとんどで、「C言語ではじめるPICマイコン」みたいなタイトルの本を立ち読みしても、いまいちピンときません。 (AVR・Arduinoも同様です。) また、ソフトの方は出来る限りフリーソフトでシンプルで、HI-TECH C Compiler・PIC-C・AVR Studioみたいな開発環境向けソフトでなく、インストール後はドラッグ&ドロップするだけで、C言語ファイル(AVRの方はASMファイル用も)をコンパイルできる物を教えて下さい。 ※ 開発環境の機能の無い物ってのは都合良すぎるでしょうか?? 何卒ご教授のほど宜しくお願い致します。 m(_ _)m ※※※※※※※※※※※※ テスト用・実用的プリント基板の作製は、それなりの物を取り揃えておりますので、ご心配なさらずに・・・・ でも、こんな基板があると動作確認などに重宝しますと言った情報は大歓迎です。 (市販品・自作可能なプリント基板情報などなど)     

みんなの回答

noname#215107
noname#215107
回答No.1

PICやAVRのC言語の入門書は目的を果たすことだけしか考えていないので、プログラミング技術が身につきにくいと思います。 できれば純然たるC言語が動く環境があればいいのですが、Visual StudioなどのパソコンのC言語で文字の標準入出力ができるコンソールアプリケーションを作成するのをお勧めします。 パソコンなら、単純に数字や文字を入力し、計算や加工した結果を表示するなど、やってみたいことをすぐに実験で確かめられます。 AVRやPICマイコンでは、結果や計算途中の経過が分からないので、プログラムの途中の変数の変化などが分からず、間違いの究明作業では非常に困難を極めるからです。(キャラクタ液晶ディスプレイをデバッグ画面として使えば、まだましですが、非常に不便です) LSIC86試食版もおすすめです。これは25年前に私が初めて勉強に使ったCコンパイラで、なんと今でもダウンロードでき、Windowsでも動きます。 C言語をマスターしておけば、あとは、マイコン特有の特殊な制限だけを調べれば、いくらでも応用が効きます。

pc_net_sp
質問者

お礼

お礼が遅くなってすいません。 m(_ _)m 他の方の意見も待っていたのですが、呆れられたのかな?? でもやっぱし、Visual Studio(PC用C言語)から勉強した方が早いって事ですね!! もし良かったら、Visual Studio C言語 (PC用)の初級者向けと、中級者向けの推奨する書籍を教えて下さい。 PICBasicの方は、小学生の頃にPC-8800 Basicを独学勉強したので、PBPでも簡単に扱えました。 それ以後はBasicは出来てもC言語は苦手になりました。    

関連するQ&A

  • SHマイコンとPICマイコンとAVRマイコン

    SHマイコンとPICマイコンとAVRマイコン、どれがおすすめですか? どれも使い勝手等は同じですか?用途は、小指くらいの小型ロボットを制御することです。ラジコンからの信号を受け取って、信号の大きさに応じてDCモータの速度を制御することです。いま、マイコンボードのArduinoを使っているのですがNanoでも大きすぎるので、マイコンを使って回路を自分で作ろうと考えています。マイコンはH8は使ったことがあります。AVRは、Arduino IDEでArduino言語でしかプログラムしたことありません。 どうかご助言よろしお願いします。

  • AVR、ARM、H8、PICのプログラミング

    AVR、ARM、H8、PICのマイコンは、同じ言語(例えばC言語)でプログラミングするにしても、プログラミングの仕方はそれぞれ全然違うのでしょうか?違うとしたら何がどう違うのでしょうか?(信号の入出力をするための文法などでしょうか?)また、どれかのマイコンを使えるようになれば、他のマイコンは割とすぐ使えるようになるのでしょうか?

  • avr と pic の利点

    こんにちは マイコンの勉強を始めようかと考えています。 そこで、実際に動かしてみようと思いますが、 picかavrで迷っています。 昔のz8?とかでもいいのかどうか・・・ そこらへんお詳しい方がいたらどうかご指導お願いします。 回路とかは少しは分かります。 pic,avrを勉強するにあたりメリット・デメリットを分かりやすく教えて頂けるとうれしいです。 工業高校卒です。 回路は少しは分かります。 あと何を作ってみればいいのか・・・ その辺は本でもネットでも調べてみます。

  • PICマイコンのC言語について

    とりあえずカテゴリーはここでいいのかな?・・・。 PICマイコンでC言語を使いたいと考えております。本を色々みるとCでも何種類かあるようです・・。そこでこれからC言語を勉強しようと思っていますがどれがいいのでしょうか?というよりそれぞれどう違うのでしょうか?将来的にはPIC以外でもH8も使いたいと考えていますので共通で使用できるものはあるでしょうか? 初歩的かもしれませんがまだまだ素人なのでよろしくお願いします。 どうもCは色々ありすぎて何がなにやら・・・・。

  • AVRのC言語について幾つか教えてください。

    AVRにCでプロプラムしてみようと思い、プログラムしてみています。 検索しても良くわからない事が幾つか有ったので質問させて下さい。 利用しているマイコンは2313です。 io.h内で各ペリフェラルのアドレスのような物を関連付けしている「_SFR_IO8()」っていうのと「_SFR_IO16()」っていう関数?の働きが良くわかりません。 printf()関数とか使えれば試せますが… #define  PORTD  _SFR_IO8(0x12) 等となっているので、 _SFR_IO8(0x11) = 0x7f; _SFR_IO8(0x12) = 0x7f; と書けばエラーを出さずにコンパイル出来ますし実行できます。 ですが関数ですとこういった使い方が出来ないように思うのですが… AVRに限らずC言語の機能の一部なのかも知れませんが今まで使った事が無い物なので無知でして、何方か知恵を貸していただけませんか?

  • PIC18のCコンパイラはどちらがお勧めでしょうか?

    PIC18のCコンパイラはどちらがお勧めでしょうか? MPLAB C Compiler pic18MCU と HI-TECK C PIC18MCU (どちらもLiteバージョンで) 又製品版を使うとしたらどちらがいいのでしょうか?

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

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

  • マイコンでDCモーター制御するため勉強期間

    ArduinoのマイコンボードをArduino IDEでしか使ったことのない人が、独学で、AVRやPICなどのマイコンで自分で一から回路を組んでDCモーターを制御できるようになるには、どのくらいの期間が掛かりますでしょうか?(普通に頑張れば3ヶ月くらいでできますでしょうか?) Arduinoとブレッドボード、ドライバICなどでDCモーターの制御はしたことがあり、C言語の基礎、高校物理、高校数学、制御工学はわかりますが、回路設計・製作の経験が全くありません。マイコンをArduino言語を使わずにC言語で制御する方法もまったくわかりません。 ご回答よろしくお願い致します。

  • PCに挿したIOボードを制御するためのプログラム

    IOボード(AD/DAボード)を使ってPCで入出力制御(例えばモーターのフィードバック制御)をしたいと思っているのですが、ボードにアクセスするためのプログラムや、信号を入出力するためのプログラムをどのように書いたら良いかわかりません。おそらくデータシート?に書いていると思うのですが、知識不足で読み解くことができません。(いままでArduino IDEでArduinoの制御をしたことしかありません。普通にC言語でAVRマイコンをプログラムして制御することはできません。C言語の基礎知識はあります。) そこで質問なのですが、PCから(例えばPCIスロットに挿した)IOボード(AD/DAボード)を制御するための知識は、どのようにして習得できますでしょうか?参考になる本やサイトが見つかりません。PICやAVRなどのマイコンであれば本が色々出ているようなのですが、そのようなマイコンを使えるようになれば、PCからIOボードを制御できる基礎知識は付きますでしょうか?

  • arduinoで作ったプログラムとC言語の違い

    arduinoで作ったプログラムとC言語で作ったプログラム、どちらもC言語にコンパイルされるらしいが、中身は同じでしょうか。工業用には問題ないでしょうか。arduinoは単なるおもちゃでしょうか。お願いします。

専門家に質問してみよう