皆さま既にご活用の生成AIをおっかなビックリ触っている年寄です。Googleの生成AI、Gemini様に、Verilog論理回路、トランジスタ増幅器、デジタルフィルタ設計などお願い済。それなりのご回答あざーす。今回お願いしてみるのはマイコンとメモリの接続です。どちらも業界大手MicroChip社の具体製品を指定。
※Google様の生成AI、Gemini(無料プランだけれども)を使って回路を設計してもらっています。
MicroChip社のマイコンとメモリ
今回、Gemini様にお願いするのは米国MicroChip社の以下の「シングルチップ・マイクロコントローラ(日本じゃマイコンで通るけれども)」と「SPI接続シリアルSRAM」の接続です。MicroChip社の製品ページへのリンクが以下に。
PICマイコンは日本でも超人気のデバイスですが、その中でもPIC16F1xxxx(xにはいろいろな番号が入る。Fの後に1がついているところがミソ)シリーズは使いやすく「近代化された」PICマイコンじゃないかと思います。
一方、23LC512は、2.5-5.5V電源、512Kビット、SPIインタフェースのSerial SRAMです。Serial EEPROMとかFlashとかをマイコンに外付けすることは多いじゃないかと思いますが、SRAMもあります。SRAMなら読み書き回数の上限など気にせんで良いし。でもアプリ的にはちとマイナーか。今回はそのマイナーなところを「突いて」みました。
なお、上記2点のデバイスの接続については、AI使わぬ人力のみで以下の別シリーズ回で接続して動作確認までしております。
PIC三昧(14) MSSP(SPI)で23LC512にRWしてみる、PIC16F18855
プロンプトへの入力とそれへの回答
最初にGemini様のプロンプトに入力したのは以下です。
PIC16F18855に23LC512を接続する回路を設計して
なんでもお見通しのGemini様なので、型番を書けばMicroChip社のデバイスだと分かるんでないかと。知らんけど。具体的に型番書いた割にはどの端子使えとか電源何Vにしろ、とか肝心なところはバッサリなアバウトすぎる問いかけデス。
3案だしていただいたので、以下、老人の個人の感想です。
-
- 回答案1
23LC512のことをSPIインタフェースで接続されるデバイスとしている。しかし、SRAMとも何とも書いていない(ある意味正確。)そして端子接続も、とりあえず接続すれば「動きそうな」雰囲気のある回路を提案してくれてはいる。コマケー問題があり、よくわからん抵抗など挿入されてたりするけど。また、コマケー部分では誤りも散見される。以下赤を入れた部分など。
23LC512の電源電圧は2.5Vから5.5V、またPIC16F18855は、2.3Vから5.5V。また23LC512のSPI通信速度のMAXは20MHz。それなりにもっともらしい注意事項が書かれているけれども細かいところが「他の何か」に引きずられている感じ?
-
- 回答案2
23LC512のことをI2CインタフェースのシリアルEEPROMだと「思っている」みたい。SPIインタフェースのSRAMなんだけれどもなあ。ただある意味、回答案2のお言葉が謙虚っす。
そうか~。Gemini様にも苦手なところがあるのだわな。
-
- 回答案3
23LC512のことをパラレル接続のEEPROMだと「思っている」みたい。結果として接続例デタラメ(パラレル接続としてもね。)
512ってんだから、512kビット、64kバイトだろうよ~。最大128Kbitの他のデバイスと混同されてんのね。それにSRAMだからページ単位の書き込みなんてないから。。。
回答案1でプログラム作成をお願いしてみた
回答案1が一番まともであったので、案1の後のプロンプトに以下入力してみました。
23LC512に読み書きテストするPIC16F18855のプログラムを作製してください
流石、プログラムのコーディングがお得意なGemini様です。それなりに動きそうな雰囲気を醸しているC言語プログラムが生成されました。ただ、即動かすのはどうだかな~。だいたいマイクロコントローラ全体の初期化とか結果出力をどうして外へ伝えるかとかまでは書いてはくれないです。実験するにはいろいろ本題とは関係ない部分をテコ入れせんとなりません。でも「参考」には十分なりそうな?どうなんだろ。