2008年03月03日 AVRのUART
_ software UART
AVRでは、UARTを使える端子は決まっている。reset端子をRxDに使いたいので、アセンブラ関数でsoftware UARTを作ってみた。信号の無いときは、highにして、start bitでlowにして、、といった感じで作ったら、あっさり動いた。正論理だか負論理だかわけが分からなくなってきたが。1MHzで19200bpsで動かしているが、問題はないようだ。ただし、読み取り中には割り込み等はできないので、注意が必要だ。これで、電流をあまり引き出せないreset端子をRxDにすることによって、もともとRxDだった端子をIOとして使えるようになった。