問題タブ [stm32f4discovery]
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.
arm - ARM CM3 STM32F207 SRAM (RAM) スペースは SRAM2 で増加しますか? BKPSRAM?
STM32F207 の SRAM スペースを増やす
やあ、
STM32F207ZFT を使用していますが、アプリケーション用に SRAM1 に十分な RAM スペースがありません。
質問 1: DMA の使用に SRAM2 領域 (SRAM2 / 16KB: 0x2001 C000 - 0x2001 FFFF) を使用しない場合、このメモリ領域を通常の RAM の目的 (BSS 領域を拡張するため) に使用できますか? SRAM1 (0 に初期化された初期化されていない変数の全体的な RAM サイズを増やすため)?
質問 2: バックアップ SRAM (BKPSRAM / 4KB: 0x4002 4000 - 0x4002 4FFF) を使用して、BSS RAM 領域を使用してデータ バッファーまたはデータ アレイを保存できますか? 低消費(Vbatピン)とは別に、このBKPSRAMの特性はSRAM1領域(アクセス時間...)に匹敵しますか?
よろしくお願いします、
c - STM32 DMA(同時ストリーム、FIFO、バーストモード、ダブルバッファ)
stm32F4 シリーズの DMA にはいくつかの高度な機能がありますが、ここで説明を求めてもよろしいですか?
同時ストリーム: 2 つのストリームが同時にデータを送信できますか? 1 バイト転送が許可されているため。バス幅が 32 ビットの場合、4 つの同時伝送が可能です。ところで、STM32 の AHB バスの幅は?
FIFO モード: 同時送信ができない場合は、ここで FIFO を使用できると思います。FIFO は、AHB バスを占有することなく、低速ペリフェラルから DMA へのデータの準備ができているのを待つのに役立ちます。一定量のデータの準備が整うと、データのチャンクがまとめてメモリに送信されます。私の理解は正しいですか?
ストリームごとに 4 ワードの深さ 32 個の先入れ先出しメモリ バッファ (FIFO)
どういう意味ですか?FIFOにはいくつのデータを保存できますか? 4 または 4*32?
バースト モード: バースト モードは実際に何をしますか? データシートには、65535個のデータを送信できると書かれています。65535とバーストモードの関係は?
ダブルバッファモード:
ダブル バッファ タイプのトランザクション: メモリに対して 2 つの
メモリ ポインタを使用するダブル バッファ転送 (DMA が
バッファから読み書きしている間、アプリケーションは他のバッファに読み書きできます
)。-----STM32F4のリファレンスマニュアルより
私の質問は次のとおりです。DMA 送信中、AHB バスは Cortex M4 で使用できません。アプリケーションは他のバッファからどのように読み取ることができますか?
floating-point - STM32F4 ディスカバリ ボードのフラッシュ メモリにフロート データを書き込む方法
Keil IDE を使用して、VCP を介して浮動小数点数を受信し、STM32F4 検出ボードのフラッシュ メモリに書き込もうとしています。フラッシュメモリへの書き込みに使用される関数:
データ入力として符号なし整数値を受け入れますが、次のコードを使用してフラッシュ メモリに符号付き整数を書き込むことができました。
しかし、まだフロートデータを書き込むことができていません。「int」を「float」に変更すると (どちらも 4 バイトのデータである必要があります。keil コンパイラ ガイドに記載されています)、1.7345673 e-42 のような数値が得られます。
くだらない質問かもしれませんが、どなたか教えていただけると助かります。
stm32 - NVIC_SystemReset () が STM32F4 で機能しない
船内で働いてSTM32F4
います。私の IDE は IAR Embedded Workbench です。コードからソフトウェア リセットを実行しようとしています。そのために、ヘッダーNVIC_SystemReset();
で定義された
API ' ' を使用しました。core_cm4.h
しかし、システムのリセットは行われていません。
STM32F3、同じIDEで同じことを試しました。ヘッダーの関数を使用しました NVIC_SystemReset();
。core_sc300.h
そのソフトウェアのリセットを使用しています。両方のファイルの関数の定義が同じで、両方のコントローラが Cortex M4 のみであることがわかりました。STM32F4 ボードの問題は何ですか? これを解決するのを手伝ってくれる人、またはSTM32F4でシステムをリセットするための別の方法を提案できる人はいますか?
助けてください。前もって感謝します
embedded - STM32F4 I2Cスレーブレシーバ
STM32F4ボードをスレーブレシーバーとして、ノルディックボードをマスタートランスミッターとして使用しています。スレーブによって確認応答される 0x30 としてスレーブ アドレスを送信でき、デバイス レジスタ アドレスを 0x10 として送信し、次を使用していくつかのデータを送信します。
割り込みサービス ルーチンでイベントを取得できます。「I2C_EVENT_SLAVE_RECEIVER_ADDRESS_MATCHED」で 0x00020002 を受け取りました。その後、0x00020044 イベントを受け取り、時計が停止しました。誰でもこれで私を助けてくれませんか。スコーピングによって、スレーブ アドレス、デバイス レジスタ アドレス、およびオシロスコープのクロックを含む最初のデータが表示されました。しかし、その後時計が止まった。
STM32F4をマスター送信機として使用していくつかのセンサーを読み取ることができますが、STM32F4をスレーブ受信機として使用し、ノルディックボードをマスター送信機として使用するのは難しいと思います
cpu-registers - STM32F429 Discovery SPI レジスタ
SPI 経由で LCD に送信専用モードで通信するために、 STM32F429 Discovery ボードを使用しようとしています。ただし、出力するためにデータ レジスタに書き込むたびに、デバッグ ビュー ( CrossStudio ) に何も読み込まれないことがわかります。
ピン 4 はチップ セレクト ピンで、オシロスコープは正常に動作していることを示しています。SPIピンから何も得られません。