レトロな(4) シミュレータ上のCP/Mでマクロアセンブラを

PRN_SYM
Joseph Halfmoon

前回は「シンボリックでない」デバッガの代表選手、DDTを動かしてみました。インテル8080用です。さて「シンボリックな」デバッガに進みて~と思ったのですが、まずはシンボルファイルを生成できないと話になりません。ここでアセンブラも交代っす。ASMからMACね。MACといってもアレではありませんぞ。マクロアセンブラね。 “レトロな(4) シミュレータ上のCP/Mでマクロアセンブラを” の続きを読む

GoにいればGoに従え(35) P8/P9が動かなかった理由は端子破損? TinyGo

TestInputDUT
Joseph Halfmoon

前回HC-SR04超音波センサを動かしたときに「v2であれば使える筈の P8とP9 を使おうとしましたがダメでした」と書きました。前回はP0とP1を使って動かしたのですが、P8とP9で動かない理由が不明だったので今回はその原因を追究してみます。まさかの端子破損?いつ壊しちまったのか。トホホ。

“GoにいればGoに従え(35) P8/P9が動かなかった理由は端子破損? TinyGo” の続きを読む

MicroPython的午睡(123) Thonny、MicroPythonで使用可な機能

Variables0
Joseph Halfmoon

前回ThonnyIDEのことをリトアニア製などと書いてしまいました。大変申し訳ございません。エストニア製です。訂正させていただきます。エストニアのタルトゥ大学のプロジェクトの成果物がもとになっているようです。タルトゥから東へに三十キロも行ったならば国境の湖に達するようです。ロシア国境だと。

“MicroPython的午睡(123) Thonny、MicroPythonで使用可な機能” の続きを読む

PIC三昧(14) MSSP(SPI)で23LC512にRWしてみる、PIC16F18855

PIC16F18855_23LC512_schematic
Joseph Halfmoon

前回はI2C(マスタ)の接続の練習にMicroChip社製24LC64 シリアルE2PROMを使用しました。今回はSPI(マスタ)の接続練習に、やはりMicroChip社製の23LC512 シリアルSRAMを使用してみます。PIC16Fと同じMicroChip社製品なのだから繋がらん筈がないっと。

“PIC三昧(14) MSSP(SPI)で23LC512にRWしてみる、PIC16F18855” の続きを読む

モダンOSのお砂場(72) UNO R4、RA4M1でFreeRTOS、Nortify

Tasks_Take_Give
Joseph Halfmoon

前々回、TaskのSuspendとResumeをやっています。これは停める相手の都合などお構いなしに停止するという乱暴な?ものでした。今回は「待っているのでよろしく」「起きてください」とお互いに尊重しあいながら停止、再開できるNortifyを練習してみます。お互いにGive and Takeちゅうことですかい。

“モダンOSのお砂場(72) UNO R4、RA4M1でFreeRTOS、Nortify” の続きを読む

レトロな(3) AltairZ80シミュレータ上のCP/MでDDT

DDT001
Joseph Halfmoon

GDB(GNUのデバッガ)は今も活躍してますがそれは縁の下っす。プログラマの表に見える「煌びやかな」IDE環境の奥底でひっそりと動いておりますな。GDBレベルでデバッグする、というのは最近やらんな。今回使用してみるのはCP/M-80のデバッガDDTです。インテル8080用のデバッガっす。シンボリックですらないです。

“レトロな(3) AltairZ80シミュレータ上のCP/MでDDT” の続きを読む

GoにいればGoに従え(34) DevicesでHCSR04センサを動かす、TinyGo

HCSR04_DUT
Joseph Halfmoon

このところ御本家Go言語の標準ライブラリを試用してましたが、今回はTinyGoユニークなものに復帰。TinyGoのライブラリ「Devices」は各種の周辺デバイスを接続するときに役立つライブラリです。以前に使ったときは簡単接続、便利便利という感じでした。でもね。ちょっとメンドイことがないわけでもないです。まずは電源ね。

“GoにいればGoに従え(34) DevicesでHCSR04センサを動かす、TinyGo” の続きを読む

MicroPython的午睡(122) Thonny IDE、シリアルプロッタを使ってみる

plotterDemo
Joseph Halfmoon

