ではラジコンで使う場合どうするか。送信機内部で作られるシリアルパルスをそのまま赤外光に変換して送出してもいいが、さまざまな光源の下で使用することになるので、テレビ等のリモコンと同様に変調をかける必要がある。また、汎用の赤外線受光素子を利用する場合、特定の周波数で変調された赤外光以外は受け付けないように作られているので、まず使用周波数に合わせて、変調するためのプログラムを PIC で実現しなければならない。
赤外線受光素子は、入手しやすい 38KHz 変調タイプのものを使うことにした。 38KHz の 1 サイクルは 1000/38000 = 0.026msec となる。PIC で 13μsec ON/13μsec OFF を繰り返すプロプログラムを作ればいい。
画像は Futaba 送信機のトレーナ出力波形。パルスとパルスの間隔がサーボの動作位置を決めている、立ち下がりパルスの数が 9 個あるので 8 チャンネル分の出力信号になる。このパルス列がおよそ 23msec ごとに繰り返して送信機から送出される。立ち下がり部分のパルス幅は Futaba の送信機でおよそ 300μsec 、JR の送信機でおよそ 400μsec であった。
実際には古い JR の送信機を改造することになるので、画像とは違った正論理のパルスを使うことになる。その場合、 PIC は入力されたパルス列の立上がり部分を 38KHz で変調すればいい。 PIC16F84A で 38KHz を発振するプログラムはこうなる。クロックが 4MHz なので 1 命令が 1μsec になる。 26μsec の周期とするには 13μsec ON/13μsec OFF を繰り返すだけなのでとても簡単なプログラムだ。パルスの立上がり時にこの 38KHz の発振出力を送り出して、赤外発光ダイオードのドライブ回路に渡せばいい。