部品屋根性(113) AD9837、プログラマブル波形生成器、M5Stackで生成テスト

AD9837_DUT_wM5Stack
Joseph Halfmoon

今回試用してみるデバイスはDDS(ダイレクト・デジタル・シンセサイザ)です。正弦波、三角波、矩形波などの波形をお好みでシンセサイズしたのち、DAコンバータを介してアナログ出力できるもの。ディープな用途には必携?らしいデバイスであります。動作させるためにはホストのマイコン必要。今回はM5Stackを使ってテスト。

“部品屋根性(113) AD9837、プログラマブル波形生成器、M5Stackで生成テスト” の続きを読む

手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成

envelopPLOT1
Joseph Halfmoon

第107回で赤外線リモコン波形の解読を行いましたが、レシーバモジュールが出力する「検波」済の波形に対してでした。簡単にマイコンでも出来る解読。しかし別件シリーズで「生波形」を取得しつつあります。この「生波形」を検波してレシーバモジュールがやっている仕事相当のことを計算して~と考えました。包絡線検波すればよろしいの?
“手習ひデジタル信号処理(110) Scilab、包絡線検波の自前関数作成” の続きを読む

ぐだぐだ低レベルプログラミング(145)ARM64(AArach64)SIMD ビット幅変4

wnmulResults
Joseph Halfmoon

SIMD要素のビット幅が変化する命令群の練習の最後は乗算系です。今まで練習してきた加算系、減算系と異なり、ビット幅が狭くなる方向の命令はありません。そして広くなる方向にWideとLongの2種類の区別があるとかもありません。だから命令数少ないかと言ったらそうはいかないA64です。18個とな。命令多過ぎA64。

“ぐだぐだ低レベルプログラミング(145)ARM64(AArach64)SIMD ビット幅変4” の続きを読む

MicroPython的午睡(134)M5Stack UIFlow2、CLOCK出力

PWMWaveForm

今回新デバイスをM5Stackに接続せんと思ったら外部クロックを必要とするものでした。適切そうな周波数は25MHzとな。そこで今回はM5Stack上のMicroPythonで25MHzクロックを生成。けれどAD2のFs=100MHzしかないので、生成した25MHzクロックを16分周して周波数を測定してみます。メンドイ?

“MicroPython的午睡(134)M5Stack UIFlow2、CLOCK出力” の続きを読む

データのお砂場(112) R言語、darwin、自家受粉と他家受粉の高低差、{boot}

DarwinHist
Joseph Halfmoon

前回は炭鉱事故でしたが、今回はチャールズ・ダーウイン先生の御登場です。ダーウインというと発作的に「種の起源」と唱えてしまう頭の固い年寄デス。しかし先生の偉大な業績についてはほとんど何も知らず。今回は先生指導の下行われたらしい「自家受粉と他家受粉」を比較するための実験結果のデータです。古いデータだよ、19世紀。 “データのお砂場(112) R言語、darwin、自家受粉と他家受粉の高低差、{boot}” の続きを読む

PIC三昧(25) CONFIGビット読めていた、フェイントU-bit PIC16F18855

CONFIG_PRAGMA
Joseph Halfmoon

前回、Flashの中の「コードとは別な空間」にあるDevice IDは読めたけれども、CONFIGURATIONビットが読めないと混乱しました。しかし、よくよく調べてみたら実は読めていたことが判明。MCCの提示した値が読めるものと思っていたところ、実機では異なる値が読めることが判明。ようやく腑に落ちました。

“PIC三昧(25) CONFIGビット読めていた、フェイントU-bit PIC16F18855” の続きを読む

忘却の微分方程式(126) 反復練習89、解曲線、Maxima

DE005_plot_M1_1
Joseph Halfmoon

微分方程式のHelloWorld的例題の練習4回目です。前回は単振動のモデル、物理現象に対応しているので分かりやすかった?今回は微分方程式の解が表す曲線(解曲線)の全体は平面全体を覆うことが「多い」の回デス。プロットして「味わってみるだけ」だけれども。まあ10本も解曲線を引いてお茶を濁しますです。

“忘却の微分方程式(126) 反復練習89、解曲線、Maxima” の続きを読む

STM32三昧(6) Cube IDE、TIMER6+DACで三角波生成、Nucleo

ResultWOLPF
Joseph Halfmoon

