- Messaggi: 583
- Ringraziamenti ricevuti 1
convertire onda quadra in sinusoidale
13 Anni 7 Mesi fa #6
da Guido
Risposta da Guido al topic Re: convertire onda quadra in sinusoidale
Ciao, scusami cerco di spiegarmi, per far uscire dal pic una frequenza diversa da quella che hai impostato (620Hz), ti scrivo una feq. a caso 450 oppure 730Hz, quali parametri del codice devo variare. Sii gentile me li commanti.
Io ho provato a variare questi:
// Set the PWM frequency
PR2 = 149;
// Turn ON TMR2 and set Prescaler to 0
T2CON = 0x04;
CCP1CON = CCP1CON | 0b00000100;
ma con scarsi risultati.
Grazie.
Io ho provato a variare questi:
// Set the PWM frequency
PR2 = 149;
// Turn ON TMR2 and set Prescaler to 0
T2CON = 0x04;
CCP1CON = CCP1CON | 0b00000100;
ma con scarsi risultati.
Grazie.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Guido
- Autore della discussione
- Platinum Member
Riduci
Di più
13 Anni 7 Mesi fa #7
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: convertire onda quadra in sinusoidale
Ciao Guido,
per variare la frequenza del segnale in uscita devi solo variare quella del segnale PWM.
La frequenza del segnale in uscita dipende dal numero dei campioni e dal numero di ripetizione di ogni campione.
Stai usando il programma di esempio che ho presentato nella Brief Note?
Quando hai affermato che hai ottenuto un segnale bellissimo cosa hai ottenuto?
Posteresti una immagine dello schema usato e del risultato dell'esempio funzionante?
Sono curioso di vedere Proteus e la visualizzazione delle simulazioni.
Saluti,
Mauro
per variare la frequenza del segnale in uscita devi solo variare quella del segnale PWM.
La frequenza del segnale in uscita dipende dal numero dei campioni e dal numero di ripetizione di ogni campione.
Stai usando il programma di esempio che ho presentato nella Brief Note?
Quando hai affermato che hai ottenuto un segnale bellissimo cosa hai ottenuto?
Posteresti una immagine dello schema usato e del risultato dell'esempio funzionante?
Sono curioso di vedere Proteus e la visualizzazione delle simulazioni.
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
13 Anni 7 Mesi fa #8
da Guido
Risposta da Guido al topic Re: convertire onda quadra in sinusoidale
Ciao, purtroppo non si può oppure non ne sono capace di fare copia ed incolla per mostrarti la forma d'onda con Proteus.
Ho notato che se imposto i tuoi parametri sul uscita RC2 esce un onda quadra e con un filtro RC da 110K e 4.7nF mi esce l'onda sinusoidale, se vario i parametri qui:
// Set the PWM frequency
PR2 = 149;
// Turn ON TMR2 and set Prescaler to 0
T2CON = 0x04;
CCP1CON = CCP1CON | 0b00000100;
da RC2 non esce nulla e su RC0 esce un onda a dente di sega.
Nella BriefNotes parli di TIMER0 (Il Duty Cycle deve essere cambiato ad ogni nuovo ciclo del nostro segnale PWM. Per tale ragione sarà bene far uso delle interruzioni sul Timer TMR0 al fine di effettuare l'aggiornamento in modo corretto, ovvero all'inizio di un nuovo periodo.) mentre nel codice vedo i parametri del TIMER2, per cortesia mi spieghi.
Grazie
E' un bel rompicapo.
Ho notato che se imposto i tuoi parametri sul uscita RC2 esce un onda quadra e con un filtro RC da 110K e 4.7nF mi esce l'onda sinusoidale, se vario i parametri qui:
// Set the PWM frequency
PR2 = 149;
// Turn ON TMR2 and set Prescaler to 0
T2CON = 0x04;
CCP1CON = CCP1CON | 0b00000100;
da RC2 non esce nulla e su RC0 esce un onda a dente di sega.
Nella BriefNotes parli di TIMER0 (Il Duty Cycle deve essere cambiato ad ogni nuovo ciclo del nostro segnale PWM. Per tale ragione sarà bene far uso delle interruzioni sul Timer TMR0 al fine di effettuare l'aggiornamento in modo corretto, ovvero all'inizio di un nuovo periodo.) mentre nel codice vedo i parametri del TIMER2, per cortesia mi spieghi.
Grazie
E' un bel rompicapo.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Guido
- Autore della discussione
- Platinum Member
Riduci
Di più
- Messaggi: 583
- Ringraziamenti ricevuti 1
13 Anni 7 Mesi fa #9
da Mauro Laurenti
Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.
Risposta da Mauro Laurenti al topic Re: convertire onda quadra in sinusoidale
Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.
Si prega Accedi o Crea un account a partecipare alla conversazione.
13 Anni 7 Mesi fa #10
da Guido
Risposta da Guido al topic Re: convertire onda quadra in sinusoidale
Sono sbalordoto, la soluzzione era cosi semplice, grazie.
Se invece volessi ottenere l'onda sinusoidale in uscita dal Pic con un integrato (in modo hardware) come posso fare?
Grazie
Per cortesia commentami il procedimento con termini non tecnici.
Se invece volessi ottenere l'onda sinusoidale in uscita dal Pic con un integrato (in modo hardware) come posso fare?
Grazie
Per cortesia commentami il procedimento con termini non tecnici.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Guido
- Autore della discussione
- Platinum Member
Riduci
Di più
- Messaggi: 583
- Ringraziamenti ricevuti 1
Moderatori: Mauro Laurenti, Pinna, StefA, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.
Login
© LaurTec 2006 - 2024