M5StickCが起動しない

ちょっとブザーを鳴らすテストをしようとして、出来るだけ小さくしたいと調べていたら、M5StickC Plus2が電源もあって、ブザーが入っているのでコレでいいやと思っていたら、「そういえばM5StickCがあったな…」と出してみたら、USBケーブルで接続して電源ボタンを押しても起動しないので、「長いこと放置していたからバッテリーがダメになったかな?」と調べてみたら、次のような記事が見つかった。

https://qiita.com/kazuhidet/items/7c0c6fa7995fa5da6e9a

「なるほど…」とArduino IDEで確認したら起動はしているようだった。FactoryTestスケッチを書き込んでみたらLCDも表示されて起動した。

ただし、次のイメージのようにLow Battery please charge!と表示される。

Low Battery please charge!と表示される

追記:一晩、この状態で放っておいたけど、回復せず…

追記:BATGNDを短絡してUSBにつないで充電するというのも試すけど、どうも手応えがない。

追記:「電源管理用ICチップをリセット」の部分に書かれていた、1kΩの抵抗でG03V3を接続して充電するというのも試すけど、手応えがない。

追記:今度は「M5StickC low battery please charge!と表示される」と検索すると、「M5StickCの内蔵バッテリーが充電されない問題 → 解決」という記事が出てきたので、読んでみたらコメント欄のアドバイスで充電できたとのこと。

コメント欄には、「AXP192のスケッチを実行した状態で、BAT3V3を短絡すると一度画面が消えて、再度電源を入れるとバッテリー電圧が0じゃなくなる」ということなので、まずはAXP192のスケッチを…と探したら、今はM5StickC > Advanced > AXP192 > PowerWakeというスケッチを書き込んで実行させたら、vbat: 0Vだった。

そこで、BAT3V3を短絡すると一度画面が消えるので、そのまま数分放置して、USBケーブルを抜いて、再度挿したらvbat:が0Vじゃなくて、増えていく状態になったので、短絡しているジャンパーを抜いて放置中。

充電中

追記:vbat:は3Vを越えるとだんだん遅くなって、4V以降はなかなか増えない。と思ったら4.19Vになったらいいらしい。

追記:USBケーブルを抜いて、電源OFFして電源ONで動くことを確認できた。でも、みるみるうちにvbat:が減っていき1分くらいで落ちた(電源OFF)。
多分、先ほどの記事の追記部分のように徐々に回復していくんだと思う。

カテゴリー: M5StickCシリーズ | タグ: | コメントする

ADAML2000

2021年6月に購入したのに記事を投稿していなかったので、メモ的に投稿。

ADALM2000はAnalog Devices社のPCに接続して使う計測機器です。 専用アプリのScopyを使って、オシロスコープやシグナル・ジェネレータ、ロジック・アナライザ、他として使えます。 今回は、パッケージの内容の紹介から、PCへの接続。専用アプリScopyでシグナル・ジェネレータ機能で波形を生成して、それをオシロスコープ機能で波形を見るまでを紹介します。

■ 公式の動画

ADALM2000 再生リスト
https://www.youtube.com/playlist?list=PLE6soOeVPOJ0Pj5sMui4KPDiTa7HY50y3

■ 製品ページ

https://www.analog.com/jp/design-center/evaluation-hardware-and-software/evaluation-boards-kits/ADALM2000.html

■ ADALM2000 Overview (Wiki)

https://wiki.analog.com/university/tools/m2k

カテゴリー: 備忘録, 測定装置 | タグ: , | コメントする

MP3再生モジュール(DFPlayer mini)を8ピンPIC(PIC12F1822)で動かす

前回、DFPlayer miniをArduinoで動かしましたが、今回は8ピンのPIC12F1822で動かしました。

前回使ったDFRobotDFPlayerMiniというライブラリは使えないので、同ライブラリを参考にPIC用の関数を書きました。(今はソースコードにテストコードとかがゴチャゴチャ入っているので公開していませんが、それらを整理したら公開したいと思います。)

動作は前回のGetStartedと同じで、ボリュームを20にして、001~004の4曲を8秒間ずつ繰り返し再生するというモノです。

配線図

注意!:単三乾電池は2本ではなく3本使っています。

カテゴリー: PIC, 部品 | タグ: , , | コメントする

MPLAB X IDEをアップデートしたら…

現在、MPLAB X IDE v.6.05で、最新版がv.6.20だったのでxc8(v.2.41→v.2.46)も合わせてアップデートしたら、MCC(MPLAB Code Configurator)も様子が変わっていて、今回使いたかったPIC12F1822の内蔵クロック8MHzのx4 PLLの設定が出来なくて32MHzでの動作が出来なかった(というか、わからなかった)。

また、今回、EUSARTが使いたかったけど、ボーレートの9600とか設定するのもレジスタでの設定しかなくて、EUSART_is_rx_ready()とかEUSART_is_tx_ready()等のサポート関数の生成もされなかったので、旧版に戻した。

カテゴリー: PIC | タグ: , , , , , | コメントする

MP3再生モジュール(DFPlayer mini)をArduinoで動かす

