www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

PWM v Bascom-u

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
omron
Član
Član



Pridružen-a: Pet 08 Maj 2009 14:46
Prispevkov: 100
Aktiv.: 0.51
Kraj: Smartrace

PrispevekObjavljeno: Pon Apr 23, 2012 3:06 pm    Naslov sporočila:  PWM v Bascom-u Odgovori s citatom

Mi lahko prosim kdo pomaga ? Odločil sem se napisati program v Bascom-u, ki bi generiral pwm signal, s tipkama pa bi lahko korigiral duty cycle.

Program sem pretočil na mikrokrmilnik ATmega324A, vendar kot vidim sam, mi ne deluje tako kot sem si zamislil. Namreč dioda, katera je vezana na pwm signal mi sveti s tako jakostjo, kot je definirana v samem začetku programa s spremenljivko "X", tipke pa se mi ne odzivajo oz. z njimi ne morem spreminjati duty cycle-a.

Tukaj prilagam še program:
...................................................................
$regfile = "m324pdef.dat"
$crystal = 18432000
$baud = 115200

Dim X As Integer
Config PORTD.3 = Input
Config PORTD.2 = Input
Config PORTB.4 = Output

TCCR0B = &B00000001
TCCR0A = &B00100011

X = 10

Do

If PORTD.3 = 0 Then
Waitms 20
Incr X
Endif

If PORTD.2 = 0 Then
Waitms 20
Decr X
Endif

OCR0B = X

Loop
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
RGorazd
Član
Član



Pridružen-a: Čet 20 Maj 2004 15:57
Prispevkov: 1714
Aktiv.: 7.23
Kraj: Ig

PrispevekObjavljeno: Pon Apr 23, 2012 5:44 pm    Naslov sporočila:   Odgovori s citatom

Poskusi takole:

Koda:

$regfile = "m324pdef.dat"
$crystal = 18432000
$baud = 115200

Dim X As Integer
Config Pind.3 = Input
Config Pind.2 = Input
Config PORTB.4 = Output
Config Timer1 = Pwm , Pwm = 8 , Compare_a_pwm = Clear_up , Prescale = 1

Btn_dn Alias Pind.3
Btn_up Alias Pind.2

X = 10
Do
Debounce Btn_up , 0 , Pristej_pwm , Sub
Debounce Btn_dn , 0 , Odstej_pwm , Sub
Loop


Pristej_pwm:
Incr X

If X > 255 Then
   X = 255
End If

Pwm1a = X
Return

Odstej_pwm:
Decr X

If X < 1 Then
   X = 0
End If

Pwm1a = X
Return


LP G

_________________
.
._. _ _ ._. _.__. _|
[ (_](_)[ (_] /_(_]
._|
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
int47
Član
Član



Pridružen-a: Pon 15 Dec 2003 0:10
Prispevkov: 2104
Aktiv.: 8.88
Kraj: Ljubljana

PrispevekObjavljeno: Pon Apr 23, 2012 6:32 pm    Naslov sporočila:   Odgovori s citatom

Tako na hitro:
Port D ima tri registre. DDRD, PORTD in PIND.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
omron
Član
Član



Pridružen-a: Pet 08 Maj 2009 14:46
Prispevkov: 100
Aktiv.: 0.51
Kraj: Smartrace

PrispevekObjavljeno: Pon Apr 23, 2012 6:44 pm    Naslov sporočila:   Odgovori s citatom

RGorazd je napisal/a:
Poskusi takole:

Koda:

$regfile = "m324pdef.dat"
$crystal = 18432000
$baud = 115200

Dim X As Integer
Config Pind.3 = Input
Config Pind.2 = Input
Config PORTB.4 = Output
Config Timer1 = Pwm , Pwm = 8 , Compare_a_pwm = Clear_up , Prescale = 1

Btn_dn Alias Pind.3
Btn_up Alias Pind.2

X = 10
Do
Debounce Btn_up , 0 , Pristej_pwm , Sub
Debounce Btn_dn , 0 , Odstej_pwm , Sub
Loop


Pristej_pwm:
Incr X

If X > 255 Then
   X = 255
End If

Pwm1a = X
Return

Odstej_pwm:
Decr X

If X < 1 Then
   X = 0
End If

Pwm1a = X
Return


LP G


Ko sem vnesel tale program, mi je Bascom javil

"Unknown CONFIG parameter [COMPARE_A_PWM]" Confused
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mucek
Član
Član



Pridružen-a: Tor 01 Avg 2006 10:47
Prispevkov: 5530
Aktiv.: 24.06
Kraj: Domzale

PrispevekObjavljeno: Pon Apr 23, 2012 6:55 pm    Naslov sporočila:   Odgovori s citatom

Pusti program, kot si ga imel v prvem mailu in samo spremeni port v pin za tipke v if stavkih.

Lp,g

_________________
...lahko pa se tudi motim ...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
RGorazd
Član
Član



Pridružen-a: Čet 20 Maj 2004 15:57
Prispevkov: 1714
Aktiv.: 7.23
Kraj: Ig

PrispevekObjavljeno: Pon Apr 23, 2012 9:36 pm    Naslov sporočila:   Odgovori s citatom

Citiram:


Ko sem vnesel tale program, mi je Bascom javil

"Unknown CONFIG parameter [COMPARE_A_PWM]" Confused


Zsnimivo, meni ga prevede brez problema. Tudi v simulatorju deluje BP

LP G

_________________
.
._. _ _ ._. _.__. _|
[ (_](_)[ (_] /_(_]
._|
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
omron
Član
Član



Pridružen-a: Pet 08 Maj 2009 14:46
Prispevkov: 100
Aktiv.: 0.51
Kraj: Smartrace

PrispevekObjavljeno: Tor Apr 24, 2012 12:28 pm    Naslov sporočila:   Odgovori s citatom

mucek je napisal/a:
Pusti program, kot si ga imel v prvem mailu in samo spremeni port v pin za tipke v if stavkih.

Lp,g


Najlepša hvala za pomoč. Zadeva sedaj deluje Smile
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mucek
Član
Član



Pridružen-a: Tor 01 Avg 2006 10:47
Prispevkov: 5530
Aktiv.: 24.06
Kraj: Domzale

PrispevekObjavljeno: Tor Apr 24, 2012 3:54 pm    Naslov sporočila:   Odgovori s citatom

Simpl je tanartabulš! Ne vprašat, kolikokrat sem si zaradi iste neumnosti belil glavo ...

Lp,g

_________________
...lahko pa se tudi motim ...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 495 dni


Powered by phpBB © 2001, 2005 phpBB Group