問題タブ [i2c]
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.
usb - Devantechデジタルコンパスのi2cスレーブアドレスの設定
ここにあるDevantechデジタルコンパスと接続しようとしています -
http://www.acroname.com/robotics/parts/R117-COMPASS.html
i2c-usbコンバーターを使用してラップトップに接続しています-
http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm
まず第一に、私は電気工学についてあまり知りません。最低限の基本的なことはよくわかっているのですが、その後は迷子になってしまいます。
私はこのチュートリアルに従おうとしています -
https://xgoat.com/wp/2007/11/11/using-i2c-from-userspace-in-linux/
ただし、デバイスアドレスを設定しようとすると、最初に立ち往生します。
「スレーブアドレスの設定に失敗しました:無効な引数」を返します
コンパスのマニュアルに「最初にスタートビットを送信し、モジュールアドレス(0xC0)...」と書かれているため、最初はアドレスを0xC0にすべきだと思っていましたが、うまくいきませんでした。
これで、1 から 100 までのループができ、それぞれのアドレスを試してみましたが、すべて失敗しました。ループは -
他に何を試すべきかわかりません。今は、読み書きを開始できるようにアドレスを設定したいだけです。コンバーターは実際に PC に接続されているものなので、そのアドレスを使用する必要がありますか? もしそうなら、その情報を含むそのリンクのどこでそれを見つけることができますか? 誰かが私が何を試すことができるか、または何が間違っているかについての考えを持っていれば、それは素晴らしいことです.
編集:
さて、私は今このようなコードを持っています -
アドレスを設定しますが、何も書き込みません。それに書き込もうとするたびに、私は-
linux-kernel - I2C 経由で platform_driver を使用するのはいつですか?
私が探しているコード xxx デバイスは、I2C を使用して通信する IC です。どういうわけかプラットフォームデバイスを使用して書かれています。IC と通信するには、「microp_i2c_write()」を使用します (次の関数 write_xxx_register() を参照してください)。このコードは、別のプラットフォームで保守するのが難しいと思います。ナビ製品です。
質問: 1. 私の質問は、構造体 i2c_client *client をどのように組み込むことができるかということだと思います。このシナリオに?このようにすると、別の linux/andriod カーネルに簡単に移植できますか? 2. platform_driver が好まれる理由と時期は? 特に理由は?
arm - I2C stm32を適切に初期化する方法は?
ADXL345加速度計からデータを取得したいのですが、接続が間違っているようです。
SCL- PC6(10k抵抗付き)
SDA- PC7(10k抵抗付き)
SDO- GND
CS-VCC
GND-GND
3.3v-VCC
これが初期化する私のコードです:
一例で私は見ました
しかし、私はこのAPIを利用できません。
私を助けてください。私は多くの解決策を試し、SPIを介して接続しようとしましたが、成功しませんでした:(I2Cを手伝ってください。
c - I2Cを介してバイトのシーケンスを読み取る方法は?
加速度計から一連のバイトを読み取りたい。私はそれを動作させることができません。バイトごとに読み取る場合はすべて問題ありませんが、シーケンスを読み取ろうとすると、真の値を取得できません。
私が間違っているのは何ですか?この関数を、SPIを使用する他の関数から変換します http://code.google.com/p/flyless/source/browse/trunk/FLYLess/src/hal/adxl345.c
interface - Interfacing pic18f4550 with i2c EEPROM (24AA1025)
I am working on a university project in which i need to interface pic18f4550 with i2c EEPROM.
I read many codes and saw many projects on this topic. and I wrote a sample code from MPLAB C18 ( and i tried many codes also) but no one worked with me.
I dont where is the problem. Every thing is ok with my code and with my circuit, but the sck did not genrate clk for writing and nothing has been wriiten to eeprom. so if any one can help me plz.
NOTE: I can't post an image of my circuit, since I'm new user ! Here is the code:
Thanks in advance
linux - ユーザー空間で i2c ルーチンを実行するのは軽いですか、それともカーネル空間で同じドライバーを実行するのですか?
組み込み Linux を実行している ARM ベースのシステムに取り組んでいます。私が書いたユーザー空間プログラムを使用して、i2c 経由で (SMBUS ルーチンを使用して) 100Hz (10ms ごとに 12 回の読み取り) で 2 つの慣性センサーからデータを読み取っています。
「top」を実行していて、計算負荷の大部分が i2c 関数によるものであるコードの一部を除外していることがわかります (ソフトウェアによって与えられた 30% の全体的な CPU 負荷の約 90%)。
これらのデータを読み取るために何らかのドライバー (カーネル空間) を使用していた場合、計算負荷は同じままであるか、別の名前でのみ考慮されるか、または何らかのシステム最適化により実際に減少すると思いますか?
c# - I2C からデータを読み取る方法
Windows XP で I2C デバイスからデータを読み取りたいのですが、シリアル ポートと I2C デバイスの操作の初心者です。よく検索しましたが、I2C デバイスに書き込むコードをいくつか見つけましたが、読み取っていません。どのように始めればよいか教えてください。
編集: I2Cデバイス、I2CからUSBへのコンバーター、およびUSBケーブルがあります。これらを次のシーケンスで接続しました:I2CデバイスはケーブルでI2C-USBコンバーターに接続され、コンバーターは最後にUSBケーブルに接続されますUSB ケーブルはコンピュータ システムに接続されています。ところで、私のシステムでは Windows XP を使用しています。
c - C言語を使用したSBCでのi2cインターフェースのプログラミング
マイクロコントローラーatmega32と通信するために、SCBTS-7500のi2cインターフェースを使用しようとしています。twiclockfrequencyを構成したいので、そのためにECONACAVIUMネットワークアクセスプロセッサを構成する必要があります。Cのコードで2クロック周波数のレジスタを構成できません。i2ctemp.cimという名前のプログラムを使用して支援しています。
これはTWIのアドレスです。reg=map_phys(0x71000020、&fd); クロックのアドレスは0x24です。次に、TWI_CLKDIVのビット16:8。
私はこのようなことをしました:
void setbitrate(long bitrate){
* これは機能しないため、このレジスタ「0x24」を取得する方法を知りたいだけです-------------------> reg [0x24 / sizeof(unsigned)] = bitratediv ;** }
ご協力ありがとうございました
これがECONACAVIUMとプログラムi2ctemp.c(ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7558-linux/samples/i2ctemp.c)のマニュアルです!(http://www.embeddedarm.com/documentation/third-party/ECONA-CNS21XX-HRM-v.1.8.pdf)!
embedded - stm32f4のI2Cスレーブレシーバー
stm32f4にi2cスレーブレシーバー割り込みサービスルーチンを実装しようとしています。これが私のスマートなコードです。
}
割り込みが呼び出され、I2C_EVENT_SLAVE_RECEIVER_ADDRESS_MATCHEDケースに入ります。現在、SCLは低くなっています。リファレンスマニュアルには、アドレスフラグをクリアすると、クロックが続行され、データが送信されると記載されています(ページ579-スレーブレシーバー)。私の意見では、データが到着すると割り込みが常に呼び出され、次の状態はI2C_EVENT_SLAVE_BYTE_RECEIVEDになります。
stmまたはgoogle経由で例を見つけることができません。誰かが私を助けたり、例を見せてくれますか?