-さて先日購入したLEDストリップの動作に驚愕してもろもろ基本的な動作検証をしたわけですが。-フルカラーLEDのリフレッシュレート-ここではもう一度落ち着いてAPA102-2020と向き合ってみたいと思います。トランキーロ!あっせんなよです。購入したLEDバーは以下です。APA102-2020が3mmピッチでぎっしり128個も載った商品で、強度や放熱のためか基板には1mm厚ほどのアルミ板が貼り付けられています。Vision)には適していないとも明記されています。商品データシートは以下https://cdn-shop.adafruit.com/product-files/3776/3776_datasheet.pdfAPA102-2020購入したLEDバーに搭載されているチップの写真が以下です(小さすぎてうまく撮れない。たくさんのチップが検索されます。以下に一部をまとめます。データシート恐らく購入したLEDバーに搭載されているAPA102-2020は8ピンでチップ写真から想像するにAPA102-2020-256-8かAPA-102-2020-8192-8Bなのではないかと思います。サイトページとデータシートの写真が異なっていたりデータシートもリフレッシュレートが記載ないなど情報不十分ですので、もはや製造元や正式型番を知ることに意味はないように思います。いうことで実機で動作を観ていきましょう。それこそ泥臭き爪真っ黒のエンジニアリングというものです。UNOでLEDバーのセルを1つ光らせて点灯時の電流を10Ω抵抗による電圧降下でオシロスコープ観測しリフレッシュレートを観ます。オシロにはADALM2000を使用しています。LED用ライブラリLED点灯用のライブラリはAdafruitのDotstar用のライブラリを使用しました。https://github.com/adafruit/Adafruit_DotStarここでこのライブラリの注意点があります。このライブラリのsetBrightness()はLEDの輝度を設定する関数ですが、グローバル輝度を設定するものではありませんでした。setBrightness(0~255)は色輝度に係数としてかけられておりました。以下のコードコメントにも明記されております。LEDはグローバル輝度を設定すると600Hzほどの低周波PWMが重畳されます。そのためPOVに使用した際に残像の途切れの要因となります。そこでAdafruitはsetBrightnessをグローバル輝度ではなく色輝度への設定に変更したようです。このライブラリではグローバル輝度は最大値(31)となっております。正しい判断だと思います。ここではグローバル輝度も変更してLEDの特性を観たいのでライブラリを修正して可変にしております。spi_out(0xFF)もしくはsw_spi_out(0xFF)の0xFFを所望のグローバル輝度に変更します。0b11100001などです。(0~31)で指定します。グローバル輝度をさげると周波数が上がり、LEDに流れる電流が減りました。グローバル輝度16、色30グローバル輝度16、色224グローバル輝度を16として色輝度を変えていくと以下のような結果となりました。100色輝度-Dutyは以下の通り。わからない動きをしておりますが。LEDバーに搭載されているAPA102-2020は低いリフレッシュレートのためPOVには向かないことがよ~くわかりました。2019バーサライタへの応用しかし、ここで「あーリフレッシュレート低いわ。バーサライタ無理だね」と終わってしまってはタダのリサーチャーもしくは評論家止まりなわけで。私は泥臭き爪真っ黒のエンジニアリングをやめませんよ。9430円も払ったんですから。100%で低周波PWM制御の影響は受けません。SPRESENSEを用いてこのLEDバーを使用したバーサライタを試しました。バーサライタLEDバーを搭載!LEDバーの128個のセルのうち64を使用してグローバル輝度は1としました。のこりの64個はいっさい制御せず電源投入時に点灯したままになったりするので黒テープで隠してます。動作SPRESENSEは1コアのみの使用。LED64個の点灯で1周128分解能が達成されました。