LSI Jiu-Jitsu

電子工作とブラジリアン柔術

STM32

MicroPythonで遊ぶ (5) - SDカードシールド(SDカード)

SDカードへライトしてみます。 RTC同様にSDカードドライバをインポートすることで簡単にライトできました。SDCardクラスのコンストラクタに、I/FのSPI1とCSのPB6を指定します。 from machine import SPI import pyb, sdcard, os sd = sdcard.SDCard(SPI(1), …

MicroPythonで遊ぶ (4) - SDカードシールド(RTC)

Arduino用のSDカードシールドをMicroPythonで使ってみようと思います。 Amazonで購入しました。 https://www.amazon.co.jp/dp/B07GDZ9XLN/ ボードは NUCLEO-F446RE を使用しています。 Arduino互換のピン配置なのでピッタリ収まります。SDカードへアクセスす…

MicroPythonで遊ぶ (3) - ADT7410 & SHT35

MicroPythonからI2C接続の2つの温度センサーを動かしてみました。 ボードは NUCLEO-F446RE を使用しています。2つの温度センサーは秋月電子で購入したADT7410とSHT35です。 ADT7410(600円) 16Bit、One-Shot Modeで動作させています。 from machine import I2…

MicroPythonで遊ぶ (2) - SSD1306

MicroPythonからI2C接続のOLEDを動かしてみました。 ボードは NUCLEO-F446RE を使用しています。 MicroPythonのサイトからソースコードをダウンロードして解凍 https://micropython.org/download/ (記事作成時点では micropython-1.19.1.zip が最新でした) …

MicroPythonで遊ぶ (1) - F446RE

Pythonをキチンと勉強しようと思い立ちました。 そこで、組み込みに特化したMicroPythonを使ってみようと考えたところ、タイミング良くインターフェースで記事が特集されていました。 手持ちのNUCLEO-F446REボードのセットアップ手順も書かれていたので、さ…

STM32で遊ぶ (11) - SPI

I2C接続のOLEDと同様にSPI接続のOLEDも表示させてみました。 OLEDのコントローラーはSH1106になります。SPI信号は SPI1_NSS SPI1_SCK SPI1_MOSI の3本を使用しました。データシートより各信号のピン番号を調べると PA4 PA5 PA7 に割り当たっています。 https…

STM32で遊ぶ (10) - CoreMark

日常生活がとんでもない状況になり健康と経済の不安と戦う毎日です。 テレワークで会社のPCでプログラムを書いて、終了後は自分のPCで趣味のプログラムやボードいじりと言う生活サイクルはなかなか悪くないな、なんて思ったりもしますが家族は少々呆れていま…

STM32で遊ぶ (9) - I2Cマスター

新型コロナウィルスの影響で柔術の練習に全く行けていません。 早く平穏な日常に戻って欲しいと願うと同時に、ついこの前までの何事もなかった日常を懐かしむ毎日です。 持て余している時間は、Switchのどうぶつの森かSTM32ボードをいじって遊んでいます(笑)…

STM32で遊ぶ (8) - I2CマスターRead

照度センサーを接続してI2Cリードの確認を行いました。使用したモジュールはこちらです。 aitendoで購入しました。 www.aitendo.com搭載しているフォトダイオードはロームのBH1750と言う型番でした。 上のaitendoの商品ページにデータシートがリンクされてい…

STM32で遊ぶ (7) - I2CマスターWrite

I2Cを動かしてOLEDを表示させることができましたので、制御方法などについてを纏めます。 なお、マスター制御のライトのみですので、リードとスレーブ制御については何も情報ありません・・ (リードはそのうち・・)I2C_CR1のPE(Bit[0])を1にする前に I2C_CR2 I2C…

STM32で遊ぶ (6) - GPIO AFモード

STM32F446REでI2Cなどの機能を使用する際に設定が必要となるGPIOのAFモードについて理解した点を纏めてみました。ポートに各機能を割り当てるには、該当ポートを「Alternate function mode(オルタネート・ファンクション・モード)」(以下AF)で使用します。 A…

STM32で遊ぶ (5) - クロック構成

STM32F446REのクロック構成が良く分からなかったので、データシート(RM0390 Reference manual)のFigure.14にレジスタを当てはめてみました。RM0390 Reference manualはこちらです。 https://www.stmcu.jp/design/document/reference_manual/51547/ ・初期値 …

トラ技 - 2020年3月号

STM32F特集と言うことで購入しました。STM32CudeIDEを使用した入門としては最適なのでは無いでしょうか。 GUIでペリフェラルのコンフィグレーションを設定するのは時代の流れなのでしょうね。 (それにしてもクロックのコンフィグレーションは便利そう・・)欲を…

STM32で遊ぶ (4) - printf表示

SW4STM32でARMのセミホスティング機能を使ってprintf表示が行えるようにします。 プロジェクトの「Properties」からリンカのオプションに下記を追加します。 -specs=nosys.specs -specs=nano.specs -specs=rdimon.specs -lc -lrdimon srcディレクトリ内の sy…

STM32で遊ぶ (3) - LEDチカチカ

前回構築したSW4STM32環境を使って、NUCLEO-F446REのLEDをチカチカさせてみます。(俗に言うエルチカ) LEDはボード上にユーザー用として1つだけ実装されている「LD2」を使用します。 LD2の接続先はこちらの「UM1724 User manual」によると「PA5」か「PB13」と…

STM32で遊ぶ (2) - SW4STM32

10ヶ月も空いてしまいましたが(笑)、STM32でまた遊んでいこうと思います。 前回はMbedを使った開発方法を纏めましたが、今回はSystem Workbench for STM32(SW4STM32)を使用した開発環境を構築してみます。 使用ボードは「STM32 Nucleo Board STM32F446RE」 …

STM32で遊ぶ (1) - Mbed

短い期間でしたが仕事でARMコアのCortex-M4を搭載したCPUマイコンに触れる機会がありました。 そこまで深い機能まで使用することは無かったのですが、これで終わりにするのは勿体ない思いがあり、自宅で少し遊んで(勉強)みることにしました。Cortex-M4を搭載…