こんにちは、
私は、I2C_read() および I2C_write() 関数を使用しない ARM プロセッサと MMA8452Q をインターフェイスしようとしているので、センサーと MCU をインターフェイスするのに役立つライブラリを探しています。他にも同じ課題に直面した人はいますか?ATSAMD21 プロセッサを使用しています。
アンソニー、
ご提案ありがとうございます。
あなたの提案を検討して、後ほどご連絡させていただきます。
よろしくお願いします。
ニール。
ニール、
質問に戻ると、読み取り/書き込み関数を再定義して、ライブラリをポータブルにすることができます。
#I2C_Read vATSAMD21_Read を定義します
#I2C_Write vATSAMD21_Write を定義します
void vATSAMD21_Read(uint8_t* __au8_outBuffer, uint8_t __u8_length)
{
// ここにコード
}
void vATSAMD21_Write(uint8_t* __au8_inBuffer, uint8_t __u8_length)
{
// ここにコードを記述
}
すべてのコードを壊すことなくライブラリを適応させる簡単な方法です。
アンソニー
こんにちは、ニールさん。
ATSAMD21 プロセッサには I²C ペリフェラルが付属しています。デバイスのデータシートを読んで、独自の I2C_Read&Write 関数を記述できるはずです。ATSAMD21 I²Cペリフェラルを構成するには、おそらくいくつかのレジスタが必要です。
完了すると、MMA8452Q 加速度センサとインターフェースできるようになります。
ここで私たちがあなたを助けることができるかどうかわかりません...これは MCU の問題です。ATMEL MCU フォーラムを探してください。彼らは自社製品に対してより効率的かつ慣れているはずです。
ちなみに、MMA8452Q センサの設定に問題がある場合 (i²c 通信が修正されたら)、遠慮なくコミュニティに再度お問い合わせください。
よろしくお願いいたします。
アンソニー