STMicroelectronics社純正開発環境Cube IDEを使用し、STM32のHAL(ハードウエア抽象化レイヤ)を試用中です。前回はTIMER6の割り込みを使ってみました。今回はDAC(デジタル・アナログ・コンバータ)が搭載する「ジェネレータ」機能をTIMER6でトリガしてDACから3角波を出力してみます。

“STM32三昧(6) Cube IDE、TIMER6+DACで三角波生成、Nucleo” の続きを読む

連載小説 第149回 4ビットAI内蔵 “詠人舞衣子” の思い出

Maiko Yonbito
Momoe Sakurada
ペンネーム
桜田モモエ

<これまでのあらすじ>

サイコーエジソン株式会社の詠人舞衣子(よんびとまいこ)です。訳あって4ビットAIを内蔵しています。心理学科卒文系女子ながら先端技術製品の営業に携わっています。10年近くに及ぶ海外赴任(アメリカ、ドイツ)を経て、今は東京から海外市場をサポートしています。インターネット、IT機器、携帯電話など新しい技術や製品が日々生まれ、それらをサポートする我々の電子デバイスビジネス(半導体、液晶表示体、水晶デバイス)も大忙しですが、台湾や韓国などの新興勢力も台頭してきて、日本の電子デバイス業界も大きな影響を受けていました。 “連載小説 第149回 4ビットAI内蔵 “詠人舞衣子” の思い出” の続きを読む

部品屋根性(112) AD8656でトランスインピーダンスアンプ、赤外線リモコン生波形

Joseph Halfmoon

前回DIP化したCMOSオペアンプAD8656を今回はトランスインピーダンス・アンプ構成で使用したいと思います。遥か以前の過去回で「設計」してあったもの。今回実機に実装してみたのは、赤外線リモコンが発する「生波形」を取得したいがため。リモコン受光ユニット内部でやっている「信号処理」を自前でやるための準備です。

“部品屋根性(112) AD8656でトランスインピーダンスアンプ、赤外線リモコン生波形” の続きを読む

誘うPC98互換機(9) GDCのVRAMのアドレシングは微妙です

Kitsuneno_shippo

描画のためXY座標をVRAMに展開する場合、そのアドレス変換は微妙です。なぜかと言えば画面をXY座標の第一象限と考えると、ハイレゾモードでは横1120dot(46hワード)、縦750lineですから、X=Y=0となる左下のアドレスはn=104860(CCCEhワード)です。<外伝>なぜXY座標に拘るかをお話しします。

“誘うPC98互換機(9) GDCのVRAMのアドレシングは微妙です” の続きを読む

GoにいればGoに従え(43) ラズパイPico、TIMERアラーム、一部は使われている?

ALARM0runs
Joseph Halfmoon

ラズパイPicoにTinyGoのオブジェクトを書き込んでラズパイPicoハードウエアをどう制御したものか手探りしてます。今回はTIMERにやってまいりました。TinyGoのmachineパッケージから直接TIMER使えないのだけれど、調べてみるとTIMERはしっかり使われている形跡があります。使っているのは誰ぞ?

“GoにいればGoに従え(43) ラズパイPico、TIMERアラーム、一部は使われている?” の続きを読む

MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ

M5Stack_DHT11_DUT_EC
Joseph Halfmoon

前回はUIFlow2版MicroPython搭載のM5Stackに定番の気圧センサBMP280を接続。今回はこれまた定番の温湿度センサDHT11を接続してみます。過去回でESP32版MicroPythonでDHT11を制御していたのでお楽。M5Stackらしくお愛想にLCDに温湿度を表示するようにいたしました。
“MicroPython的午睡(133)M5Stack UIFlow2、DHT11温湿度センサ” の続きを読む

ぐだぐだ低レベルプログラミング(144)ARM64(AArach64)SIMD ビット幅変3

uabalResults
Joseph Halfmoon

前回前々回でSIMD要素のビット幅が狭く(narrow)なる、広く(wide/long)なる命令群のうち「加算系」を練習してみました。加算あれば減算あり、とは言え加算命令群と「対称な」減算命令群ならパスしても良いのでは?と思ったら「減算系」には差を取った後、絶対値をとる命令群もあるのです。命令多過ぎA64。

“ぐだぐだ低レベルプログラミング(144)ARM64(AArach64)SIMD ビット幅変3” の続きを読む