... non capisco alcune istruzioni

11 Anni 11 Mesi fa - 11 Anni 11 Mesi fa #1 da lucatun
... non capisco alcune istruzioni è stato creato da lucatun

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.

  • lucatun
  • Avatar di lucatun
  • Premium Member
  • Premium Member
Di più
11 Anni 11 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: ... non capisco alcune istruzioni
Ciao,

...vedo che stai facendo il salto ai 32 bit! :)

Quello che hai imparato sui PIC18 e il C non cambia!

Potresti far uso direttamente del registro PORTx e LATCx.
i PIC32 introducono pero' anche i registri SET, CLR e INV per cui si puo' intervenire sui primi registri che gia' conosci facendo uso di quest'ultimi.

In particolare per PORTB hai PORTBSET e PORTBCLR che permettono di settare e a 1 o a 0 i rispettivi bit.
Solo i bit posti ad 1 settano ad 1 o 0 i rispettivi bit del registro PORTB.
Questi registri hanno il vantaggio di eseguire l'istruzione in maniera atomica (un ciclo di clock).

Nell'esempio sotto (che ritengo infelice per un hello world) l'operatore << e' sempre uno shift.

Per settare il bit 10 di PORTB fa uso del registro PORTBSET (il cui bit 10 deve essere dunque settato).
Per fare questo si fanno 10 shift di 1 che si sposta alla decima posizione, per cui accende il led!

Stesso ragionamento per gli atri LED.

Saluti,

Mauro
Ringraziano per il messaggio: lucatun

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
11 Anni 11 Mesi fa #3 da lucatun
Risposta da lucatun al topic Re: ... non capisco alcune istruzioni
si ho sto tentando il salto ai 32bit, ma il problema principale è il tempo, purtroppo il mio lavoro mi porta sempre in giro per l'Europa, quindi faccio qualcosina quando sono a casa.
Comunque, grazie delle delucidazioni, adesso ci lavoro un po' su :P

La mia ingnoranza non ha confini
<-]LuT[->

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

  • lucatun
  • Avatar di lucatun
  • Premium Member
  • Premium Member
Di più
11 Anni 3 Mesi fa #4 da Cosimix
Risposta da Cosimix al topic Re: ... non capisco alcune istruzioni
Salve!

Questi registri hanno il vantaggio di eseguire l'istruzione in maniera atomica (un ciclo di clock).

Anche i PIC32 necessitano di quattro cicli di clock per poter eseguire un'istruzione?

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

  • Cosimix
  • Avatar di Cosimix
  • Elite Member
  • Elite Member
Di più
11 Anni 3 Mesi fa #5 da Mauro Laurenti
Risposta da Mauro Laurenti al topic ... non capisco alcune istruzioni
Ciao,

i PIC18 necessitano 4 cicli di clock per istruzione, come anche gli altri PIC ad 8 bit.
I dsPIC sono 2 cicli di clock per istruzione mentre i PIC32 necessitano di 1 ciclo per istruzione.

Saluti,

Mauro

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro LaurentiMatteo Garia

Registrati al sito

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

Registrati al sito LaurTec.

Login