前回、MicroPythonのソフト制御のDMAコントローラ一丁あがりとぬか喜び。早速制御対象のSRAMモジュールを組立。8085風味の8ビット・マルチプレクス・バス接続です。ジャンパ配線多過ぎ。MicroPython制御でメモリに読み書きは出来るみたいなんだけれども信頼性ダメダメ。嫌疑はI2Cバスに。。。
MicroPython的午睡(140)M5Stack、ソフト制御でバスサイクル生成
前回は古いハードを掘り起こし、M5StackのI2Cバス(3.3V)の先に5Vの外部電源動作のIOExpander MCP23017を2個接続OKなことまで確認しました。今回はMCP23017を制御して古代の8ビット8085風味のバスサイクルを作り出してみます。MicroPython制御のDMAコントローラ一丁あがり? “MicroPython的午睡(140)M5Stack、ソフト制御でバスサイクル生成” の続きを読む
PIC三昧(28) PIC16F18855、CWGの駆動波形をフォトカプラで電源分離
前々回ハーフブリッジ駆動波形、前回フルブリッジ駆動波形とCWG機能を練習。別件シリーズで制御対象となりそうなパワーMOSFETにも触りました。そのくせCWGで生成した波形を直ぐにパワーMOSFETに接続しなかったのは信号レベルが違うから。PIC16側の3.3Vに対してパワーMOSFETのゲートは10V推奨みたいです。
レトロな(14) HOLDかけてバスの使用権リクエスト、アクノリッジを観察
前回は8085のREADY信号を操作して「ワン・ウエイト」挿入してみました。今回はHOLD信号を操作してバスを乗っ取ります。後で「ソフトウエア制御のDMAコントローラ」をバスに接続してこの後接続予定のSRAMに勝手アクセスする準備であります。モダンなマイコンにもDMAあり、でも自分でリクエスト信号つくったりしないな。
MicroPython的午睡(139)M5Stack、MCP23017 2個接続、異電源
前回、前々回とI2C接続のIO Expander、MCP23017をM5Stackに接続するの回でした。シツコク今回も接続。以前と異なるのは「同じI2Cバスに2個接続」「I2Cバスは3.3VだけれどもIO Expanderは外部5V電源」という点。別シリーズで扱っている古代のマイコンのDMAコントローラにするためね。
“MicroPython的午睡(139)M5Stack、MCP23017 2個接続、異電源” の続きを読む
レトロな(13) 74HC74で漏れなく1ウエイト、必要ないけど入れてみる
「バスウエイト」、現代でも縁の下ひっそりと働いているハズですが今や滅多に聞きませぬ。みな自動で良きに計らってくれるシステムばかりだからか。昭和の御代ではまず間違いなくココは何ウエイト、あそこはいくつと設定せねば動かぬシステムばかりであったのでありますが。今回はそんなウエイトをかけてみます。実際は要らないのだけれども。
レトロな(12) ALEの御供といえば、74LS373だっ。その当時はね。
前回は8085をNOP無限ループに閉じ込めて動かした、という割には一部の制御信号をオシロで当たっただけで「バス動作」らしいところを観察してませんでした。前回の回路では「アドレスバス」が独立してなかったからデス。そこで今回はTTLの代表選手(個人の見解です)74LS373を投入。アドレス・バスを取り出しました。
“レトロな(12) ALEの御供といえば、74LS373だっ。その当時はね。” の続きを読む
レトロな(11) 8085(コンパチ品だけれども)無限NOPループで火を入れる
前回、および別シリーズ回で着々と部品を準備。今回は遂にいにしえの8ビットプロセッサ8085(コンパチ品だけれども)に火を入れてみます。まあ無限NOPループの中でクルクル回るだけだけれども。これでもハードが動いていることは確認できるハズ。無限ループで練習した後はDMAアクセス可のSRAMを接続したいデス。
“レトロな(11) 8085(コンパチ品だけれども)無限NOPループで火を入れる” の続きを読む
レトロな(10) NOPループ用手動プログラミングROM作成
前回、古代の8ビット・プロセッサ共(80系)を入手。まずは「火をいれて」最近ご無沙汰なパラレル・バスの動作などを愛でたいと思いました。しかし今時、昔の8ビットCPUを刺せば動くようなボードもなく、前回は「どうする?」で止まってました。今回は古代のプロセッサ共をNOP無限ループに陥らせるためのハードウエアを工作。
部品屋根性(116) MCP6S21、プログラマブル・ゲイン・アンプ、単電源レイルツーレール
別件シリーズでプログラマブル・ゲイン・アンプ(PGA)が欲しかったので入手。Microchip社製品であります。3.3V単電源で動作するレイルツーレールのオペアンプです。ホストのマイコンとの接続はSPI。これにてx1倍からx32倍まで8段階のゲインで増幅可能です。マイコンのアナログ入出力の御供に最適? “部品屋根性(116) MCP6S21、プログラマブル・ゲイン・アンプ、単電源レイルツーレール” の続きを読む
MicroPython的午睡(138)M5Stack、MCP23017をIO拡張アダプタ化
前回、M5StackにMCP23017 IOExpanderを取り付けてGPIOを増やしてみました。しかし前回はブレッドボード上での実験でした。これでは実際に使おうというときにイチイチ組み立て必要でメンドイ(ちょくちょく配線間違いもするし。。)といことで例によってM5Stack側面に接続する「アダプタ・ボード」化。
レトロな(9) 現物(コンパチ品だけれども)入手。Z80, 8085, 8088
昨年、第5回で8080、8085、Z80のハードウエアについて知ったような事を記述。第6回では今度は8080、Z80、8086のレジスタセットについてこれまた記述。でも「記述」だけで現物動かしてなかったのが気になって夜も眠れなかったデス。そこで今回は現物デバイスを入手。感慨もヒトシオだけれども動かす算段を考えないと。 “レトロな(9) 現物(コンパチ品だけれども)入手。Z80, 8085, 8088” の続きを読む
PIC三昧(27) PIC16F18855、CWGでフル・ブリッジ駆動波形を生成
前回ハーフ・ブリッジ駆動波形を生成したので、今回はフル・ブリッジです。モータを駆動するためのHブリッジ回路を念頭にCWGを設定してみました。まあブリッジ回路の現物が無いのでとりあえずAD2のロジアナ・モードでCWGの出力波形を観察してみただけですが。まあ正転、逆転できそうな感じではあります。早く実験用の部品買えよ。 “PIC三昧(27) PIC16F18855、CWGでフル・ブリッジ駆動波形を生成” の続きを読む
MicroPython的午睡(137)M5Stack UIFlow2、IO端子数を大幅拡張
M5Stackは筐体の側面に各種端子が出ています。結構な数があるようでいて、それぞれの用途を活かして使おうと考えると「単なるGPIO」の数がちょっと足らない感じがしないでもない。そこで今回はIO ExpanderをM5Stackに接続してみました。1チップの接続でなんと16本のGPIO増。最大8チップで128本MAX。
“MicroPython的午睡(137)M5Stack UIFlow2、IO端子数を大幅拡張” の続きを読む