目次

擬似DC/AC変換器

 直流12VからAC100Vを生成する回路を作成しました。



 この回路に、商用電源用トランスを接続します。
 (中点タップのあるトランスを利用)



 回路図は、以下。



 データセレクタを利用し、パワートランジスタをON/OFF。

 データセレクタは、ゲートピンがあるので、これを'L'にして
 SELにクロックを与えます。トランジスタのベースにクロック
 が与えられるので、パワートランジスタをON/OFFします。

 最初にゲートピンを'L'にしてから、OUT_1に1、0を出力する
 ことを繰り返します。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 OUT 1,1 : WAIT 6
60 OUT 1,0 : WAIT 6
70 GOTO 50
80 END

 クロック出力をサブルーチンにして、考えやすくします。

100 ' subroutine
110 OUT 1,[1]
120 WAIT 6
130 RETURN

 サブルーチンを呼び出す前に、配列[0]の値を決めます。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 LET [1],1,0 : GOSUB 100
60 LET [1],[2] : GOSUB 100
70 GOTO 50
80 END


 配列[0]、[1]に1、0を格納しておき、[0]の値を出力したなら
 [1]に含まれている値をコピーして、[0]の値を出力します。

 配列をシフトレジスタとして使い、1ビットシフトで
 サブルーチンを利用。サブルーチンは、複雑な処理を
 しないでよくなります。

 サブルーチンと合体。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 LET [1],1,0 : GOSUB 100
60 LET [1],[2] : GOSUB 100
70 GOTO 50
80 END
100 ' subroutine
110 OUT 1,[1]
120 WAIT 6
130 RETURN

 配列[0]、[1]を利用するため、サブルーチンもFOR文で
 まとめることも可能。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 LET [1],1,0
60 GOSUB 100
70 GOTO 60
80 END
100 ' subroutine
110 FOR I=1 TO 2
120   OUT I,[I]
130   WAIT 6
140 NEXT
150 RETURN

 サブルーチンを使わないで、短くできます。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 LET [1],1,0
60 FOR I=1 TO 2:OUT I,[I]:WAIT 6:NEXT
70 GOTO 60
80 END

 ラベル利用で、よりわかりやすくできます。

10 ' dc-ac
20 OUT 1,0 : OUT 2,1
30 WAIT 60
40 OUT 2,0
50 LET [1],1,0
60 @LOOP
70 FOR I=1 TO 2:OUT I,[I]:WAIT 6:NEXT
80 GOTO @LOOP
90 END


目次

inserted by FC2 system