ラジオ少年の楽しい電子工作、その他

AVRを使った簡単な回路の実験、そして日々のちょっとした出来事を書きます。

ATtiny2313でオシロスコープ時計(3)

2011年03月03日 | 日記

プログラムをあちこちいじくり、匙を投げて2時間くらい電源を入れっぱなしでほったらかして起きました。
夕食後オシロの電源を入れると、何と全く正常に機能しています。
これは一体どうしたことか?
プログラムを書き込む時に正常に書き込みは出来たのですが、使っていないポートから変なパルスが出ています。数回書き込みをやり直して見ましたが結果は同じ。
それならばと、チップイレーズをして書き込んだところどうやら変なパルスは出なくなりました

でも時計は表示せず。こんな状況で色々やったのですが結果はすべてNG。
勝手に動き始めた?tiny2313がおかしい可能性もありそうです。
今度新品を入手してやって見ます。
取りあえずmega88用を2313に書き換えて動いたと言うことにします。

動かない時の現象は、タイマオーヴァーフロウが11回起きてその後65msは割り込みなし、その後
再び割り込みが起きる事の繰りかえしです。
正常に動作しているmega88は割り込みは常に継続しています。
なぜ65msの間割り込みが出なくなるのか?疑問が残ります。

コメント (32)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ATtiny2313でオシロスコープ... | トップ | ATtiny2313でオシロスコープ... »
最新の画像もっと見る

32 コメント

コメント日が  古い順  |   新しい順
Unknown (kuga)
2011-03-03 22:42:00
>65msは割り込みなし
まるでWDTリセットでも起こってるかのような症状です。
ところで、基板写真にパスコンが見当たりませんが、裏面ですか?
返信する
65mms割り込みなし (ラジオ少年)
2011-03-03 22:51:28
kugaさん、今晩は。
パスコンは基板の裏側に0.1uFのチップコンを数個入れてあります。WDTはdisableしてあるのですが。
どうもすっきりしない顛末です。
もう1個2313が有るのですが同じ現象ですが、こちらは壊れている可能性が有ります。もう一度新品で調べてみることにします。
返信する
65mms割り込み無し (kawana)
2011-03-04 05:23:19
65mms割り込み無しが原因に繋がっていると
思いますが。
RAMの使用量は、ボラタイル宣言に関係して
いるのでは?
(ボラタイル宣言、メモリの開放?くらいの
曖昧理解しか知識が有りませんので。
返信する
65mms (kawana)
2011-03-04 09:15:59
65msはどう言うところから来ているのでしょうか。
この様に考えましたが、OK or NG。
水平1本掃引 0.1msx10(div)=1ms
垂直16本 8x8(div)=64
1x64=64ms
返信する
Re.65mms (kawana) (ラジオ少年)
2011-03-04 09:52:19
65msはオシロの表示画面の時間を単に計ったものです。
オシロの掃引時間(0.1ms)x10DIVは時計の表示に無関係です。と言うのは時計の表示文字の大きさ、間隔はCPUのCLKで決まってしまいます。オシロは単にそのCPUのメモリ内のイメージを投影しているだけです。
CRTの管面に適当な大きさで全体が表示出来るように時間軸を設定します。

timer0のOVFは64us毎に起きますが、何故かこの割り込みが中断してしまうのでそれを測ったら65msだったと云うことです。
プログラムを解析するとこの時計のからくりが良く分かりますので、ぜひトライしてみて下さい。
作ればすぐ動くでしょうが、それで終わりではもったいないです。
返信する
Unknown (kuga)
2011-03-04 10:07:17
>動かない時の現象は、タイマオーヴァーフロウが11回起きてその後65ms
これは、おかしいぞ。
先のセパレータしか表示しないという症状と矛盾する。
分秒セパレータが表示されるためには、トリガー信号を発生させた割り込み以降14回の割り込みがなければならないはず。
11回とは、トリガー信号の勘違いだろうか
返信する
トリガー信号 (ラジオ少年)
2011-03-04 11:15:49
>11回とは、トリガー信号の勘違いだろうか

その通りです。64usのOVFが出なければ分秒セパレータが出るわけないですね。11回では時分セパレータだけしか出ません。
手持ちの2313が2個あるのですが、1個は現象が出なくなってしまいました。不具合の出る方でもう一度確認しました。
トリガーが10発出てその後、60ms中断してまた10発出るこれの繰り返しの様です。
現象の出なくなったものと不具合が同じかどうかは分かりませんが。
現象の出なくなったものでは時分、分、秒セパレータが11発出ていてその後65ms中断そしてまた11発出る繰り返しでした。
返信する
Unknown (kuga)
2011-03-04 11:50:08
周期的にresetが掛かってる気がする。
mainルーチンには100msのdelayがあるからkの時間以上経過しないとセグメント展開はしない。
BORの設定はどうなっているだろう?
レセットpinはPULL-UPしていますか?
AVRのリセットpin内部ブルアップされていますが抵抗はかなり大きいようでセンシティブです。
私の経験では、RESETピンのみをピンセットでツンツンとつついたらRESETが掛かりました。
返信する
Unknown (ラジオ少年)
2011-03-04 13:11:29
>BORの設定はどうなっているだろう?
BORは禁止にしてあります。

>レセットpinはPULL-UPしていますか?
10KでVccにプルアップしてあります。

プルアップはどのくらいが適当ですか?
返信する
Unknown (kuga)
2011-03-04 13:23:07
>プルアップはどのくらいが適当ですか?
10Kは適切な値だと思います。
2.2Kでプルアップしたら負荷として重すぎてAVRISPで書けなかったことがありました。

3/2の写真をみると、抵抗が7本見えていて
LED右の抵抗がLED用制限抵抗だとすると、1本少ないなと思ったんですけどね。
SW用に2本,2bitDACに4本
返信する

コメントを投稿

日記」カテゴリの最新記事