音楽を再生する小さなデバイスを作りたくて、MP3の再生できる小さなモジュールを探していたら、DFPlayer miniというmicroSDカード内のMP3ファイルを再生できるモジュールを見つけたので、今回はそれを紹介します。

今回、購入したのはスピーカーが2つ付属したmicroSDカードスロット大の小さなモジュールです。他にもスピーカーの付属しない3つセットとかもありました。

KeeYees DFPlayer Mini MP3プレイヤー モジュール ミニ 音声モジュール 音源再生モジュール + マグネットスピーカー 磁石内蔵 8オーム 2W 金属シェル

使い方としては「DFPlayer mini」で検索するといろいろ出てきますが、Arduino IDEでライブラリを検索するとDFRobotoDFPlayerMiniというライブラリが出てきたので、それをインストールしました。

サンプルの中にGetStartedというのがあったので、それで試しました。

ソースコードの18行目に回路図のURLが書いてあったので、それを見ながらArduinoと接続して動かしました。

https://wiki.dfrobot.com/DFPlayer_Mini_SKU_DFR0299#Connection_Diagram

DFRobotの解説ページ
DFRobotの解説ページより

変更点は、27行目のソフトシリアルに使うピンを(rx)10と(tx)11にして、さらに68行目の3000を8000にしました。

カテゴリー: Arduino, 部品 | タグ: , , | コメントする

PICkit3が使えなくなった

しばらくPICkit3を使っていなかったら、MPLAB X IDE v6.05で使えなくなった。
そもそも、MPLAB X IDEもしばらく使っていなかったので、最新版(v6.05)をインストールして、xc8コンパイラもv2.41をインストール。

環境はM1 iMac 24インチにVentura 13.3.1で、USB Aポートが無いので、直に接続できないのでAnker製のUSBハブ経由で接続。以前は、Intel iMacだったのでUSB Aポートがあって直挿ししてた。

macOSのシステムレポートのUSBにはPICkit3が出ているので、USB的には認識されていると思うのだけど、MPLAB X IDEから認識されていないっぽい。

USBに挿すタイミングとMPLAB X IDEを起動するタイミングをいろいろ変えても認識されないので、PICkit3をUSBに接続したままでiMacを再起動して、MPLAB X IDEを起動すると認識された。

ただし、一度でもUSBから抜くと再度iMacを再起動しないと認識されないので、とても不便。

カテゴリー: PIC | タグ: , | コメントする

抵抗分圧

抵抗分圧(抵抗器による分圧回路)は、直列につないだ2つの抵抗器の両端にかかる電圧を、2つの抵抗器の全体と片方の抵抗値の比率により分割する回路の事です。

下の回路図のようにVinにかけた電圧がR1, R2の抵抗器によって分圧されてVoutに出てくるというものです。

抵抗分圧の回路図

次にR1, R2によってどのようにVoutが決まる計算式は次のようになります。

計算式

応用編

抵抗分圧の応用として、抵抗値の変化を電圧の変化へ変換するというものがあります。

これはセンサーの一部には抵抗値が変化するものがあり、そのセンサーの値をマイコンで扱う場合、マイコンには電圧を読み取る機能があるので、この抵抗分圧回路に組み込んで使います。

今回はR2にボリューム(可変抵抗器)を使います。

R2を可変抵抗器にした回路図

考察

Google スプレッドシートでR1とR2の比率を1:10, 1:5, 1:2, 1:1の4つのパターンのR2の変化によるVoutをグラフにしてみました。

R1:R2のグラフ

1:10はVoutのレンジが広いですが、最初の部分での変化が大きいです。

1:5, 1:2はVoutのレンジもまあまあ確保できて、変化が穏やか。

1:1はVoutのレンジが半分しか無いですが、変化が直線に近いです。

どのくらいのレンジでVoutが欲しいか、またセンサーの取りうる値の範囲、またどの部分の変化を重視するかでR1:R2を決めるといいと思います。

動画

動画はこちらです。

カテゴリー: 基礎知識 | タグ: | コメントする

PIC16F1508+4PWM(LED)のICSP回路

PIC16F1508の4つのPWMにLEDをつないだ状態のICSP回路図をKiCadで描いた。

PIC16F1508+4PWM(LED)のICSP回路図

カテゴリー: PIC | タグ: , , , | コメントする

PICで複数のPWMを使う(どのチップを使う?)

複数のLEDの光量を制御したいと思って、プロトタイプとしてはArduinoを使うけど、最終的にはPICで実装したいと思って、PWMを4つくらい使えるPICを探していたらPWMが4つあるPIC16F1508を見つけたのでメモ。

カテゴリー: PIC | タグ: , , | コメントする

超安いUSB接続のロジアナ

Amazonで見つけた超安いUSB接続のロジアナを買ってみた。

パッケージ表側
パッケージ裏側

sigrokとPulseViewで使えるとの事(どちらも使った事が無いです)。

追記(2021/06/09)

sigrokのWikiページDownloadsからMac OS XのPulseViewとsigrok-cliの両方をダウンロードしてApplicationsフォルダーにコピーした。
sigrokはcliと書いてあったので、PulseViewを起動した。

カテゴリー: 工具 | タグ: | コメントする