Ezt írtam, de gyakorlatilag se kép, se hang.
$regfile = "m32def.dat" 'ATMEGA32
$crystal = 1000000 'Órajel:1Mhz
Dim A_freki As Long 'A frekvencia (3kHz)
Dim A_freki_fele As Long 'B frekvencia (900Hz)
Dim B_freki As Long
Dim B_freki_fele As Long
Config Timer0 = Counter , Prescale=1
Config Timer2 = Counter , Prescale =1
Config Portb = Output
Timer0 = 0
Timer2 = 0
Start Timer0
Start Timer2
A_freki = 900
B_freki = 30000
A_freki_fele = A_freki / 2
B_freki_fele = B_freki / 2
Do
If Timer0 < A_freki_fele Then 'ha A freki 1-ben van
If Timer2 < B_freki_fele Then 'B freki elindul
Pinb.0 = 1 'és 1-ben van
Else
Pinb.0 = 0 'B freki nulla
End If
If Timer2 > B_freki Then Timer2 = 0 'B freki egy periódusa lejár
Else 'A freki nulla
Pinb.0 = 0
End If
If Timer0 > A_freki Then 'A freki egy periódusa lejárt
Timer0 = 0
End If
Loop
End
De az is jó lenne, ha sikerülne a két különböző frekvenciát két külön lábon előállítani, aztán kikapuzom.