LoginSignup
2
0

More than 5 years have passed since last update.

I2Cの有効化

Posted at

はじめに

前回作成したプロジェクトを変更してI2Cの機能を有効化します。
また、今後のために合わせてOSも有効にしておきます。

STM32CubeMXの設定

以下の手順で設定を変更しました。

I2CとOSを有効にする

Configuration
FREERTOSのEnabledをチェック
I2C1をDisableからI2C
に変更します。
CPUのPB8がI2C1_SCLに、PB9がI2C1_SDAとなります。
I2C1はPB6をI2C1_SCLに、PB7をI2C1_SDAとして使用することもできますが、
X-NUCLEO-IKS01A1では、PB8をI2C1_SCLに、PB9をI2C1_SDAとして使用します。

1.jpg

Timebaseを変更する

Configuration
Timebase SourceをSysTickからTIM1
に変更します。
SysTickはOSが使用することになるためTIM1に変更しています。

2.jpg

I2Cの設定を変更する

センサーデバイスの仕様に合わせてI2Cの設定を変更します。
Configurationタブを選択し、I2C1ボタンをクリックします。

3.jpg

I2C1 Configuration画面が表示されるので、
Rise Time(ns)を1000
Fall Time(ns)を300
とします。

4.jpg

タスクを追加する

動作確認用にタスクを追加します。
FREERTOSボタンをクリックします。

5.jpg

FREERTOS Configurationが画面が表示されるので、
Tasks and Queuesタブを選択し、Addボタンをクリックします。

6.jpg

New Task画面が表示されるので、追加したいタスクの情報を入力します。
今回は、下記画面のように入力しました。

7.jpg

OKボタンをクリックして、タスクが追加されていることを確認してOKボタンをクリックします。

8.jpg

プロジェクトの生成

設定が完了したらProjectメニューからプロジェクトを生成します。

9.jpg

まとめ

I2Cを使用するための準備ができたので、次は実際にデバイスにアクセスしてみようと思います。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0