AVR PWM - hogyan?

hwsw famulus hwsw at famulus.hu
Mon May 24 07:13:53 CEST 2004


No itt egy deszka model nyomogombos le-fol szabalyzasra...
A PWM variat ki lesheted belole.

KJ

---------------------------
A Dummy az adattipus varia miatt kell.

------------------------------------
$regfile = "m8def.dat"
$crystal = 4000000

Dim Pwmszazalek As Byte
Dim Pwmertek As Single
Dim Dummy As Byte
Dim Irany As Byte


Declare Sub Setpwm


Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Prescale = 1

Config Pind.1 = Input
Config Pind.0 = Input
Config Pinb.1 = Output

Ddrd.1 = 0
Ddrd.0 = 0
Portd.1 = 1
Portd.0 = 1

Pwmszazalek = 0

Do

  Waitms 50
  Irany = Pind And 3   ' Nyomogombok allasanak olvasasa

  Select Case Irany

    Case 1          'Csak egyik irany van nyomva
        If Pwmszazalek < 100 Then
            Pwmszazalek = Pwmszazalek + 1
        End If

    Case 2         'Csak masik irany van nyomva
        If Pwmszazalek > 0 Then
            Pwmszazalek = Pwmszazalek - 1
        End If

    ' Ha mindketto vagy egyi sincs nyomva akkor nincs teendo
    'de lehetne is akkor a 0 es 3 is egy elagazas a Case-ben

  End Select

  Pwmertek = 2.55 * Pwmszazalek                             'A kert%
atskalazasa a 0-255 tartomanyra
  Dummy = Int(pwmertek)
'Atfordulasok kivedese
  Pwm1a = Dummy

Loop

End                                                         'end program
-----------------------------

> AVRben a PWM csatorna alapon szeretnek DA konvertert. Hogyan kell ezt hasznalni? Annyit latok (help+minta) hogy a TIMER valtozot kell hasznalnom...
> 
> Lab+vmi szuro...
> 
> De hogyan lesz a 8 bites jelbol PWM? (PWM alatt ertem kimeno fesz aranyos a bemeno byteval... Elakadtam...
> 
> Robi
> 
> 
> ___________________________________________________________
> Sent by ePrompter, the premier email notification software.
> Free download at http://www.ePrompter.com.
> 
> 


More information about the Elektro mailing list