ArduinoでAVR328のみを使う場合の注意

このQ&Aのポイント
  • ArduinoでATMega328マイコンのみを使うことは可能であり、一部の機能を制限する必要があります。
  • マイコンボードとはPCとの通信や書き込み、リセットスイッチやLEDなどを供給するものであり、組み込む場合には必要ありません。
  • ATMega328単体でもクロックを供給すればArduinoボードを用いた場合と同様のことができます。
回答を見る
  • ベストアンサー

ArduinoでAVR328のみを使う場合の注意

こんにちは. マイコンを勉強しています.ArduinoやARMを使って勉強しています. Arduinoは,Arduinoの基盤を用いずにATMega328マイコンのみを用いて使うことができますが,この場合使えなくなる機能などはないのでしょうか? 先日,写真のような回路を組んでオルゴールを作ってみました.事前にArduinoのブートローダを書き込んだATMega328を,Arduinoボードを用いてプログラムを書き込みました.セラロック16MHzのものを加えた以外に,回路はArduinoボードを使って動かすのと変わりません. つまりこれは,クロックさえ供給してやれば,ATMega328のみで動かしても,Arduinoボードを用いて居る場合と同じことができるという理解で合っていますか? さらには,arduinoボードとは,PCとの通信,マイコンへの書き込み,リセットスイッチや動作確認のLED,クロックなどを供給するもので,製品として組み込む場合は特に必要ないもの,あるいは自分で簡単に追加出来るもの,という理解で合っているのでしょうか?もし,マイコンボードが必要な理由,などがあればこちらも回答お願いします . あと少し逸れていても,詳しく解説してある資料など大歓迎です.

質問者が選んだベストアンサー

  • ベストアンサー
  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

基本的にはその理解であっています。 一点補足するとすれば、Arduinoのボードは、各種シールドを作るに当たっての機械的・電気的仕様を規定したものだということです。 そうした仕様にあわせれば、Arduinoの各ラインナップで互換性を持たせることができますし、サードパーティが互換ボードを作ることもできるようになります。

nasanaut
質問者

お礼

ありがとうございます.色々試してみて,そうかな?と思ってたのですが,誰かにも保証してもらえて安心です. そうですね.Arduinoがここまで普及したのは,ハードウェアを統一仕様にしたことが効いてますよね.

