問題タブ [stm32]
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.
c - STM32L LCD インターフェイス
STM32L151RDに接続されたLCDとインターフェースする方法を教えてもらえますか? IAR ワークベンチを使用していますが、サンプル プロジェクトで結果が得られません。また、私はオンラインのドキュメントとチュートリアルを調べましたが、それらにはすべて STM32L152xD に関する情報が含まれており、LCD が組み込まれていないが LCD ドライバがある 151 に関する情報は含まれていません。
ありがとう。
c - STM32f1xxとのUSART通信
USART通信を実現しようとしています。そこで、STM32f1 の RX を彼の TX に接続します。また、この通信のためのプログラムを書きます。このコードは、次のコンポーネントで構成されています。
- RCC 構成
- GPIO 構成
- USART構成
- 文字列の送受信
- 送信文字列と受信文字列の比較
- 通信が成功したかどうかをテストします => LED4 がオンになり、そうでない場合は LED3 がオンになります
問題は、すべてのケースで LED3 が点灯することです。データ転送に失敗したことを意味します。
IDE (IAR の Embedded Workbench) を使用して、次のプログラム コードをコンパイルします。
pointers - freeRTOS を使用する stm32 でランダムに割り当てられた不思議な値 (A5A5A5A5 および FFFFFFFF) がハードフォールトを引き起こす
ポインターがアドレス A5 または FF を指しているように見えるランダムな時間に発生するハードフォールトに問題があります (私の許容メモリ空間は 80000000 以上でそれをはるかに下回っています)。これら 2 つの値を持つ常に同じポインターのようです。
このエラーが発生する cg2900 と呼ばれる fm/bluetooth/gps チップと通信する STM32F205RE プロセッサを実行している組み込みシステムを使用しています。
デバッガーを使用すると、数回のテスト実行中にポインターがアドレス A5 と FF をそれぞれ指していることがわかります。ただし、ランダムな時間に発生するようです。テストを 1 時間失敗せずに実行できる場合もあれば、20 秒でクラッシュする場合もあります。
何らかの形で干渉する可能性のあるさまざまなタスク (ラジオ用、ブルートゥース用、その他の定期メンテナンス用) を切り替えるスケジューラとして freeRTOS を実行しています。
これの原因は何ですか?カスタム ハードウェアを実行しているため、(潜在的に) ハードウェアの問題である可能性は否定できません。問題のデバッグにアプローチする方法についての指針 (しゃれは意図されていません) はありますか?
編集:
さらに調査した結果、特定のポインターだけでなく、クラッシュする場所は非常にランダムであるようです。ハードフォールト ハンドラーを使用して、これらのレジスターの次の値 (すべての値は 16 進数) を取得しました。
クラッシュ前のセミロングラン (分):
クラッシュするまでの非常に短い実行時間 (秒):
別の短いもの (秒):
非常に長時間 (1 時間以上) 実行した後:
ほとんどの場合、同じポイントでクラッシュするようです。以前の提案に従ってメモリを調整しましたが、まだ同じ問題があるようです。
御時間ありがとうございます!
敬具
c - STM32 マイクロコントローラと USART デバイスを使用した SIM20 モジュール間の通信
STM32f1 マイクロコントローラを SIM20 モジュールと通信させようとしています。すべてのハードウェア設定が適切に行われていることを願っています。ソフトウェアといえば、私の C プログラムは次のコンポーネントで構成されています。
- RCC 構成
- GPIO 構成
- USART構成
- 文字列「AT+SRDFIRM」の送信
- 受信バッファをファイル「test.txt」に格納
- LED3をオンにする
ただし、SIM20 からは何も受信されません。ファイルに何も保存されておらず、LED3 が点灯しません。
私のCコードは次のとおりです。
@H2CO3 : これは問題を含むプログラムの一部です:
assembly - STM32 アプリの MakeFile について
STM32 でアプリを開発しようとしています。私は初心者で、開始するための環境を構築する方法に時間を費やしています。インターネットで、同じプラットフォームで動作するアプリのソース コードを見つけました。しかし、これを構築して環境を構築し、binファイルを構築する方法がわかりません。MakeFile は見えますが、よくわかりません。
メイクファイルをよく理解してビルド環境をリバースエンジニアリングできるか知りたいです。私が本当にばかげているように聞こえたら、ごめんなさい。この問題についての助けをいただければ幸いです。
読んでくれてありがとう。
c - 組み込みARMシステム(STM32 F4)でprotobuf-c0.15を使用
組み込みARMシステム(STM32 F4)でprotobuf-c 0.15を使用し、protobufを使用するJavaサーバーと通信するシステムを開発することは可能ですか?
protobuf-c 0.15は、動的メモリ割り当てを使用します。そして、スローエラーをコンパイルします:
nanopbとprotobuf-embedded-cについて知っています。ただし、サポートprotobufは限られています。
embedded - ov7670 を使用した stm32f4-discovery
stm32f4-discovery で ov7670 からビューを取得したい。インターネットからソースコードを入手し、それを修正します。しかし今、私は得るビューに大きな問題があります。黒でも真の視界が得られますが、他の色は濃い紫赤に見えます。http://tinyurl.com/bh49y9xのように。1枚目の写真はov7670の上部を黒い紙で覆ったもの、2枚目は右上部分、3枚目は左上部分です。Androidから取得した画像がそのようなものである理由を説明できません。
これは私のコードです: https://github.com/ctc8631/ov7670 今、私は 176*144 と RGB565 を使用してテストし、Android ビットマップから生データを変換します。誰かが私を助けてくれることを願っています。どうもありがとう。
eclipse - OpenOCD と組み合わせた Eclipse GDB
USBを使用してこのコントローラーをプログラムするために使用eclipse CDT
するソフトウェアを作成するためにstm32f0-discovery
使用しています。ST-link
数日前、私OpenOCD6.0.1
はこのチュートリアルに従ってチップをデバッグしました:
数時間後、私はこの作業を行い、プログラムの設定ブレークポイントと他のすべての通常のデバッグを真に実行できるようになりました。さて、ここで奇妙なことが起こりました。私は自分の設定を -> Monitor reset halt から -> monitor soft_reset_halt に変更し始めました。これを行ったのは、3 本のワイヤ (SWD プログラミング) だけを使用してプログラムできる stm32f0 シリーズのチップを搭載したボードを最終的に開発したいからです。これがうまくいかなかったので、リセットの停止を監視するように設定を復元しました。
今日、私は自分のチップをデバッグしたかったのですが、Eclipse のデバッグを開始すると、デバイスがリセット ハンドラーにあることがわかりました (monitor reset halt コマンドのおかげで、これは正しいように思えます) この時点での openocd の出力は:
ここで、リセット ハンドラをステップ オーバーしてプログラムを開始したいのですが、次の警告が表示されます。
警告: stepi は無視されました。GDB は、ターゲットからレジスタの状態を取得します。
グーグルで調べた後、これを引き起こしている原因に対する答えが見つかりません。誰もがこの問題を解決する手がかりを持っていますか?
microcontroller - EEPROM エミュレーション STM32F4 用のフラッシュ ロケーションの予約
セクタ 2 と 3 で EEPROM をエミュレートして、消去時間を短く保ちたい (小さな 16kb セクタ)。私の質問は、コンパイラがこれらのセクターにプログラム コードを配置するのを防ぐために、このフラッシュ スペースを予約する方法です。
これまでのところ、意味のあるものは何も見つかりませんでした。
ありがとう
discovery - stm32f0 uart プログラミング
私は stm32f0-discovery で usart を動作させようとしていますが、この種のドキュメントが「欠けている」ことがわかったので、stm32f050 で動作する usart の例を持っている人はいますか?
ありがとう。
バート・テウニッセン