PIC12F683でRS232C通信

こちらで紹介されているコードを丸々流用してRS232C通信試してみたが、あっさり動いた。なんてこったい…。
8MHz駆動なので1クロックあたり0.5usec、プログラム上のビットの送信間隔は101usecくらい?9600bpsで送信するためには、1bitあたりの送信時間が104.1usecになるはずなんで、誤差は3%位ですかね。まあ、誤差とかの問題じゃなく通信速度に関わらず±5usecくらいできっちりタイミングとらないとダメなのかも。自分が受信側のプログラムを書くとしたら、104.1usecごとにポートがHになっているかLになっているか確認すれば良いのかなあと思っていたので、ストップビット後を長くとってスタートだけきっちりあわせれば1〜2%くらいずれていても構わないんじゃないかと考えていた。


ところで「;adjust」からのnopが良く分からない。全てのbitが等間隔で送るのならnopの数はdecfsz、gotoと同じ(3clock分)になるのではないのかなあ。