関連するQ&A

  • atmega328-puの書き込みに付いて。

    atmega328-puの外部と内部のclockの取り扱いについてお尋ねします。 先ずブートローダーを書き込んだり、書き込みに失敗すると外部クロックに切り替わり その後は書き込めなくなる様な説明が有りました。 このことは、二度目以降のブートローダーが書き込めなくなると言うことでしょうか 又、書き込みに失敗した時、そのavrは全く他の用途にも使えなくなり、マイコンとしての 機能を失ってしまうと言うことですか。 それでは、AvrIsp-MkIIの書き込み器を使って、外部クロック用の水晶発振素子等を取り付けて 新しくプログラムを書き込むことは可能ですか。 ブートローダーの解釈として、私が理解しているのは、ブートローダーと言うのは 書き込まれるマイコンが、書き込まれたプログラム通りに働かせる為のプログラム では無く、そのプログラムをAVRマイコンに読み込ませる為の導入プログラム と言うことで良いのでしょうか。 atmega328-puのマイコンに書き込むための説明に、ARDUINOよるブートローダーの書き込み方が沢山紹介されていますが、これはARDUINOのボードでプログラムを書き込んだりするとき スケッチと言うプログラムを作成してARDUINOに書き込みプログラムを走らせますが このスケッチを書き込む時に必要なソフトが、ブートローダーなのでしょうか。 では以前このOK-WAVEで教えていただいた回答内容では、AVRマイコンに書き込む為には AVRISP-MKIIの書き込み器を使えば、ブートローダーは必ずしも必要ないと言うように私は理解 したのですが、正しいのでしょうか。 例えばブートローダーを書き込んだATMEGA328-PUをaruduinoで私が書き込もうとする プログラムをスケッチに書いて書き込んだら、基本的には(動作クロック等は別として) 動作するのでしょうか。 すみません、色々調べたのですが基本的な事の疑問が、解けずにいますので 教えてください。

  • AVRマイコンの書き込みについて

    最近Atmel studio6と言うソフトとArduino IDEと言うのが調べれば調べるほど ごちゃ混ぜになって、何が何だか分からなくなってきました。 どこが同じで、どこが違うのでしょうか。 AVRマイコンのAtmega328p-puにAtmel studio6で書き込む様に書いてあるので、AVrisp mkIIというライターを買いましたが、別の記事を見たらブートローダー というソフトをあらかじめインストールして置かないといけないとか 他の記事に書いてあったのですが。 AVRマイコンに関しては、まったくど素人で分かりませんので教えてください。

  • arduinoによるDCモータ駆動について

    arduinoによるDCモータ駆動について 皆さんこんにちは. 私は現在,arduinoというマイコンボードからDCモータを制御しようと しています. 基本的には上手く動いているのですが,いくつかその挙動で 不可解なことがおきています. 挙動1:モータ駆動開始してしばらくは,負荷側を等速で動かせない (ウォームアップのようにしばらく(ゆっくりと)動かしていると,順調に動くようになる) 挙動2:ある程度使用していると,モータが駆動できなくなってしまうことがある (負荷を外しても,PWM音は聞こえるが,モータは回転しない.一度この状態になると, ずっとこのまま) マイコンボード:Arduino Duemilanove モータドライバ:18v15(Pololu社) ギヤードモータ:380K75 電源:ACアダプタ(12V-5A),電源ジャックに供給 制御:PWM制御 挙動1については現在は誤魔化しながら使用していますが, 挙動2に一度なってしまうと,ずっとそのままなので困ってしまっています. リセット等をかけても改善せず,仕方ないので現在は新しいボードに交換することで 対応しています. (ATmegaチップの交換も試してみましたが,改善しませんでした.) おそらくマイコンボードのチップ以外のところが破損していると考えられますが, これにはどのような原因が考えられるでしょうか? また,これを未然に防ぐ方法などは,ありますでしょうか? 当方は電気回路等に関して未熟ですので,皆様のお力をお借りできたらと思います. よろしくお願いします.

  • Arduino uno 本体と基板を切り離して

    マイコンといえばPICしか知らず、プログラムを 勉強しようと思っていたところ、Arduinoという のが初心者向けだと知りました。 まだ何も分からない状態なのですが、動画を見ると 皆さん本体から基板(ブレッドボード)にジャンパワイヤ を接続して動作させています。 当方がやりたいのはPICで例えると、PICKitからブレッドボード に差したPIC10F200などのICにプログラムを書きこみ、ICを 基板に実装して動かしたいんです。 少し検索したところ見つけたのですが https://burariweb.info/electronic-work/arduino-atmega328p-alone-operate.html このようにするしかないんでしょうか? 車のルームランプに基板を入れたいのでICは小さいに 越したことはなく、PICのように8ピンで出来れば、と 思っています。

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

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

  • PCのCPUで演算処理し、Arduinoで入出力

    ArduinoをPCに接続して、Arduinoを、PCのIOボードとして使うことは可能でしょうか?つまり、信号の入出力はArduinoの入出力ポートから行って、演算処理をマイコンではなくPCのCPUでさせたいです。この場合、どのようなプログラムを書けば良いのでしょうか?Arduinoを接続しているPCのポートにアクセスして、それからArduinoの入出力ポートにアクセスするプログラムになると思うのですが、そのやり方がわかりません。一旦マイコンのレジスタにアクセスする必要があるのでしょうか?開発環境は何を使えば良いでしょうか?PCのOSはLinuxです。ご教授頂ければ幸いです。

  • arduinoのプログラム実行について

    本日arduinoを購入し,arduinoに接続したLEDを点灯させることができました.arduinoの動作を終了させるには,電源供給をやめればよい,今回の場合はパソコンとのUSB接続を切ればよいということなので,USBを抜きました. ここで次のことを思いました.次回,arduino周辺の回路を組み替えて新しいプログラムを書き込む際,パソコンに繋いだ瞬間は今回(LED点灯)のプログラムが動作し始めると思います.そのとき,回路によってはarduinoが破損してしまうのではないでしょうか?どうすれば今回のプログラムを実行させないままパソコンに接続することができますか?

  • 【Arduino】MOSFETとダイオードについて

    O'REILYから発売されている「Arduinoをはじめよう 第2版」でArduinoを勉強してます。 モータを制御する作例、P58の図5-7で紹介されている回路について、当方は電気の心得があまりない初心者なので理解できない事があります。 図を文章で説明すると、 (1)ArduinoのVinがブレッドボードの一番手前のラインに繋がっている。 (2)ブレッドボードの一番手前のラインからモータ(+)へ繋がっている (3)モータ(ー)とMOSFET(Source)が繋がっている。 (4)MOSFET(Gate)がArduinoのデジタル9番Pinに繋がってる。    DegitalWrite(9,HIGH);でMOSFET(Gate)に電圧を掛けて制御する。 (5)MOSFET(Drain)がArduinoのGNDと繋がっている。 と、ここまでは理解できるのですが、 (6)(3)のMOSFET(Source)とモータ(ー)の間からダイオードがつながり、   それが、ブレッドボードの一番手前のラインへと、つまりはArduinoのVinへと繋がっています。ダイオードの向きはブレッドボードの一番手前のラインへ向けて-▶|-です。 ぐぐって調べたところ、ダイオードは品番だとIN4007で「フライホイールダイオード」や「ショットキーバリアダイオード」と呼ばれるパーツでモーター停止時の逆起電力での回路の保護が目的に使うものらしいです。 MOSFETは型番IRF520もしくは2SK2232または2SK2231推奨でして、いずれもNタイプで足はむかって左からGate・Source・Drainのようです。 で質問ですが、 ダイオードは、どういう考え方で何処にどのような向きで付けるべきものなのでしょうか? youtubeでみつけた同じ様な回路の説明 http://www.youtube.com/watch?v=MWzylbNppiE&feature=player_embedded ですと、ダイオードはMOSFET(Source)からArduinoのGNDに繋いでまして、この二つの作例共通の考え方が知りたいです。 以上、よろしくお願いいたします。 画像の引用は O'REILY「Arduinoをはじめよう 第2版」P58の図5-7 ISBN978-4-87311-537-5

  • LEDを点灯するだけのプログラムなのに点滅する

    マイコン勉強中なのですが。 まず手始めにブレッドボード上で、AVR atmega88 を使ってとりあえずLEDを点灯させるプログラムを書き込んだのですが約1秒ごとに一瞬LEDが点滅するのですが、原因として考えられるもあるでしょうか? PORTB0に抵抗とLEDつけただけの単純な回路です。

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

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