Impulzus, kitöltési tényező generátor

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
POSSIM
Újonc
Újonc
Hozzászólások: 1
Csatlakozott: 2020. május 16. szombat, 20:28

Impulzus, kitöltési tényező generátor

HozzászólásSzerző: POSSIM » 2020. július 22. szerda, 18:02

Sziasztok!
Szeretnék segítséget illetve tanácsot kérni egy projekthez.

A következőt szeretném hardwaresen megvalósítani: (bascom 2.0.7.8, atmega328) Adott egy kimenet jelenesetben Portb.2( OC1B ) , amin a kimenetet tudom állítani a frekvenciát(1-100Hz) és a kitöltési tényezőt (1-99%) a mindenkori frekvencia mellett.

Hogyan lenne célszerű megvalósítani ezt a feladatot?

Üdvözlettel:
Bence

Avatar
Robert
Elektronbűvölő
Hozzászólások: 10066
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Impulzus, kitöltési tényező generátor

HozzászólásSzerző: Robert » 2020. július 24. péntek, 6:10

A PWM esetén csak fix leosztásod van az órajelből.
- tudsz számolni 0... TOP értékig (TOP általad állatható felső érték) -> ez adja a frekvenciát
- 0... TOP ezen belül állíthatod a PWM kitöltési tényezőt - de ha a 0...TOP az mondjuk úgy van állítva hogy 0...10, akkor 10%-os lehet csak a lépésközöd!

A feladat ez alapján:
1, A frekvencia ismeretében a legnagyobb TOP értéket érdemes választani és az előosztást is ennek megfelelően beállítani
2, Az OC1B jó kimenet, mert a belső TIMER1re van drótozva, ott 10/11/12 bites direktPWM is van , meg a TIMER1 is 16 bites.
3, kitöltési tényező a 0-100 leképezése a 0...TOP tartományra.
4, Timer INDÍT
5, főprogram, egyebek....

http://ww1.microchip.com/downloads/en/D ... asheet.pdf
Bascom alól ezt csak direkt regiszterhívásokkal lehet megtenni. Las az adatlap TIMER része.
http://www.tavir.hu - a gazda :)


Vissza: “Bascom-AVR nyelvű programozás (AVR programozásának lehetőségei)”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég