2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?