カウンタ

パルス幅はひとまず置いておいて、カウンタを試してみます。 プログラムはこんなの。難しいところはなさそう? 難しさと言えば、多機能ボードなのでいろいろな端子が すでに使われていて、残りの端子でなんとかする必要が あります。 今回はタイマ2のETRをカ…

パルス幅入力(2)

更新がいつものペースに戻った感じもしますが、 少しずつ活動は続けています。 パルス幅入力は、とりあえず動くようになったのですが、 気に入らないところがあって、そこを直すと動かなく なってしまうのです。 何か勘違いがあるのだと思いますが、現時点で…

パルス幅入力(1)

超音波距離センサを使ってみたいと思い、パルス幅入力を 試しました。使ったセンサはこれ: akizukidenshi.com 超音波を出して反射して戻ってくるまでの間センサからHighを 出力します。このセンサ出力がHighになっている時間を 測定すると、音速を使って距…

USB CDCがエラーになる要因

USB CDCがなぜかエラーになる場合があって、 その要因の一つがわかったので忘れないように 書いておきます。 本来ならUSBの設定を行ったときに、その割り込みハンドラである OTG_FS_IRQHandlerが生成されるはずですが、なぜか生成 されない場合があるようで…

I2C

I2Cで接続されたセンサを使ってみます。 最近は、まず参考になりそうな先人を探すところからスタートです。 今回はこの方の簡潔な説明を見て、考えながら試行錯誤しました。 単にセンサにアクセスするだけなら、これで十分な気がします。 meerstern.seesaa.n…

記事の数が100件を超えていました

いつの間にか、記事の数が100件を超えていました。 ただし、過去にブログを始めて三日坊主になって、 というのを繰り返したものを全部ここにまとめたので、 「ブログ始めました」という記事が10%くらい占めている気がします・・・ まあ、それも含めて私らし…

PWM

A-D変換でやってみたいことはあるのですが、先にPWMを試してみます。 ごく単純にLEDの明るさを変えるプログラムを作ります。 PB4にLEDがつながっていて、PB4はTIM3のCH1でもあるので TIM3を使ってPWMを実現します。 大量にあるPWMの情報の中から、今回参考に…

A-D変換 DMAの利用

今回は驚異的な進み方ですね。 次に、DMAを使ってみます。 A-D変換が完了したとき、これまではHAL_ADC_GetValueを呼び出して変換結果を取り出していましたが、わざわざ呼び出さなくても変数に格納してもらえるとうれしいわけです。DMAを使えばそれが可能にな…

A-D変換 変換完了割り込みの利用

次に、変換完了割り込みを使います。 前回とは、CubeMXでADC1の割り込みを有効にする点が 大きく違います。 Preemption Levelは、以前のタイマの時と同様にデフォルトの0から1に変更します。 ソースコードは、割り込みハンドラではフラグadcDoneFlagを立てる…

A-D変換 基本編

続いて、A-D変換に取り組みます。 検索してみると何か難しいところがあるようなので 注意が必要ですね。 簡単なところから、順番に進めていきます。 先人の知恵によると、 A-D変換を起動するトリガ、A-D変換完了時の割り込み、 A-D変換結果のDMA転送の3つが…

タイマ割り込み

STM32マイコンに多数用意されたタイマのうち、 ベーシックタイマであるTIM6を使って、 1秒ごとに割り込みを発生させて Lチカを行います。 まず、TIM6の設定を行います。 ベーシックタイマというだけあって、 上半分はほぼ設定がありません。 下半分では、タ…

USB CDC

今回のボードはデバッガがないので、printfデバッグになる予感がします。そこでUSB CDCでPCにメッセージを表示できるようにしてみます。 まずは、先人の知恵を調べてみると、次のようなところが見つかりました。 これらを参考に進めてみます。 blueeyes.saku…

HAL_Delay

いわゆるLチカをするときに、点滅の間隔の時間待ちをどうやって作るか、という問題があります。 とりあえず100万回ループとかにするわけですが、STM32Cubeを使うとHAL_Delayなるものがあることを知りました。引数はミリ秒単位で与え、例えばHAL_Delay(1000)…

STM32CubeIDE

開発環境として、STM32CubeIDEのバージョン1.0.0が公開されていました。これまではAtollicのTrueSTUDIOを使っていましたが、乗り換えてみます。 STM32CubeMXが統合されているので、これまでのようにコード生成時に毎回IDEを選択する必要がなくなって便利な気…

またしても、ご無沙汰な感じ

本業が忙しくなったり、お仕事をいただいたり、 いろいろあってご無沙汰しておりました。 マイコン関係でちょっと大型の仕事をいただいてしまい、 しばらくはFPGAはお休みにしてマイコンと戯れることにします。 今回は予告だけ。 思い返してみると、FPGAに取…

FPGAで遊んでみたい(Lチカ)

なんとか開発環境のインストールが終わったので、 動かしてみます。 今回の参考資料は、これです。いわゆるLチカです。 Getting Started with Vivado [Reference.Digilentinc] で、試してみようとすると、そもそもVivadoのアイコンが Vivado 2018.3とVivado …

