リモコン送信テストプログラム(抜粋) clk=10MHz
注)秋月のPA.EXEの拡張インストラクションを使用しています。
データ部がバイト単位の場合のみ対応しています。
●松下製CATVユニットの電源ON/OFFデータ送信部分
		;; スタートビット
		mov	cnt,#129	; StartHi=3.4ms(129*0.026)
		call	tr_hi
		mov	wait_time,#160	; Lo=1.6ms
		call	mswait

		;; 電源ON/OFFデータ(0x40040160bcdd)
		mov	irdat,#040h
		call	trns_byt
		mov	irdat,#004h
		call	trns_byt
		mov	irdat,#001h
		call	trns_byt
		mov	irdat,#060h
		call	trns_byt
		mov	irdat,#0bch
		call	trns_byt
		mov	irdat,#0ddh
		call	trns_byt

		;; ストップビット
		mov	cnt,#18
		call	tr_hi
●バイトデータ送信

trns_byt
		mov	bit_cnt,#8
trns_r
		jb	irdat.7,send_1

		;; ビット'0'
send_0
		mov	cnt,#18
		call	tr_hi
		mov	wait_time,#34
		call	mswait
		goto	send_nxt

		;; ビット'1'
send_1
		mov	cnt,#18
		call	tr_hi
		mov	wait_time,#118
		call	mswait
		goto	send_nxt

send_nxt
		rl	irdat
		djnz	bit_cnt,trns_r
		;; 8ビット分送ったらおわり
		ret
●Hi送信

tr_hi
		clrb	LED		; LED点灯
		call	wait_1315u	; Hi = 13.15us
		setb	LED		; 消灯
		call	wait_1315u	; Lo = 13.15us (= 38kHz)
		djnz	cnt,tr_hi	; cnt回繰り返し
		ret