問題タブ [mbed]
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++ - 古いアイテムの最後にデータをプッシュする空の std::queue
ネットワーク (この場合は CAN バス) でメッセージをバッファリングするために std::queue を使用しています。中断中に、メッセージを「受信トレイ」に追加しています。次に、私のメインプログラムは、キューが空であるかどうかをサイクルごとにチェックし、そうでない場合はメッセージを処理します。問題は、キューが空になるまでポップされることです ( while (! inbox.empty())
.
たとえば、最初のメッセージは「1」をキューにプッシュします。ループ読み取り
- 1
次のメッセージは「2」です。次に読むのは
- 2
- 1
別の読み取り「3」、「4」の前に 2 つのメッセージを取得した場合、次の読み取りは
- 3
- 4
- 2
- 1
私は非常に混乱しています。また、STM32F0 ARM チップを使用してオンラインで mbed を実行していますが、これがハードウェアでうまく機能していないのか、それとも何なのかわかりません!
スレッドの安全性が心配だったので、追加のバッファー キューを追加し、"ロック解除" されたときにのみ受信トレイにプッシュしました。そして、これを実行すると、とにかく競合が発生するのを見たことはありません!
プッシャーコード:
メインプログラム読み取りコード
誰か考えますか?私はこれを間違って使用していますか?私がやっていることを簡単に達成する他の方法はありますか? 小さな循環配列を実装するのに十分なほどバッファが小さいと予想していますが、手元にキューがあるので、そうする必要がないことを望んでいました。
c++ - 割り込み時に UDP パケットを送信する
mbed プラットフォームを使用して割り込みがトリガーされたときに、UDP パケットを送信しようとしています。
udp_send
ただし、割り込み関数から呼び出そうとするとkey_pressed
、sys_arch_protect エラーが発生します。
これは、UDPsocket の一部が割り込み関数に渡されていないためでしょうか?
簡潔にするために、ほとんどのコードを省略しました
前もって感謝します、 グレッグ
mbed - mbed ボードで実行されているコードで変数が更新されない
上記のコードは、端末から「c」の値を受け取り、それに基づいて決定を下します。私が直面している問題は、printf を使用すると variabl c が更新され、コードが正しく実行されないことです。助けてください。
c++ - wait() 関数は何をしますか?
こんにちは、私は Java の学習を開始し、現在 C++ を学習しようとしています。私はこのコードを持っていますが、それが何をするかを理解できません。プログラムが開始する前に、プログラムを一定時間待機させると想定しています。しかし、いくつかのさらなる説明は非常に役に立ちます。
さらに説明が必要なセクションにコメントを追加しました。
ssl - polarssl でクライアント証明書を読み取るには?
を使用してサーバー側からクライアント証明書を読み取る方法はmbedtls(polarssl)
? を使用してコーディングされたサーバーがありましたmbedtls(polarssl)
。クライアント証明書を読み取り、その証明書から情報を取得したいと考えています。クライアント証明書を読み取るために使用される関数を誰でも知っていますか?
http - HTTP 応答が C で終了するかどうかを確認する方法
TLS に mbedTLS を使用し、HTTP ヘッダーをハードコーディングして HTTPS サーバーと通信する組み込みプロジェクトに最小限の HTTPS レイヤーを実装しています。
通常の Web サイトでは問題なく動作します。しかし、これまでのところ、私の実装では、最後に読み取られたバイトが\n
.
ただし、これは明らかな理由で常に機能するとは限りません。を試してみopenssl s_client
ましたが、同じように動作します。HTTP 応答が で終了した場合、すべてのデータをフェッチした直後に戻ります\n
。s_client
そうしないと、永久にブロックされ、次のデータを待ちます。
実際のブラウザはこれを適切に処理できるようです。タイムアウトの設定以外にできることはありますか?
c++ - if、else if、else ステートメントを c++ の switch ステートメントに変換する
次の if else ステートメントを c++ の switch ステートメントに変換できるかどうかを知りたかったのです。現在、私が書いた方法でエラーが発生しているため、誰かができる場合はその方法を教えてください。
これは、switch ステートメントに変換しようとしている if else ステートメントです。
これは私が変換したものですが、エラーが発生します。
stm32 - mbed + platformio.org: アドバイス?
最も基本的な (点滅する) コードを STM32F401 Nucleo ボードで実行しようとしています。現在のステータス:
- RUNS: すぐに使える点滅コード (プッシュボタンに応答)
- 実行: シンプルな点滅コードの mbed.org オンライン コンパイル (~13k ビン、期待どおりに点滅)
- FAIL: platformio でコンパイルされた bin はほぼ 30k で、ライトが点滅しません。#2と同じソースコード
ini ファイルは次のとおりです。
#3を機能させるにはどうすればよいですか?私は何を間違っていますか?ありがとうございました!