2008年
3月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

セットアップ日記


2008年03月06日 AVRとRS232Cで通信

_ AVRでRS232C

これまで、AVR同士ではUARTを使って通信は行っていたが、PCとの間で通信を行ってみた。MAX232でレベルコンバートして、tiny2313のUARTで受信を試みたが、全然うまくいかない。オシロで信号を見てみたら、文字化けしている。tiny2313はdefaultでは8MHzを8分割して1MHzで動いている。最初は無謀にも19200でやろうとしていたが、9600に落として、UBRRの値を6にしたら、なんとか通信できた。これでも-7%の誤差があるようだが、大丈夫だろうと思っていたら、ときどき通信できていないことに気づいた。

CLKPR=0x80; CLKPR=0x02;

として、2MHzにしたら、今のところうまくいっている。このときの誤差は0.2%なので、今度こそ大丈夫だろう。それにしても、AVRは途中で周波数を変えられるんですね。昔、8086で10-8を切替えても落ちなかったのが思い出される。

[]