fc2ブログ

Entries

米粒PICでデコーダ


 ふと、以前、マイクロチップ社からサンプルとして、米粒PICである「PIC10F322」をタダで貰っていたのを思い出しました。


 小さいデコーダづくりが流行っているようなので、これでできないか検討したいと思います。


 DIPとSOT23、3個ずつ。マイクロチップは個人でのサンプル要求も無料が嬉しい(^_^;)

20180630_080538085_iOS.jpg


 無料とは言っても色々手間だったり、制約もあるので、手っ取り早く秋月でもそれほど高くなく購入可能です。

 DIP版 http://akizukidenshi.com/catalog/g/gI-05824/

 SOT23版 http://akizukidenshi.com/catalog/g/gI-08577/


 SOT23、かなり小さいです。もう老眼が始まったので(苦笑)、刻印が肉眼で見えません。。。

20180630_080855612_iOS.jpg


 早速、デバック用の基板をDIP版で製作。Pickitからの書き込み端子と、DCC信号入力端子、電源回路などを組み立てました。これで検証したいと思います。

20180630_081247497_iOS.jpg


 PIC10F322というマイコンは6ピンのマイコンです。DIP版は未接続端子が2個あって8ピンDIPになっています。ピン配列がDIPとは異なるので要注意です。

10f322-pin.png


 PIC10シリーズを名乗っていますが、かなりの機能を持っています。

10f322-spec.png


 PWMもあるのでモータドライバも動かせそうですが、ここで、EEPROMフラッシュがないことに気づきました。。。

 しかも、プログラムメモリが0.5kワードしかありません。512個の命令しか使えません。ポイントデコーダやFLデコーダで使用しているPICは最低1kワードあり、すでにギリギリまで使用しているので、機能やプログラムを割り切って削減しないとプログラムが収まらないです。


 とりあえず、FL(F0)デコーダとして機能するようにプログラムしてみました。


 EEPROMがないので、CV値の変更の保持ができないので、ソースコードにCV値を直書きで定数として指定します。

10f322-adr.png


 で、CV読み書きの機能を取っ払いました。とはいえ、古典的な14STEP時と、28,128STEP時のF0制御を可能にしてみました。CV29による前後進の入れ替えもサポートです。

 F0制御が前後進で切り替わるだけの機能で、メモリ消費量87%。あと、69命令余っています。これであと何ができるかです。。

10f322-memusage.png


 やはり、EEPROMがないので、CV値の変更、保持ができないのが欠点ですね。プログラムメモリのフラッシュやUseridのフラッシュをデータフラッシュとして代用出来ないか考えてみようと思います。69命令しかないけど。。



スポンサーサイト



この記事にトラックバックする(FC2ブログユーザー)
https://webnucky.blog.fc2.com/tb.php/194-a9e1846d

トラックバック

コメント

[C101]

OPSの書き込みをサポートして、オンラインでCV設定してもらう、とかどうでしょうか。
今は、設定は上位側でもって、繋がったときに受け渡すのが流行ってます。まあ、接触不良したときが問題ですが。

[C102]

自身のFLASHをプログラムで書き換えるということが
できそうですね。
http://www.picfun.com/p81807.html
  • 2018-07-01 07:29
  • あやのすけ
  • URL
  • 編集

[C103] nucky

やあさん>
OPSモードを搭載してみました。残り32命令。。。
ただし、OPSは3バイト命令なので、ロングアドレスと、エラーバイトで、6バイトの読み込みが必要になるのですが、DCC信号読み込みが5バイト分しか記述していないので、サブルーチン化しないとメモリが足りなそうです。

あたのすけさん>
プログラムFLASHよりも手順が簡単なUserIDを使おうかと思っています。ただし、読み書きのサブルーチンでもメモリを消費する。。。。

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する