FPGAで遊んでみたい(開発環境の準備)

ようやく、いただいた仕事が片付いたようなので、 目先を変えてFPGAで遊んでみたいと思いました。 以前に入手して放置していたボードを使います。 ARTY S7 FPGA評価ボード: 半導体 秋月電子通商-電子部品・ネット通販 試してみたいことはあるので…

ご無沙汰な感じ

しばらくご無沙汰な感じでした。 年末にもらった仕事を片付けたり、風邪を引いたり、 いろいろでした。そろそろ復活か? 忘れないように、気になる言語に追加しておきます。 Elixir qiita.com おしまい

FlashAir Developers Summit ハンズオン@大阪 に参加しました

19日に、大阪 日本橋のシリコンハウス3Fにあるものづくり工作室で 開催された、FlashAir Developers Summit ハンズオン@大阪に 参加しました。 Airio-Baseを使ってみよう、iSDIOチュートリアル、 FlashAir IoT Hubの3つのハンズオンを行う予定でしたが、 問…

そのうち見ておきたい色々なプログラミング言語のリンク(備忘録)

Qiitaのトップページをながめていると気になる記事がいろいろあったので、将来の自分のためにリンクだけ記録。 qiita.com これはすばらしい入門記事。 hypertextcandyというサイトがGatsby.jsで構築しNetlifyから配信していることも含めてそのうち読んでおき…

2018年のふりかえりと、2019年にしたいこと

どこかのサイトにこういう感じの記事があったので、 そのマネをしてみようと思いました。 2018年にできたこと、できなかったこと mbedまつり@名古屋に参加して、GR-Lycheeがあたった それをIoT的に使おうとして、全然わからないので、 長野で開催されたALGY…

micro:bitにつないだI2C接続センサをブロックエディタから使う

この記事は micro:bit Advent Calendar 2018 の 12日目の記事です。 まえがき 以前、CQ出版インターフェース誌のオフ会で話した内容から抜粋して紹介します。 micro:bitに次の3種類のセンサをつないで、MakeCodeブロックエディタに 標準で用意されているブロ…

micro:bitにつないだSPI接続センサをブロックエディタから使う

この記事は micro:bit Advent Calendar 2018 の 10日目の記事です。 まえがき 以前、CQ出版インターフェース誌のオフ会で話した内容から抜粋して紹介します。 いや、かなり情報を補足しているような気も。 micro:bitに次の3種類のセンサをつないで、MakeCode…

micro:bitにつないだアナログセンサをブロックエディタから使う

この記事は micro:bit Advent Calendar 2018 の 9日目の記事です。 まえがき 以前、CQ出版インターフェース誌のオフ会で話した内容から抜粋して紹介します。 micro:bitに次の3種類のセンサをつないで、MakeCodeブロックエディタに 標準で用意されているブロ…

B-L475E-IOT01Aで遊ぶ [14]

前回書いたことは、先日のALGYANハンズオンの資料にも 書いてありました。 algyan.connpass.com このハンズオン資料のスライド27ページ目が、 Azure Portalの画面ですね。 ExplorersカテゴリのIoT devicesから起動します。 26ページ目ではアプリのDevice Exp…

B-L475E-IOT01Aで遊ぶ [13]

1点訂正を。 Device Explorerをどうするかで、 Azure Portalから起動するパスがないと書いていたのですが、 名前が変わったものがあるようです。 IoT Hubを選んで、EplorerカテゴリのIoT Deviceを 起動すると、Device Explorerと同等の機能がありそうです。 …

B-L475E-IOT01Aで遊ぶ [12]

先日の記事で、「このDevice Explorerを使って行っている操作は何なのか」なんていう疑問を書いていたのですが、これはわかった気がします。 yamamoto-works.hatenablog.com IoT Hubがデバイスを識別するために、デバイス固有の接続文字列が必要です。 この…

B-L475E-IOT01Aで遊ぶ [11]

前回の続きで、Device Explorerについて調べたことを、簡単に。 Device Explorer の利用開始方法 – Japan Azure IoT Support Blog この記事を参考に、IoT Hubを作ってAzure PortalからDevice Explorerを起動しようとしました。 しかし、これを書いている時点…

B-L475E-IOT01Aで遊ぶ [10]

前回、いろいろやって、Device Explorerを起動できるところまでたどり着きました。 これを使って資料に従って進めると、無事にマイコンボードからデータを 送信して、それをDevice Explorerで表示できました。 めでたし、めでたし。 最近、最後まで進められ…

B-L475E-IOT01Aで遊ぶ - 目次

B-L475E-IOT01Aで遊ぶ の目次です。 はてなブログで、こういう使い方ができるかどうかの実験です。 スタンドアロン編 yamamoto-works.hatenablog.com yamamoto-works.hatenablog.com yamamoto-works.hatenablog.com Azure連携編 yamamoto-works.hatenablog.c…