問題タブ [atmel-uc3]
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.
firmware - Atmel UC3 プラットフォームでのファームウェア開発用のシステム設計ドキュメント テンプレート
Atmel UC3 プラットフォーム用のファームウェア開発プロジェクトのシステム設計ドキュメントのテンプレートを入手できるサイトを持っている、または知っている人はいますか?
atmel - Atmel UC3 - シリアル番号を取得するには?
各 Atmel UC3 には明らかに固有のシリアル番号があります。ソフトウェアでそれを取得する方法を知っている人はいますか?
c - C未定義の参照
私は次のコードを持っています:
main.c
checksum.c
checksum.h
コンパイルすると、次のエラーが発生します。
何が問題なのかわからないのですか?
c - Atmelstudio UC3C AVR32 - メモリ内の間違った場所にあるフレームワーク オブジェクト?
CAN 送信のセットアップ中に、ポインターが破損しています (有効な 0x00000bd0 から、RAM の範囲外の 0x84520000 に変化します)。ポインターも CAN アクティビティとは無関係です。破損の理由は、union64 がポインターのアドレスに上書きされるためです。この union64 は (ASF からの) CANIF オブジェクトに属しています。ソースコードでは、次の場所で破損が発生します。
私の質問は、「データ」のメモリがポインタと同じアドレスに割り当てられているのはなぜですか? それともこれは間違った結論ですか?
次のスクリーンショットでは、最初は関数が実行される直前、最後は実行直後です。「msg」の内容は 0x8452000000000000 です。破損したポインター A の内容は、破損が発生する前の状態であるため、0x00000bd0 である必要があります。ポインター A の後の 32 ビット整数はポインター B であり、ポインター B はポインター A を指しているため、その破損していないコンテンツは 0x00000004 です (スクリーンショットを参照)。
これが役に立つ情報かどうかはわかりません。データシートによると、CANIF レジスタはメモリ アドレス 0xFFFD1C00 にあります。
更新: これは、ポインターを破損するアセンブリ レベルのコードです。
//CANIF_mob_get_ptr_data(ACTIVECHANNEL,0)->data = (Union64)msg;