このSOSC(副発振回路)の32.768kHzは、不安定でいろいろ大変でしたが、結果的には非常に安定した発振が得られる様になりました。
苦労した分、いろいろ得る事がありました。
結論から言うと、PIC24FJ64GA002 I/SP の破損でした。
SOSCの32.768kHzの発振の外付け部分を散々いじりました。
コンデンサー容量を、10pF、15pF、20pF、33pFと用意し、抵抗も無し(0)の場合と10k、100k、500k、1Mといろいろ試しました。
ブレッドボード上では上手く発振しないという情報もあり、1つ目基板上に組み直しました。
SOSC回りの配線を極力短くしたりしましたが、結果的に全て駄目でした。
もう夜も遅くなり、一日中集中していて、ついに根性も消え失せてあえなく降参!もう寝よう!
こうなれば、PICを新しいものに換えたり、発振子を予備のものに取替えよう。
それでも駄目ならば、MOS-ICの4049で発振するかどうかテストしてみようと、寝ていても考えている始末でした。でも、しっかり熟睡。
次の朝、一番簡単な方法から試しました。
PIC24Fを在庫の新品に取替えて、ICSPでプログラミングしてGO!
あれれれれ?!あっさり、一発で動いてしまった。
電源を切って、ICSPも外して、単独運転でもう一度ON!・・・ちゃんと稼働する!!
PIC24Fを元ものと交換してみる・・・
これは、今までの通り、ずっと同じ日付のまま!!
SOSCが発振しない!
SOSC付近を手で触れたりすると、回路がハイインピーダンスの為か、たまに動くけれど、殆ど駄目!
もう一度PIC24Fを新しいものに戻す・・・
一発でカウント開始!!まじめにSOSCが稼働する!しばらく、放置プレイ(?)!
特に時刻が狂っている様子も無く、安定動作する!
やっちゃいましたねぇ!
PIC24F君(秋月で@350円)が部分的に逝ってしまいました。
PIC18Fは、セロプレッシャー書込み時に、上下を間違えて差し込んで、気がついた時にはチップが持てないくらいに熱くなっていても、壊れている様な様子は無く問題なく動作していますが、丈夫だと思っていても、やっぱり壊れる時には壊れるんですね。(って、当たり前だ!)
実験用のPIC24FJ64GA002 I/SP をブレッドボード上で散々使い回しているうちに、誤配線等を含み、肝心なPIC24FのSOSCポートを破損していたのでした。
ICの内部破損は、今回の様な不明な異常を発生してデバッグに支障をきたすばかりではなく、ICにとって深刻なダメージであり、場合によっては、IC内部で連鎖的に広がり、PIC以外の周辺部品に悪影響を及ばすばあいもあるのです。
このPIC24Fは破棄です。
ごめんなさい!PIC24F!!
色々な資料を、水晶発振32.768kHzの為に集めまくりましたが、知りえた事は、
1. 1.0MHz以下の水晶発振回路は、低周波の部類になり、安定した発振を得るのは高周波の場合よりもリスクが高い。
2. 低周波の水晶発振子は、音叉(おんさ)型であり、構造的な事が由来していて、外部からの高周波過電圧で損傷が起きやすい。
以下は京セラの「水晶発振回路に関するよくあるご質問」からの抜粋、引用です。
http://www.kyocera.co.jp/prdct/electro/product/timing/xtal_faq.html
****** 引用 ******
Q1
32.768kHz音叉型振動子を使用した発振回路の電源をONにすると水晶振動子内部で一瞬だけ小さな音がして発振が起こりません。
Q2
出荷時は発振していますが出荷後、数年以内に32.768kHzの水晶発振回路が突然停止して発振しなくなります。
A1,A2
音叉振動子はMHz帯ATカットの厚みすべり振動モードの水晶振動子とは異なる屈曲振動モードで振動します。音叉振動子は許容値を超えた励振電力 で動作させると内部の水晶片が破壊されます。330kΩ程度のダンピング抵抗Rdを使用して励振電力を低減して水晶振動子の破壊を予防しましょう。励振電 力の測定を水晶振動子メーカーに依頼して許容値を超えていないことを確認しておく事をお奨めします。
****** 引用おわり ******
いろんな情報を知りえた割には、根本的な解決に至らず、結果は自分のミスでPIC24Fをそのものを損傷していた事が原因でした。おそまつ!
なお、参考にした回路定数は、非常に幅があり、参考文献の数だけあります。
なんで15pFを選んだのか、なんでRdを1Mオームに選んだのかは、PIC24Fを新品に取替える前の最後に組んだ回路がそうなっていたからなのです。ごめんなさい!
(Oct. the 9th 2010) |