AVR からの PWM 出力もなんとかできるようになりました。データシートによると、精度を出すには phase correct PWM を使うのじゃ、とのことなんですが、まずは動作のわかりやすい fast PWM で感覚をつかみました。
LED の明るさを調整、押しボタンの割り込みで光量調整するプログラムで練習。こ、これは楽しいです。
実は PWM は少してこずったのですが、一番の障壁になったのは、AVR Studio 備え付けのヘッダファイル 2313def.inc に TCCR0A, OCR0A, OCR0B レジスタの定義が抜けていたことでした。これらのレジスタ、使おうとするとコンパイルエラーになるので、あれー?何か勘違いしてるかなー?と迷いました。結局 2313def.inc に定義追加したら動くようになったのですが、あまりにもすぐに踏みそうな問題なのでやっぱり何か勘違いしてるかしら、と不安です。
ATtiny2313 だったら定義ファイルは tn2313def.inc だったかも知れません。最近アセンブリ言語で書いていないので不確かですが (_ _;
インクルードファイル違いですか。気がつきませんでした!
2313def.inc はきっと AT90S2313 向けなのですね。納得です。
対処方法やはり強引すぎでした。
ご指摘ありがとうございました。