Artikel: [code] 4-Kanaals PWM

Deze code is geschreven om meerdere PWM uitgangen te kunnen gebruiken. Nu zal u zich wellicht afvragen waarom ik het ingebouwde commando niet gebruik. Wel dat commando doet eerst 1pwm pin voor 2sec en maakt die dan terug laag en gaat naar de volgende en doet daar 2 sec PWM op enzovoort. Met deze code gaat het wel gewoon juist.

'****************************************************************
'* Name : 4kanaalsPWM.BAS *
'* Author : Coenen Stijn *
'* Notice : Copyright (c) 2006 Stynus *
'* : All Rights Reserved *
'* Date : 7/10/2005 *
'* Version : 1.0 *
'* Notes : 4 kanaals PWM *
'* : www.elektronicastynus.be *
'****************************************************************
Device = 16F627
Dim x As Byte
Dim pbm1 As Byte
Dim pbm2 As Byte
Dim pbm3 As Byte
Dim pbm4 As Byte
Dim PWM_cycles As Byte
'Benoeming uitgangen
Symbol pen_a = PORTB.1
Symbol pen_b = PORTB.2
Symbol pen_c = PORTB.3
Symbol pen_d = PORTB.4

pbm1 = 4 'Waarde 1
pbm2 = 64 'Waarde 2
pbm3 = 128 'Waarde 3
pbm3 = 255 'Waarde 4
PWM_cycles = 255
x = 0
Output pen_a
Output pen_b
Output pen_c
Output pen_d
PBM:
For x = 0 To PWM_cycles
High pen_a
High pen_b
High pen_c
High pen_d
If x >= pbm1 Then
Low pen_a
EndIf
If x >= pbm2 Then
Low pen_b
EndIf
If x >= pbm3 Then
Low pen_c
EndIf
If x >= pbm4 Then
Low pen_d
EndIf
'Voor meer kanalen een extra varianele aanmaken en hier het
'volgende extra invoegen per uitgang:
'If x >= Naam variabele Then
'Low "Pinnummer"
'EndIf
Delayms 1
Next
GoTo PBM
End

Een reactie achterlaten

Your email address will not be published.