Go Down

Topic: info arduino Due (Read 1 time) previous topic - next topic

gptxever

ciao a tutti ragazzi, avrei bisogno di un po di info riguardo arduino Due, in particolare sto cercando riguardo la possibilità di cambiare le soglie dei timer interni al processore per variare la frequenza della funzione analogWrite (in pratica sarebbe la funzione fastPWM dell' arduino uno)...
tutto questo poiche ho bisogno di controllare il pwm con un periodo non inferiore ai 2000uS (standard la scheda è settata a 1000uS ossia  1kHz)..ho spulciato sul datasheet del processore ma non sono riuscito a trovare  esattamente quello che mi serve..
quel tempo è riferito, come magari si capisce già, al pilotaggio di un brushless tramite un esc..
qualcuno gentilmente mi sa aiutare in merito?
grazie
Samuele

leo72

#1
Jan 18, 2013, 09:31 pm Last Edit: Jan 18, 2013, 11:20 pm by leo72 Reason: 1
Basta prendere il datasheet dell'Atmega328 del SAM3X e lì trovi tutti i registri per configurare i timer secondo le tue esigenze.
Tieni solo conto che se alteri il timer 0 poi tutte le funzioni temporali di Arduino risulteranno sballate.

PaoloP

Leo, lui parla del SAM3X.  :smiley-sweat:
Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

leo72


Leo, lui parla del SAM3X.  :smiley-sweat:

Corretto.
Il ragionamento comunque non cambia. Basta programmare accuratamente i registri del timer da modificare secondo quanto riportato sul datasheet e si può manipolare a piacimento il comportamento del segnale PWM generato sui pin corrispondenti.  ;)

gptxever

#4
Jan 19, 2013, 12:50 pm Last Edit: Jan 19, 2013, 01:40 pm by gptxever Reason: 1
ma infatti cm gia detto ho sfogliato il datasheet, ho trovato la parte relativa ai timer e i registri interessati ma continuo a riscontrare errori di variabili non dichiarate nella compilazione del codice..

i registri dovrebbero essere questi se non sbaglio, ma non saprei come manipolarli:
Sezione 37 del datasheet
http://www.atmel.com/Images/doc11057.pdf
Samuele

Go Up