タグ付けされた質問 「avr」

AVRは、Atmelが開発した8ビットおよび32ビットのマイクロコントローラーコアです。AVRは、人気のあるArduino SBCのマイクロコントローラーとして選ばれました。

4
AVR SEI命令
AVR SEI命令(http://www.atmel.com/webdoc/avrassembler/avrassembler.wb_SEI.html)は、割り込みを有効にする前に次の命令が完了するのを待ちます。 別の命令を使用してSREGのIフラグを設定した場合、これも1命令待機しますか? つまり、待機はSEI命令またはステータスレジスタの機能ですか? SEI命令の機能である場合、SEIを実行するサイクルで、または次の命令で、実際にどの時点でフラグが設定されますか?

3
非メーカーのマイクロコントローラー選択サイト?
希望するマイクロコントローラーの特性を入力できるサイトを探しています。メーカーのウェブサイトを見つけました...しかし、それらはマイクロコントローラーのみを表示します。 IEにはPICS用のサイトやAVR用のサイトなどがありますが、暗闇の中で走り回っているだけでなく、すべてのメーカーの可能性を選択するものを探しています...

2
AVRに基づいた趣味のオシロスコープ。オペアンプのノイズを除去する方法は?
ATmega16マイクロコントローラーで趣味のオシロスコープを構築しています。主な問題は、信号の測定中に大量のノイズを受信することです。私はLF353アンプを使用して電圧をシフトしましたが、ノイズの原因であると思われます。 これはオペアンプを使用した回路図です。信号は「入力」に行き、「出力」はマイクロコントローラのADCピンに直接行きます。 そして、これはリード線が接続されていないときに私が得ている信号です:

3
PICからAVRへの切り替え[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 私はPIC16およびPIC18で3年以上働いてきましたが、AVRについても知りたいと思います。特定のプロジェクトを念頭に置いているわけではありませんが、異なるアーキテクチャを試してみたいと思います。PICとAVRの互換性レポートを入手したいです。 PIC16およびPIC18のアセンブリとCに精通しているuCのソフトウェア。AVRマイクロコントローラーのアセンブリおよびCバリアントは、PICバリアントとどのように異なりますか?多くの違いはありますか? PCのソフトウェア AVRチップ用にプログラムをコンパイルおよびアセンブルするには、どのソフトウェアが必要ですか?無料ですか、どこからダウンロードできますか? プログラミングハードウェア PIC のプログラミングにはVOTIのWisp648を使用しましたが、そのボードはAVRをプログラミングできません。プログラマーを購入する必要がありますか、それとも自分で構築できる回路がWeb上で利用可能ですか? uCのハードウェア PICには、PIC18F4620を多く使用しました。同様の機能を備えたAVRを探しています。私が好きな機能は次のとおりです。 内部発振器 タイマー 5Vおよび3.3Vバージョン ADC I2CおよびSPIをサポートするMSSP (E)USART PWM 多くのI / Oピン > = 32kBプログラムメモリ、> = 2kB RAM DIPパッケージ どのAVRチップに同じ機能がありますか?パッケージはディールブレーカーです、私は本当にDIP、PDIPまたはSPDIPが欲しいです。同等の機能を備えたAVRはどうなりますか? SPIおよびI2Cバリアント MicrochipにはSPIおよびI2Cプロトコルに独自のバリアントがあると言われました。PICと組み合わせて、マイクロチップのSPIおよびI2Cスレーブデバイスをよく使用します。これらのチップ(23K256、RTC、ENC28J60など)をAVRと組み合わせて使用​​できますか?それに加えて、I2CまたはSPIを使用してAVRとPICチップをリンクすることは可能でしょうか?

4
ディープスリープモードからの復帰
ほとんどのマイクロコントローラー(AVR、MSP430、PICなど)は、多くの異なるスリープモードをサポートしています。「最も深い」スリープモードは、消費電力が最も少ない(「パワーダウン」、「シャットダウン」など)ものですが、通常、これらのモードではすべてのクロックシステムが停止します。それらからのウェイクアップ」は、外部刺激(ピン変更割り込み、チップリセットなど)を介して行われます。何か不足していますか?MCUの周期的なウェイクアップ信号を生成する驚くほど低電力の方法はありますか? 私の目標は、機能を実行するために定期的に目覚めながら、消費電力を最小限に抑えることです(つまり、可能な限り長く眠り、できるだけ短時間目を覚まします)。このタイプの動作を達成する一般的な方法は何ですか?問題をさらに簡素化するために、関数がステートレスであると仮定しましょう(実行するために過去から何も覚えておく必要はありません)。 MSP430でWDTを使用してこの効果を得ることに成功しました。最後の行でウォッチドッグタイマーを一定期間後に期限切れにし、LPM4.5または「ディープスリープ」モードが呼び出されたときに、メインルーチンを自分の関数にしました。最終的な結果は、機能が実行され、MCUがスリープし、WDTが期限切れになり、チップがリセットされて吐き気がすることです。このタイプの動作を得るための「より良い」、「よりエレガントな」、または「より電力効率の良い」方法があるかどうか疑問に思って、動作しているようです? 私はまだAVRでこのアプローチを試していませんが、WDTはMSP430よりもAVRでより「電力を必要とする」ので、低電力の作業にはあまり魅力的ではないと思います。おそらく、低電力への「普遍的な」アプローチはなく、特定の製品ラインが提供するツールを使用する必要がありますか?新しいpicoPowerラインには、イベントシステムやスリープウォーキングなど、アプリケーションをその構造に適合させることができる場合に、CPUを起動させる必要がほとんどないなど、多くのウィズバン機能があります。 私の放浪については十分です、ここでyaが言うことをしましょう:) テクニックを示すコンクリートの例を編集するのもいいでしょう!

6
組み込みシステムで割り込みを使用する場合のグローバル変数の回避
グローバル変数を回避する組み込みシステムのために、ISRとプログラムの残りの部分との間の通信を実装する良い方法はありますか? 一般的なパターンは、ISRとプログラムの残りの部分との間で共有され、フラグとして使用されるグローバル変数を持つことですが、このグローバル変数の使用は、粒度に反しています。avr-libcスタイルのISRを使用した簡単な例を含めました。 volatile uint8_t flag; int main() { ... if (flag == 1) { ... } ... } ISR(...) { ... flag = 1; ... } 基本的にスコーピングの問題が何であるかを見逃すことはできません。ISRと残りのプログラムの両方がアクセスできる変数は、必ず本質的にグローバルでなければなりませんか?それにもかかわらず、「グローバル変数はISRとプログラムの残りの部分との間の通信を実装する1つの方法」(強調は私のもの)という言葉に沿って人々が言うことをよく目にします。他の方法がある場合、それらは何ですか?

3
Arduinoの電源を突然削除しても安全ですか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Electric Engineering Stack Exchangeで話題になるようにします。 11か月前に閉鎖されました。 Arduinoを持っている場合、破損することなく突然電源をオン/オフできますか?オン/オフスイッチのある製品を設計している場合、マイクロコントローラーが何らかのクリーンオフを実行できるように、電源をオフにする前に遅延を組み込む必要がありますか?それとも、SPSTスイッチをArduinoの電力線に接続するだけで大​​丈夫ですか? (製品を設計するということは、他のコンポーネントを備えたカスタムボード上で、ArduinoコードでATmegaを独立して使用することを意味します。) 編集:ArduinoによってArduinoブートローダーをフラッシュするだけで、AVRの代わりにArduinoでプログラムできます。使用したいチップはAtmel atmega328Pで、EEPROMを使用する必要はありません。
12 arduino  power  avr 


4
ハーバードアーキテクチャはどのように役立ちますか?
私はarduinoとAVRアーキテクチャについて読んでいて、AVRのハーバードアーキテクチャの導入によってパイプラインのストールまたはバブリングがどのように解決されるのかという点で立ち往生しました。オペレーターなしでプログラムをロードできるようにしますが、上記の問題の解決にどのように役立ちますか?

2
イーサネットをAVRに接続する
マイクロコントローラーにかなり慣れてきたので、今度はそれをインターネットに接続したいと思います。マイクロコントローラーがこれを行うための最小要件は何ですか、具体的には、可能な場合はAVRのものです。第二に、他に何が必要ですか?イーサネットコントローラーについて読んだことがありますが、それらが何をするのか、どのようにmicocontrollerとインターフェイスするのかは正確にはわかりません。 マイクロコントローラーをオンラインにするために必要なコンポーネントは何ですか(Arduinoシールドなし)?
12 avr  ethernet 

6
私の最初の回路図に対する批判?
回路図の設計を練習する(そしておそらくそれを作ることもできる)ために、私はそれが既に事前にプログラムされていると仮定して単純なAVRベースのウインカーを設計しました。回路図は次のとおりです。 回路図のような多くのAtmega / arduinoはまったく異なっており、デカップリングコンデンサーを個別に配置し(外観を確認しようとしたため)、コンデンサーを簡単に定義したり、さらにはすべて一緒にネット。 この場合のバッテリーはバッテリーホルダーであり、独自のPCBサイズが定義されています。 私の主な質問は次のとおりです。私の回路図は、この分野の専門家にどのように見えますか?微妙なこと(PEはGNDではありませんか?しかし、気味が悪い唯一のシンボルです)を無視すると、公開可能な回路図のように見えますか? バッテリーホルダーの右側にデカップリングキャップを配置することを検討しましたが、それ(コンポーネントの4列!)を取り除くか、それが非常に単純なので追加するだけかどうかはわかりませんでした。あなたの批評は何ですか? 更新 電源供給を完了し、テキストと接続の多くをクリーンアップしました(これはサムネイルである可能性が高く、画像を直接表示して拡大できます)。 プルアップ抵抗などの簡単な問題を修正したと思います。 テキストが特定の場所にあるかどうかはわかりません(緑色にならないように「情報」レイヤーに入れて適切な場所に配置しました)。メインボードとして、電源のラベル付けが必要だと思います明らかです。 電源が+ 5Vレールに接続されるようにネットを設定する必要があるかもしれませんが、既にPCBビューにかなりの数のERC / DRCエラーがあるので、次に見ます。 モノクロ画像としてエクスポートすることもでき、すべての位置インジケーター/グリッドおよびその他のノイズが除去されます。とても満足しています。 突き出ているものはありますか?
12 avr  schematics 

2
このavrの理論上の消費電力は正しいですか?
スリープモードを利用したバッテリーで3年間の理論上の寿命を持つ単純なATMEGA 168ベースの暗闇アラームに触発された後、私は自分自身に似たものを作ることにしました光) 私の混乱は、バッテリーの寿命が計算される方法にあります(「バッテリーの稼働時間の計算」セクションを参照)ので、自分で計算することにしました。 パワーダウンモードで1.8VのAVRは明らかに0.1µAを消費します。アクティブモードでは、1MHzの外部発振器を想定して250µA(データシートはこちら)。 いくつかの(理想的な)単三電池は1200 mAhになるので、 1200 / 0.001 / 24 / 365 = ~137 years standby life time 1200 / 0.250 / 24 / 365 = ~0.5 years active life time 私のピエゾブザーと10k直列抵抗が合計5mAかかると仮定すると、おそらく現在の使用量を1時間ごとに平均化できます 5mA * 10 (second alarm)? / 6 (intervals of 10) / 60 (in to hours) = ~0.138mAh …
12 power  avr  batteries  timer 

