柔軟に働き方を選ぶ時代に必要なこと >>

PICマイコン始めたんですが何がなんだか、はっきりいってチンプンカンプンです。特にプログラムが難しいです、何か理解しやすい方法ありませんか?]

このQ&Aに関連する最新のQ&A

A 回答 (7件)

プログラミングは論理的組み立て作業です。


小学生でも立派なアルゴリズムを構築できる人はいっぱいいます。
自己解決できる論理的思考と意欲を持っているから独学でも習得できるのです。

何処がどのように解らないかが他人に説明できない質問を投げかけること自体
論理的能力に欠けており、基本的に不向きです。

自分に合った方面を選択すべきです。
    • good
    • 0

Microtechnica社のBasicかC言語プログラマーを使うと楽ですよ。



私はBasicの方が使い慣れているので、PICBasic Pro 2.6&3を使っています。

 
    • good
    • 0

日本でPICの著書で有名な後閑氏のホーム・ページや書籍を御覧下さい。


http://www.picfun.com/
貴方の求めている全てが、このホームページや書籍から得られるものと思います。
    • good
    • 0

  プログラムの言語は、アセンブラでしょうか??


C言語でしょうか?? それにより変わってきます。

また、PICマイコンマイコンを用いて何をするかによっても変わってきますので
よろしけば教えていてだけないでしょか??
    • good
    • 0

PICの雑誌・書籍はC言語の物が多いですね。



でも、私はC言語が苦手なのでBasicで書いています。

有償: PICBasic Pro 2.60 + MicroCode Studio
MicroCode Studio Plus にすると、PICライターでブートローダを書き込み
その後は、ライターを使わずにRS232Cでプログラミングが出来ます。

TX・RXポートを持つPIC16F&PIC18Fが対象です。

マニュアルが英語なのがチョット何点かな・・・

購入は、海外通販の方が断然安いです。 日本代理店もあります。

一般的なBasicが出来れば、ほとんど同じなので楽です。

 
    • good
    • 0

マイコンの中のメモリには、アドレス(番地)が振ってあって、その中に数字で表現された命令やデータを書き込むようになっています。


マイコンには、プログラムカウンター(PC)というレジスターがあり、命令はプログラムカウンターが示すアドレスから読み取られます。
マイコンは命令を読み取ると、その命令の内容に応じて、計算したり、分岐したりします。分岐というのは、プログラムカウンターの内容を変更し、次に命令を読み取るアドレスを変更(ジャンプ)することです。分岐命令でない場合は、プログラムカウンターを加算して、次の命令のあるアドレスへ移動します。

これらの数字で出来た機械語命令を手作業(ハンドアセンブル)で作ってもOKなのですが、それは大変なのでアセンブラというソフトを使います。

「アセンブラの定義」とは、プログラム本文ではなく、前おき等に書く定義命令のことでしょうか?
これは、マイコンに書き込む機械語には直接影響せず、アセンブラというソフトへの指示命令となります。これは、プログラムを見やすくしたり、後で修正するのを楽にするためのものです。例を挙げるとプログラム本文で使う名前などを定義したり、先頭に別のソースファイルを挿入したりするものがあります。

的が絞れていないので、なんとなく・・・の回答になってしまいました。
    • good
    • 0
この回答へのお礼

たびたびのご回答有難うございます。お礼が遅れてしまい申し訳ございませんでした。やはりプログラムの世界は自分にとって未知の世界です、正直(割り込み)のレベルになるとかなりの難問に感じます。
まだアセンブリをはじめてから一ヶ月ぐらいですが、懲りずに毎日勉強中です。いつかは自分の思いどうりにプログラムを組んでみたいですね、まだまだ先になりそうですが・・・現職はまったくプログラムには縁のない仕事なのですが、PICアセンブリを使った仕事なんかはあるんでしょうか?参考ご意見ありましたらよろしくお願いします。

お礼日時:2008/01/16 22:14

お気持ちよく分かります。



ただし、この質問では、「英語がしゃべれません。教えてください」というようなもので、適切な回答が得られないと思います。

PICマイコンの命令セットは比較的単純なので、昔のマイコン、パソコン等の機械語になじんだ人ならすんなり理解出来るのですが、まったくの未経験だと、何から始めて良いかすら分からないのではないかと思います。

また、他の高級言語さえも未経験の場合は、プログラム一般に関する考え方が身についていないので、更に苦労するでしょう。

・プログラムの基礎を身に付ける。
 これは、慣れしかありませんね。将棋や碁のように定石を沢山身に付けるようにします。外国語をマスターしようとしても一朝一夕には身に付かないのと同じです。でも外国語をマスターするよりは簡単です。

・2進数、16進数、10進数について十分理解する。(2進数と16進数は1対1で変換できます。特に、2進数と16進数の相互変換が頭の中ですぐに出来るように慣れておくと便利です)
PICでは、最終的にレジスタ内のビット1つ1つが入出力ポートの1本1本に対応します。

きりがないので、何が分からないか、例を挙げてもらえば1つずつ解決できると思います。
    • good
    • 0
この回答へのお礼

良きアドバイスありがとうございます。今までパソコンはそこそこやってきたつもりですが(windows,linux)プログラムの世界はなじみがなくて四苦八苦です。最近ようやく進数について理解できたかなってかんじです。いまいち納得できないのがアセンブリの定義です、正直挫折しそうなくらいですが毎日コツコツ勉強中です。やはり慣れるしかないですよね、ちなみに高級言語というとCやC++なんかでしょうか?

お礼日時:2008/01/04 15:58

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング