ATmega32(ATmega AVRシリーズ)を搭載した組み込みCから始めます


9

私はATmega32ボードを敷設していて、マイクロコントローラから始めるのが最適だと思います。組み込みCでバブリングをしたことがありますが(このボードを入手したとき)、フローがいくつかの理由で停止しました。今私は2つの質問があります:

  1. AVRシリーズのCで始めるのに最適な無料のリソースは何ですか。私はAVR-GCCを知っていますが、私を始めるためのチュートリアルや無料の本を探していました。

  2. 最初にCにジャンプするか、最初にASMを実行する必要がありますか?周りにはasmの本がたくさんあります。それで、より良いオプションは何ですか?

インターネットを検索しながら、私はここでATmega32用のArduinoのブートローダを見つけhttp://retrointerfacing.com/?p=30が、問題は、私はヒューズビットおよびすべてと、いくつかの工夫を行うことがためらっています。そうしても安全ですか?

回答:



6

AVR-libcのドキュメントはのAVRのCのための情報の素晴らしい源です。ここに別のものがあります。

個人的に、私はCで作業することを好みます。avr-libcを使用すると、AVRファミリ内でのコードの移植性が向上します。ただし、タイミングが重要なことをしている場合は、ASMを使用する必要があります。

並列または「高電圧」AVRプログラマーを使用している場合は、ヒューズビットをいつでも再プログラムできます。シリアル(システム内プログラミング、ISP)を使用している場合は、SPIENまたはRESETENABLEビットを無効にしないように注意してください。これらのビットを使用すると、再プログラムできなくなります。

ありますArduinoのHVプログラミングシールドもご用意しています。


4

私はCから始めます。ASMのスニペットが時々必要になるかもしれませんが、ほとんどのアプリケーションではそれについてです。自分でロールすることにした場合の例外は、ブートローダーです。

Dave MellisがMIT HLT wikiにAVRチュートリアルを載せました。彼はATmega328のためのツールのセットアップについて議論しますが、それは異なるデバイスであなたを助けるのに十分一般的であるようです。見る

http://hlt.media.mit.edu/wiki/index.php/AVR_Programming

Atmelサイトのライブラリと例は良いようです。私は彼らのアプリノートからいくつかのスニペットを使用しました。RTCコードで使用するI2C(TWI)ライブラリは、Atmelサイトからのものです。


3

最初にArduinoを使います。たくさんの本、チュートリアル、サンプルコード。そして、素晴らしいコミュニティ。次に、Arduinoに精通している場合は、AVR-GCCでCを試してください。

最近のASMはお勧めできません。ASMを使用しなければならない可能性のあるいくつかのコーナーがあるかもしれませんが、ほとんどのことはプレーンCで解決できます。ASMを使用すると、マイクロコントローラーの動作に関する非常に詳細な情報を得ることができます。 CまたはC ++。


問題は、私が住んでいるアルドゥイーノを入手するのが非常に難しいことです。私は自分で作るつもりですが、それもうまくいきません(時間がないので読んでください)。
Rick_2047 2010年

チップをプログラムする機能がある場合、Arduinoファームウェアをチップにロードし、その後の作業にシリアルリンク+ブートローダーを使用できます。
ガラミン2011年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.