5
AVRの「オーバークロック」
電気的特性セクションのAVRデータシートには、通常、次のようなグラフがあります(これはATMega328のものです)。 「動作している」ように見えても、影付きのエンベロープの外側で動作するデザインを見てきました。具体的には、外部16MHzクリスタルからクロックを実行する3.3V(Arduino)デザインを見てきました。明らかに、これは仕様外です。このエンベロープの外側を実行すると、実際にマイナスの影響は何ですか

8
Arduino with Assembly?
マイクロプロセッシングへの私のベンチャーのために、私は利用可能な膨大なリソースのためにAtmel AVRと行くことに決めました。また、Arduinoにも多くの機能があるようです。言うまでもなく、スターターキットは「自分のレベルで」のようです 問題は、最初にアセンブリで学習し、次にC / C ++またはw / e Arduinoを使用したいのですが、ArduinoがAVRアセンブリを受け取らないと聞いたことですか?これは本当ですか?それを回避する方法はありますか? ありがとう 編集:ATMEL STK500を使用しますが、最初のタイマーは非常に複雑に見えますか?8ビットのAVRを入手してブレッドボードに載せて実験することができない理由はありますか?(私はそれらをそのようにインターフェースする方法を理解する必要があると思います....) edit2:これは私が考えていたことです http://www.adafruit.com/index.php?main_page=product_info&cPath=17&products_id=193
12 arduino  avr  assembly 

3
AVRの回路内プログラミングをどのように計画しますか?
AVR(これまでのところATtiny13とATtiny2313に限定されていました)を再プログラムする私の通常の方法は、チップをホスト回路から切断し、すべてのICSPフックアップを所定の位置に置いて別のブレッドボードに差し込み、プログラムしてから交換することです。しかし、私はチップをその場でプログラムできると聞き続けています(これはICSPの要点です)。 その場でチップをプログラミングする前に考慮しなければならない特別なハードウェアの考慮事項はありますか?たとえば、ICSPプロセスは、ICSPに使用されているのと同じAVRピンに接続された回路コンポーネントを損傷する可能性があることを心配しています。これらのコンポーネントを保護するために、ダイオードまたは他の種類のバッファリングを追加する必要がある場合がありますか? この質問は漠然と聞こえるかもしれませんが、そうだと思いますが、より一般的な経験則に興味があるため、特定の回路の詳細は提供していません。つまり、これを心配する必要はないのでしょうか、それとも、MCUが属する特定の回路に本当に依存するのでしょうか?
12 avr  isp 

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