modulo ccp

10 Anni 10 Mesi fa #1 da _seven
modulo ccp è stato creato da _seven
Salve a tutti e buon anno nuovo.Stavo leggendo questoquesto articolo sul sito...e sono incappato in questo codice:
Attenzione: Spoiler!

qualcuno potrebbe spiegare(commentare) il significato di "CCPR1L = (unsigned char) (duty_cycle >> 2);" e dei due if.

grazie 1000

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • _seven
  • New Member
  • New Member
Di più
10 Anni 10 Mesi fa #2 da shinshi
Risposta da shinshi al topic modulo ccp
L'operatore >> è lo shift a destra. duty_cycle è un valore a 10 bit e dobbiamo mettere gli 8 bit "più significativi" nel registro ad 8 bit CCPR1L. Lo shift di 2 posizioni sposta verso destra i bit e i 2 più a destra vengono scartati. (unsigned char) viene messo per fare un casting dell'operazione su una variabile int e inserire invece nel registro solo gli 8 bit necessari.
Saluti
Luca

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • shinshi
  • Avatar di shinshi
  • Elite Member
  • Elite Member
Di più
10 Anni 10 Mesi fa #3 da _seven
Risposta da _seven al topic modulo ccp
grazie Luca.
mentre gli argomenti degli if?
grazie

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • _seven
  • New Member
  • New Member
Di più
10 Anni 10 Mesi fa #4 da shinshi
Risposta da shinshi al topic modulo ccp
Il carattere & è l'AND logico, nei 2 if viene testato se il primo e secondo bit di duty_cycle sono settati e nel caso vengono settati i relativi bits di CCP1CON.
Ti consiglio di dare una letta a pag 108 del libro di Mauro Laurenti C18 Step by Step per approfondire l'argomento sugli operatori logici.
Saluti
Luca
Ringraziano per il messaggio: _seven

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • shinshi
  • Avatar di shinshi
  • Elite Member
  • Elite Member
Di più
Moderatori: Mauro LaurentiPinnaStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login