Cilibiu Posted December 25, 2011 Share Posted December 25, 2011 Salut tuturor, am facut un montaj cu un atmega 8 si un tranzistor comandat in PWM de catre atmega8. Insa am observat ca din helpul bascomului nu am reusit prea multe, frecventa maxima la care am ajuns a fost de 15,7khz, si as vrea sa ajung pe la 30khz sau si mai sus! Codul bascomului este mai jos: $regfile = "m8def.dat"$crystal = 8000000Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Prescale = 1Compare1a = 0end Ce trebuie sa fac ca sa ridic frecventa si mai sus? In help-ul bascomului nu am gasit nimic! Link to comment
XAN77 Posted December 25, 2011 Share Posted December 25, 2011 caută în datasheet, e cel mai relevant.cu fast pwm mode pe 8 biti, cu 8MHz clock, cred ca poti prinde semnal pwm de 8.000.000 / 256 = 31,250, deci 31KHz, pentru mai mult de atat va trebui sa maresti frecventa quartului. Link to comment
ole Posted December 25, 2011 Share Posted December 25, 2011 Foloseste Timer1 setat pe modul Fast PWM cu TOP=ICR1. Astfel din ICR1 setezi frecventa (si implicit rezolutia PWM-ului) iar din OCR1A/B setezi factorul de umplere. ATENTIE! OCR1A/B este mai mic sau egal cu ICR1. Link to comment
Cilibiu Posted December 25, 2011 Author Share Posted December 25, 2011 O sa incerc sa implementez ce zici, dar era mai simplu daca dadeai si un exemplu scris in cod bascom! Link to comment
ole Posted December 25, 2011 Share Posted December 25, 2011 Nu stiu BASCOM. Eu scriu in C. Link to comment
Cilibiu Posted December 25, 2011 Author Share Posted December 25, 2011 Am cautat prin help si pe google, dar nimik nu am gasit sa ma lamureasca cu FAST PWM!Inca mai caut.......! Link to comment
XAN77 Posted December 25, 2011 Share Posted December 25, 2011 singura sursa de informare ar trebui sa fie datasheet. Stiu e foarte tehnic, nu e musai sa intelegi din prima citire Link to comment
yo6pir Posted January 9, 2012 Share Posted January 9, 2012 Aici am pus un fisier de generator de frecventa intre ATENTIE! : o,12Hz-8MHz cu Atmega8 setat pentru fast-pwm cu cristal de 16MHz. Eu am folosit softul la un generator de joasa frecventa si am folosit si functia de frecventmetru dar numai pana la 8Mhz ca nu stie mai mult, dar e super-fain gandit. Incearca-l dar nu ma intreba de unde-l am ca nu mai stiu; de pe un site nemtesc...73! frequency generator.zip Link to comment
Cilibiu Posted June 29, 2013 Author Share Posted June 29, 2013 Am analizat un pic codul scris in bascom, si sunt cam multe necunoscute pentru mine ( comenzi cu care nu am lucrat). Am o rugaminte la tine, separa din codul bascom doar comanda pentru OC1A si OC1B FAST PWM. Asta daca nu cer cam mult. Iar o intrebare generala>>>> cat de instabil poate fi un uC fata de UC3843 folosit intr-un SMPS? L.E. Am inceput sa ma joc cu , comenzile pentru fast pwm, si mia iesit asa. Din codul de mai jos, daca modific valoarea lui "COMPARE1A =x" cresc sau scad FRECVENTA, duty cicle ramanand la 50%. Cum pot face sa modific duti cicle? De exemplu setez : Compare1A=10 'undeva pe la 300khz ce modific sa sa am duti cicle variabil? $regfile = "m8def.dat".$crystal = 8000000Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1Tccr1a = &B0100_0011' ^^--WGM11 + WGM10 -> Fast PWM |TOP in OCR1A Mode 15' ^---------COM1A0 -> Toggle OC1ATccr1b = &B0001_1001' ^--CS10 -> Clk no prescale' ^-^-----WGM13 + WGM12 -> Fast PWM |TOP in OCR1A Mode 15'Ocr1bh = &B0111_1111'Ocr1bl = &B1111_1111 'Register for duty-cycle (16-bit value 50%)Compare1a = 10End Link to comment
Guest me262 Posted December 12, 2013 Share Posted December 12, 2013 Salut,vad ca mesajul e destul de vechi...daca te mai intereseaza,uite aici:-LED la masa cu rezistor de limitare, pe PINE.2.Ciao! Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now