問題タブ [socketcan]
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# - mono を使用した SocketCAN C#
私は mono と C# に本当に慣れていませんが、ソケットを使用して CAN 経由で通信を開始したいと考えています。問題は、多くのプロトコルとアドレス ファミリが実装されていますが、今のところモノでは CAN がサポートされていないことです。システム カーネルはそれをサポートしていますが、この方法でファイルにパッチを適用して SystemCall レベルまで下げることはできません。したがって、本当に素晴らしいモノ開発コミュニティの一員である誰かがこれを読んだら、私とこの機能を必要とする他の多くの人を助けてください。3週間以来、私は何かをグーグルで検索し、それを取得するための独自の回避策を見つけようとしましたが、今まで成功していません. ここstackvoerflowのこの質問で私の問題が解決されない場合でも、私よりモノとハードコードの改善に優れている人をやる気にさせて、他の人がCANとモノで簡単に作業できるようにしたいと考えています. 基本的な問題は、変数 AF_CAN および PF_CAN がモノラルで実装されていないこと。値 29 の PF_CAN と AF_CAN を追加してこれらのファイルを調整することで最善を尽くしましたが、うまくいきません
すべて揃っているので助けてほしいのですが、すべてをまとめることはできません。C では、この方法で簡単にソケットを開くことができ、CAN バスは問題なく動作しますが、モノラルでは、すべてを機能させるには小さな石が欠けています。
よろしくベン
c++ - SocketCAN c++ ラッパー
C++ でプログラムされた Linux アプリケーションでSocketCanを使用したいと考えています。SocketCan の素敵な C++ ラッパーを知っている人はいますか? そうでなければ私は何かを書きます。
c - 複数のスレッドからソケットを書き込むときに、書き込みが可能になるまで待機するために「選択」する必要がありますか?
Linux で、このように複数のスレッドで同じソケットに書き込むコードがあります。これは、私の開発テスト (疑似コード) で動作しているようです。
これらすべてのスレッドが書き込み用に 1 つのソケットを使用することが重要です (実際には SocketCAN ソケットであり、複数のソケットで受信フレーム処理が重複するオーバーヘッドを回避する必要があります。1 つのソケット、1 つの読み取りスレッド、および複数の書き込みがあります)。スレッド)。
意図された動作は、write
ハードウェア送信バッファがいっぱいになった場合 (せいぜい数マイクロ秒) に失敗するのではなく待機することです。しかし、SocketCANドライバーがこれを行うのか、それとも一般的なソケットの動作が保証されているのかはわかりません.
だから私の質問は:上記で十分ですか、それともソケットが書き込み可能になるのを待つ必要がありますか?例えば:
私のテストでは問題なく動作していますが、ここでのテストに 100% の自信があるわけではありません。
raspberry-pi - Raspberry Pi での CAN バスと SPI 通信
2 つのラズベリー pi を使用して、アダプティブ クルーズ コントロールのプロトタイプを開発しています。pi で SPI をテストしましたが、動作します (ループバックで確認しました)。次に、このデータをコントローラーに書き込みたいと思います。したがって、リソースを参照した後、コントローラーをpiとインターフェイスさせるには、Socketcanを使用する必要があることがわかりました。だから私は通信がどのように起こるかを説明するように誰かに要求します。2. socket を使用して spi からデータを取得できる場合、その方法を知る必要がありますか?
ありがとう
c - SocketCan ID の優先順位付け
私はSocketCanが初めてです。仮想缶を使用していますが、SocketCAN が CAN ID に基づいて優先順位付けを行うかどうかを知りたいです。私の質問は、仮想缶を使用しているため、データを送信してから、送信されたデータをすぐに受信することです。負荷を作成しようとすると、CAN ID の低い CAN フレームがキューでより長く待機し、優先度の高いフレームの後に受信されることが予想されます。では、SocketCAN はこの優先順位付けを管理していますか?
javascript - node.js の SocketCAN
Linux が組み込まれた ARM ボードを使用していますが、非常に限られています。なんとかnode.jsとnpmをインストールできました。アイデアは、Web ページからのボタン クリック イベントで CAN バス経由でデータを送信することです。「socketcan」というモジュールが 1 つしか見つかりませんでしたが、次の行のためにインストールできません。
私のボードは最初の行を実行できません。つまり、見つかった唯一の CAN ツールを node.js に使用できません。node.jsからCANバスでメッセージを読み書きする他の可能性はありますか?