問題タブ [atmelstudio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3372 参照

c++ - Atmel Studio 6 から単体テストを実行する

私は現在、Atmel Studio 6 で組み込み C++ プロジェクトを開発しています。このプロジェクトには、かなり重要な組み込み部分と重要なビジネス ロジック部分があります。理想的には、ビジネス ロジック コードの単体テストを実行したいと考えています。これらのテストを簡単にビルドして実行できると、単体テストが使用される可能性が高くなります。

デフォルトの avr-gcc コンパイラで Boost 単体テストをコンパイルしようとすると、さまざまなヘッダー ファイルが見つからないため、エラーが発生します。これらのヘッダーは、私が使用している AVR チップセットには実装されていないことを理解しています。ただし、これらのヘッダーは、埋め込まれていない部分の単体テストにのみ使用されるため、専用の単体テスト プロジェクトに配置されています。

単体テストをコンパイルするには、別のコンパイラをセットアップする必要がありますか? インストールされているデフォルトの avr-gcc に別のコンパイラ ツールチェーンを使用して単体テストをコンパイルすることは可能ですか、それとも単体テストを別の場所でコンパイルする必要がありますか? これを行う簡単な方法はありますか?

0 投票する
1 に答える
946 参照

assembly - マクロ引数で指定されたレジスタへの MOV

movAVR アセンブリのマクロで操作を実行しようとしています。マクロに数値引数で対象を指定したい。Atmel Studio アセンブラを使用しています。

私はこのようなことをしようとしています:

しかし、このようにすると、「無効なレジスタ」というエラーが表示されます。代わりに使用r@0すると、「Unexpected (」というエラーが表示されます。試行すると(r@0)、「unexpected REGISTER」という結果になります。

どうすればいいですか?

0 投票する
1 に答える
69 参照

c++ - この関数を呼び出すとコードをコンパイルできません

Atmel Studio 6.1 と ANDLoad を使用して ATMega16 MCU をフラッシュしています。この関数を呼び出してコードをコンパイルすると、ANDLoad で「Flash Hex File 359 のエラー」が表示されます。359 行は、hex ファイルの末尾から 3 行目です。内部にコードを持たない関数を呼び出すとうまく機能しますが、意味がありません。コードを1行だけ追加すると、再びエラーが発生します。

私はそれを次のように呼びます:

}

誰かが私が間違っていることを知っていますか? ありがとうございました。デビッド

0 投票する
0 に答える
1334 参照

assembly - Atmel 実行ソリューション - 起動に失敗しました。不足しているファイル: AssemblerApplication1.obj

学校の課題として、Atmel Studio 6.0 で簡単なアセンブリ アプリケーションを作成する必要があります。問題なくビルドできますが、実行しようとすると、次のエラーが返されます: 14:46:11: [ERROR] Failed to launch. 不足しているファイル: C:\Users\Administrator\Documents\Atmel Studio\AssemblerApplication1\AssemblerApplication1\Debug\AssemblerApplication1.obj

私は組み立ての経験がまったくなく、同じ問題に苦しんでいる人を見つけることができません.

0 投票する
1 に答える
394 参照

assembly - この AVR アセンブリをよりエレガントに行うにはどうすればよいですか

私は現在、このコードを持っています:

ご覧のとおり、本当によく似たコードがたくさん繰り返されています。

.irpこれを withや Maybe .ifs のように短く書く方法がないとばかげています。しかし、私はそれを機能させることができません。私は.irpこれを試しました:

Atmel Studio は強調表示しますが.irp(a で始まるすべてを強調表示するわけ.ではありません)、動作しません:Invalid directive: '.irp'

私の他の関連する質問も参照してください: MOV into a register specified by macro argument

0 投票する
1 に答える
1614 参照

ld - 静的ライブラリの回答をフラッシュ セクションの先頭に配置する

atmelstudio を使用してファームウェア イメージをコンパイルしており、スタティック ライブラリ (gnu の libc.a と libgcc.a を含む) の関数を .text セクションの先頭に配置したいと考えています。今起こっていることは逆です。

これは私のリンカースクリプトです

0 投票する
1 に答える
2077 参照

avr - Arduino Uno (ATmega328p) と FreeRTOS を使用する Atmel AVR Studio 6

みなさん、こんにちは。

Atmel AVR Studio 6 で ATmega328p を使用する Arduino Uno を使用して、freeRTOS の使用を開始したいと考えています。

私はWindows 7で作業しています。

私はこのチュートリアルに入りました:

http://www.jayconsystems.com/tutorial/atmerpt1/

これは、ATmega328p で動作するように Atmel AVR Studio 6 をインストールして準備する方法を説明しています。

ステップ 5A で何をすべきかを理解できませんでした。これは、次のことを行うように指示しています。

[ツール] -> [外部ツール...] に移動して、次の設定で新しいツールを作成します。

タイトル: シリアルプログラム

コマンド: C:\arduino-1.0.1\hardware\tools\avr\bin\avrdude.exe

(arduino のインストール フォルダーと一致するように変更し、avrdude.exe を見つけます)

-CC:\arduino-1.0.1\hardware\tools\avr\etc\avrdude.conf -patmega328p -carduino -P\.\COM3 -b57600 -Uflash:w:"$(ProjectDir)Debug\$(ItemFileName). hex":i // *

注: avrdude.exe がコンピューターの次の場所にインストールされています。

C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe

だから私の質問は:

1) 行*で、 -CC は何を意味しますか? 引数または初期ディレクトリ ([外部ツール] ダイアログ ボックス内) 内にある必要がありますか?

2) 言及されているように、avrdude.conf へのパス (実際に私の場合) は X86 フォルダーを通過するため、そこに入力する必要がある行はどのようにする必要がありますか (二重引用符について言及されているため)?

3) これらの問題をすべて解決した後、AVR Studio 6 には freeRTOS を開始するための「単純な汎用テンプレート」プロジェクトがどのように/どこに/ありますか?

このチュートリアル (別のボードを使用しています) に出くわしました。別のボード (私の ATmega328p) を使用していますが、「従う」ことはできますか?

事前に感謝します。

男。

0 投票する
2 に答える
376 参照

c - 2 つの異なるコンパイラで異なる方法で評価される C 式

GCC と Atmel Studio の間で異なる動作をしているコードがあります:

GCC では、結果はtc意図したとおり 1700 です。

AtmelStudio では、結果tcは 132772 になり、これは正しくありません。

問題は、m*1800項が AtmelStudio で m の限られた精度で計算されていることのようです。

私の質問は、どのコンパイラがそれを正しく行っているのですか?

ありがとうございました。

0 投票する
0 に答える
135 参照

embedded - ブートローダ HEX ファイルを Xmega256A3BU avr ボードにプログラムする手順は?

ATXMEGA256A3bu 開発ボードを開発しました。ここで、ブートローダー HEX ファイルをプログラミングしてこれを実行する必要があります。それを機能させる方法がわかりません。JTAGプログラマまたはPDIまたはSPIでローダーを配置する必要があります。この問題を解決する方法を教えてください。有用な情報は大歓迎です。