問題タブ [ftdi]
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.
android - Androidでftdiカーネルドライバーをデタッチするには?
私はこのようにAndroidでftdiカーネルドライバーをデタッチしようとしました(libftdi-0.xコード):
デバイスの次の呼び出しはすべてエラー = 32 (EPIPE)で失敗するため、実際には切り離されていないと思います。
ログ:
上記のコメントによると、実際には切り離されていないようですが、結果は大丈夫です。
少なくともそれを切り離すか、実際の結果を得る方法についてのアイデアはありますか? ウォークアラウンドはありますか?
更新:私は、2つの異なるFTDIデバイスを備えたAndroid 4.0.xとAndroid 4.1でUSBホストをサポートする2つのAndroidデバイスで試しました。
更新: Android の問題を作成しました
java - JNA: void** と void* の間の変換
ヘッダー ファイルから JNA を生成しました。ここに、関心のある 2 つの関数を示します。
そして、これがJNAでどのように変換されたかです。
PointerByReference を渡して FT_OpenEx を呼び出し、ポインターを取得して FT_Close に渡します。コードは実行されますが、FT_Close によって返される FT_INVALID_HANDLE を受け取ります。
ここにJavaコードがあります
私の推測では、FT_Close に渡すポインターは、実際には正しいアドレスを指していません。JNAを使用してJavaでvoid **からvoid *に渡す適切な方法は何ですか?
c# - 非ASCII文字を含む文字列をシリアルポートC#から送信する
そのため、C# で serialport オブジェクトを介してデバイスと通信しようとしています。デバイスは、コマンド文字列の一部として送信されるマスク値を探しています。たとえば、文字列の 1 つは「SETMASK:{}」のようなものになります。ここで、{} は符号なし 8 ビット マスクです。
端末 (BRAY など) を使用してデバイスと通信すると、デバイスを動作させることができます。たとえば、BRAY 端末では、文字列 SETMASK:$FF はマスクを 0xFF に設定します。ただし、C#でこれを行う方法を理解することはできません。
Data がマスク値で、CMD が周囲の文字列 ("SETMASK:" in this case") である次の関数を既に試しました。