FC2ブログ

名張市つつじが丘おもちゃ病院

三重県名張市つつじが丘でおもちゃの病院を開院しています。年中無休で修理は無料、部品代のみ実費です。おもちゃの修理依頼は tutuji@cb4.so-net.ne.jp へメールにてご連絡下さい。なお、宅配便での受け付けは行っておりません。このブログにはおもちゃ等の修理事例やツール製作などを載せていきます。故障診断や修理方法の改善等、ご意見をお寄せ下さい。

OSCキャリブレーションツール(12F629等)の製作

【前振り】
昔々の話だが、12F629という石があった。当時はコンパレータ付きで比較的廉価だったのでよく使っていた。
しかし12F1822が出てからは12F629は使わなくなり、今ではジャンク箱の肥やしになってしまっている。
そこで機能と性能が求められない用途には積極的に12F629を使って、ジャンクの減量を進めて行こうと思った。

12F629は8ピンなのでI/Oポートは6本しかなく、それらを無駄なく使うために内部RCオシレータを使うことが多い。
しかし、12F629の内部RCオシレータはOSCCAL値を校正しなければ正確なタイミングでプログラムが動かない。
しかも、工場出荷時のOSCCAL値のバックアップはなく、プログラム消去で簡単に消えてしまう。
ジャンク箱の12F629は殆どが工場出荷時のOSCCAL値を失っているので、これらを使う前にOSCCAL値の校正が必要になった。

この校正作業を簡略化するためのツールを作った。12F629だけでなく、OSCCAL値の校正が必要なデバイスを対象とする。

【デバイス別の事情】
秋月で販売されていたデバイスでOSCCAL値の校正が必要なものについて、デバイス別の事情を記す。

①12F629/675、16F630/676
OSCCAL値はプログラムメモリにしか無く、容易に消えてしまう。バックアップも持たない最悪のデバイスだ。

②10F200/10F222、12F509/510
OSCCAL値はプログラムメモリにあり、容易に消えてしまう。
バックアップがCONFIGメモリにあるので、OSCCAL値を復元することが可能である。
但し、バックアップは標準のバルクイレースでは消去されないが、CONFIGメモリを指したバルクイレースでは消去される。

③12F609/615/635/683
校正値は、デバイスのイレース操作で消去されないので、本ツールの対象としない。


【校正のやり方】
①12F629/675、16F630/676はCONFIGをINTRCCLKの設定にして、CLKOUTピンからFosc/4の1MHzを出力させる。
 10F200/10F222、12F509/510はCLKOUT機能が無いので、ポートからソフトウェアで10KHzを出力させる。

②上記①の出力を周波数カンターで測定し、規定の周波数(1MHzまたは10KHz)になるようにOSCCAL値を増減する。

③OSCCAL値の増減は、ポートに接続した「増加SW」と「減少SW」を人が操作することで行う。

④OSCCAL値はポートに非同期シリアルで、常時表示する。この信号はオシロスコープで読み取ることを前提として、以下の仕様とする。
 ビットレートは 10Kbps(ビット巾は100us)
 フレーム構成は スタートビット(H)+データ6ビット(OSCCALのMSBから順に6ビット分、正論理)、ストップビット(L)
 フレーム周期は 64ms

⑤12F629/675、16F630/676ではポートに接続した「書込みSW」を操作すると、OSCCAL値をEEPROMの0番地に書込む。

⑥プログラムメモリ領域へのOSCキャリブレーション値の設定は、本ファームウェアでは行わないので、プログラマーにて書込みを行うこと。

【実行回路の例】
OSCCALの校正回路図
ポートの割り当てはデバイスによって異なり、SW入力は内部プルアップのあるポートに割り当てている。
個々には各デバイス毎のファームウェアのソースコードを参照。

【実行時の接続例】
OSCCALの校正接続
プログラマーからのICテストクリップでデバイスを挟み、クロック出力をオシロスコープの周波数カウンタで観測する。
上昇、下降、書込みのSWは省略して、GNDに繋いだ導線でポートピンを触れることでオンする。

【クロック出力の観測例】
OSCキャリブレーションツール(12F629等)波形1

【OSCCAL値表示の観測例】
OSCキャリブレーションツール(12F629等)波形2
OSCCALは上位6ビットが有効であり、下位2ビットは常に0である。
本ツールは有効ビットのみを表示している。

【ファームウェア】
本ツールのファームウェアは ここから ダウンロードできる。
デバイス毎にプロジェクトが存在する。
関連記事
スポンサーサイト
  1. 2017/01/08(日) 16:55:13|
  2. その他のツール
  3. | コメント:0
<<スロットマシンの修理(機構改善) | ホーム | サーフボーイのクローンリモコン(ジャンク)の頒布>>

コメント

コメントの投稿


管理者にだけ表示を許可する

プロフィール

大泉茂幸

Author:大泉茂幸
名張市つつじが丘おもちゃ病院
名張市つつじが丘南3番町129
tutuji@cb4.so-net.ne.jp
090-5534-6494
連絡は上記のメール、またはSMSでお願いします。

子どもの頃から趣味は電子工作一筋でやってきました。理科離れが進む中で科学技術に興味を持つ子どもが少しでも増えて行くことを願って、子ども達に電子工作の活動の場を提供しています。

1981年からおもちゃ病院の活動を始め、2014年に三重県名張市への移住を機に「つつじが丘おもちゃ病院」を開院しました。自分でおもちゃを設計し製作する【おもちゃ工房】と、マイコンを応用した電子工作を楽しむ【マイコンクラブ】も併設しています。新規参加メンバーを募集しています。

本ブログで公開している技術情報や成果物のご利用および再配布はフリーです。読者様の技術活動のお役に立てば幸いです。ご利用いただいた結果や感想等を記事へのコメントやメールでフィードバックしていただけると有難いです。

カテゴリ

おもちゃ修理技術 (80)
¦ ・電子オルゴール+音声 (27)
¦ ・音声再生・録音再生 (4)
¦ ・2.4GHzラジコン (27)
¦ ・レガシーラジコン (12)
¦ ・赤外線リモコン (4)
¦ ・RFID (3)
¦ ・タッチセンス (3)
ツール製作 (22)
¦ ・プログラマー (15)
¦ ・USB-シリアル変換 (3)
¦ ・その他のツール (4)
修理事例 (147)
¦ ・マイコン換装 (69)
¦ ・電子・電気修理 (56)
¦ ・メカ修理 (22)
製作記事 (4)
PIC開発 (4)
おもちゃ病院 (8)
ドクター研修会 (2)
未分類 (2)

最新記事

最新コメント

月別アーカイブ

訪問者数

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

ブロとも申請フォーム

この人とブロともになる

QRコード

QR