MicroPythonプログラムをマイコンに書き込むための開発環境としてThonny IDEを使わせていただいております。リトアニアエストニア製ね。しかし何時ものことですがウカツ。Thonny IDEにもシリアルプロッタ機能が組み込まれていたのね。Arduino IDEに搭載の機能と似た機能です。知ってりゃ使っていたよ、もう。

“MicroPython的午睡(122) Thonny IDE、シリアルプロッタを使ってみる” の続きを読む

PIC三昧(13) MSSP(I2C)で24LC64に読み書きしてみる、PIC16F18855

24LC64wPIC16F18855_u
Joseph Halfmoon

PIC16Fのペリフェラル回路を経めぐっております。今回はMSSPです。SPIもしくはI2Cとして使用できる同期式シリアルインタフェースのモジュールです。今回は同じマイクロチップ社製の24LC64をI2C接続。MCCが何でも簡単にしてくれるのでこれもチョロイとか思ったらそうでもないっす。I2Cもいろいろあるからね。
“PIC三昧(13) MSSP(I2C)で24LC64に読み書きしてみる、PIC16F18855” の続きを読む

モダンOSのお砂場(71) UNO R4、RA4M1でFreeRTOS、ISRからQUEUE

InterruptHandler
Joseph Halfmoon

前回はタスクの一時停止と再開でしたが、その横で割り込みも使ってました。しかし割り込みとタスクの関係性は薄かったデス。そこで今回は、タスク側とも「分かり合える」スケジューラのタイムスタンプをQueueを使って送信することで割り込み発生タイミングをタスク側に伝えてみたいと思います。

“モダンOSのお砂場(71) UNO R4、RA4M1でFreeRTOS、ISRからQUEUE” の続きを読む

GoにいればGoに従え(33) byte型とbytes.Buffer型、TinyGo

Byte_Bytes_EC
Joseph Halfmoon

前回はcomplex128型などを使ってしまいました。マイコンでも使えるということで心強いけど滅多に使わんのではないかと。一方、普段から一番お世話になりそうなのが byte型であります。そして「byte」に似たものに「bytes」という標準パッケージがあり、そこにはbytes.Buffer型が存在。どんなもんだか。

“GoにいればGoに従え(33) byte型とbytes.Buffer型、TinyGo” の続きを読む

PIC三昧(12) FSM(信号測定タイマ)を使ってみる、PIC16F18855

SMT_PinMGR
Joseph Halfmoon

ほとんどのマイコンではタイマの横にコンペア/キャプチャ/PWMといった入出力チャネルがぶら下がっていてそれらを駆使することで入力イベントの時間間隔とか、パルス幅、周期といったことを測定できます。勿論PICマイコンも同様なことを出来るのですが、専用のFSMモジュールが用意されてます。専用モジュールなので設定もお楽。

“PIC三昧(12) FSM(信号測定タイマ)を使ってみる、PIC16F18855” の続きを読む

MicroPython的午睡(121) ESP32版、ULPで電圧を測ってみる

ESP32ULP_ADC_DUT
Joseph Halfmoon

ここ数回、ESP32(Xtansaコア機)が搭載する「3つめの」プロセッサ・コア、ULPをMicroPythonから試用中です。前回はデジタル信号の入力を試行。今回はアナログ信号の監視に使えないか実験してみます。なかなかいい感じでないかい。メインが寝ている裏でひっそりと監視するのにULPはピッタリだな。やっぱり。 “MicroPython的午睡(121) ESP32版、ULPで電圧を測ってみる” の続きを読む

モダンOSのお砂場(70) UNO R4、ルネサスRA4M1でFreeRTOS、サスペンド

ArduinoUNO_R4_DUT
Joseph Halfmoon

タスクの一時停止(suspend)と再開(resume)を実験しようとしたのですが、勝手な割り込み端子への思い込みに足をすくわれました。Arduino UNO R4は32ビット機になったわけだし、その辺の端子はみな割り込みに使えるんじゃね?大間違い!Arduino UNOの伝統にのっとり、2番、3番だけなのね。律儀。
“モダンOSのお砂場(70) UNO R4、ルネサスRA4M1でFreeRTOS、サスペンド” の続きを読む