MICROCHIP-LOGO

Programmazione Flash MICROCHIP PIC24

MICROCHIP-PIC24-Programmazione-Flash-PRO

Informazione di u produttu

Programmazione Flash
E famiglie dsPIC33/PIC24 di i dispositi anu una memoria interna di prugramma Flash programabile per l'esekzione di codice d'utilizatore. Ci hè finu à trè metudi per programà sta memoria:

  • Operazione di istruzzioni di a tavola
  • Programmazione Seriale In-Circuit (ICSP)
  • Programmazione in l'applicazione (IAP)

L'istruzzioni di a tabella furnisce u metudu di trasferimentu di dati trà u spaziu di memoria di u prugramma Flash è u spaziu di memoria di dati di i dispositi dsPIC33/PIC24. L'istruzzioni TBLRDL hè aduprata per leghje da bits [15: 0] di u spaziu di memoria di u prugramma. L'istruzione TBLWTL hè aduprata per scrive in bits [15: 0] di u spaziu di memoria di u prugramma Flash. TBLRDL è TBLWTL ponu accede à a memoria di u prugramma Flash in modu Word o Byte.

In più di l'indirizzu di memoria di u prugramma Flash, l'istruzzioni di a tavula specifica ancu un registru W (o un puntatore di registru W à un locu di memoria), chì hè a fonte di i dati di memoria di u prugramma Flash per esse scrittu, o a destinazione per un prugramma Flash. lettura di memoria.

Questa sezione descrive a tecnica di prugrammazione di memoria di prugramma Flash. E famiglie di dispositivi dsPIC33/ PIC24 anu una memoria interna di prugramma Flash programabile per l'esecuzione di codice d'utilizatore. Ci hè finu à trè metudi per programà sta memoria:

  • Autoprogrammazione Run-Time (RTSP)
  • Programmazione Seriale In-Circuit™ (ICSP™)
  • Programmazione Seriale In-Circuit Enhanced (EICSP)

RTSP hè realizatu da u software di l'applicazione durante l'esekzione, mentri ICSP è EICSP sò realizati da un programatore esternu utilizendu una cunnessione di dati seriale à u dispusitivu. ICSP è EICSP permettenu un tempu di prugrammazione assai più veloce cà RTSP. E tecniche RTSP sò descritte in a Sezione 4.0 "Autoprogrammazione Run-Time (RTSP)". I protokolli ICSP è EICSP sò definiti in i ducumenti di specificazione di prugrammazione per i dispositi rispettivi, chì ponu esse scaricati da u Microchip. websitu (http://www.microchip.com). Quandu u prugramma in a lingua C, parechje funzioni integrate sò dispunibuli chì facilitanu a prugrammazione Flash. Vede a "MPLAB® XC16 C Compiler User's Guide" (DS50002071) per i dettagli riguardanti e funzioni integrate.

Istruzzioni per l'usu di u produttu

Per programà a memoria di u prugramma Flash, seguitate sti passi:

  1. Fighjate à a scheda di dati di u dispusitivu per verificà s'ellu a rùbbrica di manuali di riferimentu di famiglia sustene u dispusitivu chì vo avete usu.
  2. Scaricate a scheda di dati di u dispusitivu è e sezioni di manuali di riferimentu di famiglia da u Microchip Worldwide Websitu à: http://www.microchip.com.
  3. Sceglite unu di i trè metudi per programà a memoria (Operazione di l'istruzzioni di a tavola, Programmazione seriale in circuitu (ICSP), Programmazione in l'applicazione (IAP)).
  4. Sè aduprate l'Operazione di Istruzzioni Table, utilizate l'istruzzioni TBLRDL per leghje da i bits [15: 0] di u spaziu di memoria di u prugramma è l'istruzzioni TBLWTL per scrive à i bits [15: 0] di u spaziu di memoria di u prugramma Flash.
  5. Assicuratevi di specificà un registru W (o un W Register Pointer à un locu di memoria) cum'è a fonte di i dati di memoria di u prugramma Flash per esse scrittu, o a destinazione per una memoria di u prugramma Flash leghje.

Per più infurmazione è dettagli nantu à a prugrammazione di a memoria di u prugramma Flash, riferite à u Manuale di Riferimentu Famiglia dsPIC33/PIC24.

TABLE INSTRUCTION OPERAZIONE

L'istruzzioni di a tavula furnisce u metudu di trasferimentu di dati trà u spaziu di memoria di u prugramma Flash è u spaziu di memoria di dati di i dispositi dsPIC33/PIC24. Questa sezione furnisce un riassuntu di l'istruzzioni di a tabella utilizata durante a prugrammazione di a memoria di u prugramma Flash. Ci sò quattru struzzioni basi di a tavola:

  • TBLRDL: Table Read Low
  • TBLRDH: Table Read High
  • TBLWTL: Table Scrive Low
  • TBLWTH: Table Scrive High

L'istruzzioni TBLRDL hè aduprata per leghje da bits [15: 0] di u spaziu di memoria di u prugramma. L'istruzione TBLWTL hè aduprata per scrive in bits [15: 0] di u spaziu di memoria di u prugramma Flash. TBLRDL è TBLWTL ponu accede à a memoria di u prugramma Flash in modu Word o Byte.

L'istruzzioni TBLRDH è TBLWTH sò usati per leghje o scrive à bits [23:16] di u spaziu di memoria di u prugramma. TBLRDH è TBLWTH ponu accede à a memoria di u prugramma Flash in u modu Word o Byte. Perchè a memoria di u prugramma Flash hè solu 24 bit di larghezza, l'istruzzioni TBLRDH è TBLWTH ponu indirizzà un byte superiore di memoria di u prugramma Flash chì ùn esiste micca. Stu byte hè chjamatu "byte fantasma". Ogni lettura di u byte fantasma torna 0x00. Una scrittura à u byte fantasma ùn hà micca effettu. A memoria di u prugramma Flash 24-bit pò esse cunsiderata cum'è dui spazii di 16-bit side-by-side, cù ogni spaziu spartendu u stessu intervallu di indirizzu. Dunque, l'istruzzioni TBLRDL è TBLWTL accede à u spaziu di memoria di u prugramma "bassu" (PM[15:0]). L'istruzzioni TBLRDH è TBLWTH accede à u spaziu di memoria di u prugramma "altu" (PM[31:16]). Ogni lettura o scrittura à PM[31:24] accede à u byte fantasma (non implementatu). Quandu qualchissia di l'istruzzioni di a tavola hè aduprata in u modu Byte, u bit Least Significant (LSb) di l'indirizzu di a tavola serà utilizatu cum'è u bit di selezzione di byte. U LSb determina quale byte in u spaziu di memoria di u prugramma altu o bassu hè accessu.

Figura 2-1 illustra cumu a memoria di u prugramma Flash hè indirizzata cù l'istruzzioni di a tavola. Un indirizzu di memoria di u prugramma di 24-bit hè furmatu cù bits [7: 0] di u registru TBLPAG è l'indirizzu effettivu (EA) da un registru W specificatu in l'istruzzioni di a tabella. U 24-bit Program Counter (PC) hè illustratu in Figura 2-1 per riferimentu. I 23 bits superiore di l'EA sò usati per selezziunà u locu di memoria di u prugramma Flash.

Per l'istruzzioni di a tabella di u modu Byte, u LSb di u registru W EA hè utilizatu per selezziunà quale byte di a parolla di memoria di u prugramma Flash 16-bit hè indirizzata; '1' seleziona i bit [15:8] e '0' seleziona i bit [7:0]. U LSb di u registru W EA hè ignoratu per una struzzione di tavula in u modu Word. In più di l'indirizzu di memoria di u prugramma Flash, l'istruzzioni di a tavula specifica ancu un registru W (o un puntatore di registru W à un locu di memoria), chì hè a fonte di i dati di memoria di u prugramma Flash per esse scrittu, o a destinazione per un prugramma Flash. lettura di memoria. Per una operazione di scrittura di tavula in u modu Byte, i bits [15: 8] di u registru di travagliu fonte sò ignorati.MICROCHIP-PIC24-Programmazione-Flash- (1)

Usendu Table Leghjite Istruzzioni
A lettura di a tavula richiede dui passi:

  1. L'Address Pointer hè stallatu cù u registru TBLPAG è unu di i registri W.
  2. U cuntenutu di a memoria di u prugramma Flash in u locu di l'indirizzu pò esse lettu.

 

  1. LEGGI MODE PAROLA
    U codice mostratu in Example 2-1 è Example 2-2 mostra cumu leghje una parolla di a memoria di u prugramma Flash utilizendu l'istruzzioni di a tavola in u modu Word.MICROCHIP-PIC24-Programmazione-Flash- (2) MICROCHIP-PIC24-Programmazione-Flash- (3)
  2. READ BYTE MODE
    U codice mostratu in Example 2-3 mostra l'operatore post-incrementu nantu à a lettura di u byte bassu, chì face chì l'indirizzu in u registru di travagliu aumenta da unu. Questu stabilisce EA [0] à un '1' per l'accessu à l'octetu mediu in a terza struzzione di scrittura. L'ultimu post-incrementu pone W0 à un indirizzu uniforme, indicà à u prossimu locu di memoria di u prugramma Flash.MICROCHIP-PIC24-Programmazione-Flash- (4)
  3. LATCHES DI SCRITTURA TAVOLA
    Istruzzioni di scrittura di a tabella ùn scrive micca direttamente à a memoria di u prugramma non volatile. Invece, l'istruzzioni di scrittura di a tavola caricanu i latch di scrittura chì almacenanu i dati di scrittura. I registri di l'indirizzu NVM anu da esse caricati cù u primu indirizzu induve i dati latched deve esse scritti. Quandu tutti i latch di scrittura sò stati caricati, l'operazione di prugrammazione di memoria attuale hè iniziata da eseguisce una sequenza speciale d'istruzzioni. Durante a prugrammazione, u hardware trasferisce i dati in i latch di scrittura à a memoria Flash. I latches di scrittura cumincianu sempre à l'indirizzu 0xFA0000, è si estendenu attraversu 0xFA0002 per a prugrammazione di parole, o attraversu 0xFA00FE per i dispositi chì anu prugrammazione in fila.

Nota: U numaru di latch di scrittura varieghja da u dispusitivu. Riferite à u capitulu "Memoria di u prugramma Flash" di a scheda di dati di u dispositivu specificu per u numeru di latches di scrittura dispunibili.

REGISTRI DI CONTROLLO

Diversi Registri di Funzioni Speciali (SFR) sò usati per programà l'operazione di cancellazione è scrittura di memoria di u prugramma Flash: NVMCON, NVMKEY, è i registri di Indirizzu NVM, NVMADR è NVMADRU.

Registru NVMCON
U registru NVMCON hè u registru di cuntrollu primariu per Flash è operazioni di prugramma / cancellazione. Stu registru selezziunà se una operazione di sguassà o di prugramma serà realizatu è pò inizià u ciclu di prugramma o di sguassà. U registru NVMCON hè mostratu in u Registru 3-1. U byte più bassu di NVMCON cunfigura u tipu d'operazione NVM chì serà realizatu.

Registru NVMKEY
U registru NVMKEY (vede u Registru 3-4) hè un registru di scrittura solu utilizatu per prevene scrittura accidentale di NVMCON chì pò corrompere a memoria Flash. Una volta sbloccatu, i scritti à NVMCON sò permessi per un ciculu d'istruzzioni in quale u bit WR pò esse stallatu per invucà una rutina di cancellazione o di prugramma. Dati i requisiti di timing, disattivà l'interruzioni hè necessariu.
Eseguite i seguenti passi per inizià una sequenza di cancellazione o di prugrammazione:

  1. Disattivate l'interruzioni.
  2. Scrivite 0x55 à NVMKEY.
  3. Scrivite 0xAA à NVMKEY.
  4. Cumincià u ciclu di scrittura di prugrammazione mettendu u bit WR (NVMCON[15]).
  5. Eseguite duie istruzioni NOP.
  6. Ripristina l'interruzioni.

MICROCHIP-PIC24-Programmazione-Flash- (5)

DISABILING INTERRUPTS
A disattivazione di l'interruzioni hè necessaria per tutte e operazioni Flash per assicurà un risultatu successu. Se si verifica una interruzzione durante a sequenza di sbloccare NVMKEY, pò bluccà a scrittura à u bit WR. A sequenza di sbloccare NVMKEY deve esse eseguita senza interruzzione, cum'è discutitu in a Sezione 3.2 "Registru NVMKEY".

L'interruzioni ponu esse disattivate in unu di dui metudi, disattivendu l'Enable Interrupt Globale (bit GIE), o usendu l'istruzione DISI. L'istruzzioni DISI ùn hè micca cunsigliatu postu chì disattiva solu interruzioni di Priorità 6 o sottu; dunque, u metudu Global Interrupt Enable deve esse usatu.

U CPU scrive à GIE piglià dui cicli d'istruzzioni prima di affettà u flussu di codice. Dui struzzioni NOP sò necessarii dopu, o ponu esse rimpiazzati cù qualsiasi altre struzzioni di travagliu utili, cum'è carica NVMKEY; questu hè applicabile à l'operazioni stabilite è chjaru. A cura deve esse presa quandu riattivate l'interruzioni in modu chì a rutina di destinazione NVM ùn permette micca interruzioni quandu una funzione chjamata precedente li hà disattivatu per altri motivi. Per affruntà questu in Assembly, un stack push and pop pò esse usatu per mantene u statu di u bit GIE. In C, una variabile in RAM pò esse usata per almacenà INTCON2 prima di sguassà GIE. Aduprate a sequenza seguente per disattivà l'interruzioni:

  1. Push INTCON2 nantu à a pila.
  2. Cancella u bit GIE.
  3. Dui NOP o scrive à NVMKEY.
  4. Cumincià u ciculu di prugrammazione mettendu u bit WR (NVMCON[15]).
  5. Ripristina u statu GIE da POP di INTCON2.MICROCHIP-PIC24-Programmazione-Flash- (6)

Registri di indirizzu NVM
I dui registri di l'indirizzu NVM, NVMADRU è NVMADR, quandu sò cuncatenati, formanu l'EA 24-bit di a fila o a parolla scelta per l'operazioni di prugrammazione. U registru NVMADRU hè utilizatu per mantene l'ottu bits superiori di l'EA, è u registru NVMADR hè utilizatu per mantene i 16 bits più bassi di l'EA. Certi dispositi ponu riferite à sti stessi registri cum'è NVMADRL è NVMADRH. I registri di l'indirizzu NVM duveranu sempre puntà à un cunfini di parola d'istruzione doppia quandu eseguite una operazione di prugrammazione di parola d'istruzzioni doppia, un cunfini di fila quandu eseguite una operazione di prugrammazione di fila o un cunfini di pagina quandu eseguite una operazione di cancellazione di pagina.

Registru 3-1: NVMCON: Registru di cuntrollu di memoria flashMICROCHIP-PIC24-Programmazione-Flash- (7) MICROCHIP-PIC24-Programmazione-Flash- (8)

Nota

  1. Stu bit pò esse resettatu solu (vale à dì, sbulicatu) in un Power-on Reset (POR).
  2. Quandu si esce da u modalità Idle, ci hè un ritardu di accensione (TVREG) prima chì a memoria di u prugramma Flash diventa operativa. Riferite à u capitulu "Caratteristiche elettriche" di a scheda di dati specifichi di u dispusitivu per più infurmazione.
  3. Tutte e altre combinazioni di NVMOP [3: 0] ùn sò micca implementate.
  4. Questa funziunalità ùn hè micca dispunibule nantu à tutti i dispositi. Riferite à u capitulu "Memoria di u prugramma Flash" in a scheda di dati di u dispositivu specificu per l'operazioni dispunibili.
  5. L'entrata in un modu di risparmiu di energia dopu à eseguisce una struzzione PWRSAV hè contingente à a fine di tutte e operazioni NVM pendenti.
  6. Stu bit hè solu dispunibule nantu à i dispositi chì supportanu a prugrammazione di fila buffered RAM. Consultate a scheda di dati specifichi di u dispusitivu per a dispunibilità.

MICROCHIP-PIC24-Programmazione-Flash- (9)

Nota

  1. Stu bit pò esse resettatu solu (vale à dì, sbulicatu) in un Power-on Reset (POR).
  2. Quandu si esce da u modalità Idle, ci hè un ritardu di accensione (TVREG) prima chì a memoria di u prugramma Flash diventa operativa. Riferite à u capitulu "Caratteristiche elettriche" di a scheda di dati specifichi di u dispusitivu per più infurmazione.
  3. Tutte e altre combinazioni di NVMOP [3: 0] ùn sò micca implementate.
  4. Questa funziunalità ùn hè micca dispunibule nantu à tutti i dispositi. Riferite à u capitulu "Memoria di u prugramma Flash" in a scheda di dati di u dispositivu specificu per l'operazioni dispunibili.
  5. L'entrata in un modu di risparmiu di energia dopu à eseguisce una struzzione PWRSAV hè contingente à a fine di tutte e operazioni NVM pendenti.
  6. Stu bit hè solu dispunibule nantu à i dispositi chì supportanu a prugrammazione di fila buffered RAM. Consultate a scheda di dati specifichi di u dispusitivu per a dispunibilità.

Registru 3-2: NVMADRU: Registru di Indirizzu Superiore di Memoria Nonvolatile

MICROCHIP-PIC24-Programmazione-Flash- (10)

Registru 3-3: NVMADR: Registru di indirizzu di memoria non volatile

MICROCHIP-PIC24-Programmazione-Flash- (11)

Registru 3-4: NVMKEY: Registru di Chiave di Memoria Nonvolatile

MICROCHIP-PIC24-Programmazione-Flash- (12)

AUTOPROGRAMMAZIONE RUN-TIME (RTSP)

RTSP permette à l'applicazione di l'utilizatori di mudificà u cuntenutu di a memoria di u prugramma Flash. RTSP hè realizatu cù l'istruzzioni TBLRD (Table Read) è TBLWT (Table Write), u registru TBLPAG è i registri di cuntrollu NVM. Cù RTSP, l'applicazione d'utilizatore pò sguassate una sola pagina di memoria Flash è programà sia duie parole d'istruzzioni o finu à 128 parolle d'istruzzioni in certi dispositi.

Operazione RTSP
L'array di memoria di u prugramma dsPIC33/PIC24 Flash hè urganizata in pagine di sguassà chì ponu cuntene finu à 1024 struzzioni. L'opzione di prugrammazione di doppia parolla hè dispunibule in tutti i dispositi in e famiglie dsPIC33 / PIC24. Inoltre, certi dispositi anu capacità di prugrammazione in fila, chì permette a prugrammazione di sin'à 128 parolle d'istruzzioni à tempu. L'operazioni di prugrammazione è sguassate si verificanu sempre nantu à una parola di prugrammazione doppia, fila o cunfini di pagina. Riferite à u capitulu "Memoria di u prugramma Flash" di a scheda di dati di u dispositivu specificu per a dispunibilità è e dimensioni di una fila di prugrammazione, è a dimensione di a pagina per sguassà. A memoria di u prugramma Flash implementa i buffer di mantene, chjamati latches di scrittura, chì ponu cuntene finu à 128 struzzioni di dati di prugrammazione secondu u dispusitivu. Prima di l'operazione di prugrammazione attuale, i dati di scrittura deve esse caricati in i latches di scrittura. A sequenza basica per RTSP hè di cunfigurà u Table Pointer, u registru TBLPAG, è poi eseguisce una seria di struzzioni TBLWT per carica i latch di scrittura. A prugrammazione hè realizata da mette i bits di cuntrollu in u registru NVMCON. U numaru di istruzzioni TBLWTL è TBLWTH necessarii per carricà i latches di scrittura hè uguale à u numeru di parolle di prugramma per esse scritte.

Nota: Hè ricumandemu chì u registru TBLPAG sia salvatu prima di mudificà è restauratu dopu l'usu.

ATTENZIONE
In certi dispositi, i bits di cunfigurazione sò guardati in l'ultima pagina di u spaziu di memoria di l'utilizatori Flash di u prugramma in una sezione chjamata "Bytes di configurazione Flash". Cù questi dispositi, eseguisce una operazione di cancellazione di pagina in l'ultima pagina di a memoria di u prugramma sguassate i bytes di Cunfigurazione Flash, chì permette a prutezzione di codice. Per quessa, l'utilizatori ùn devenu micca fà operazioni di cancellazione di pagina in l'ultima pagina di memoria di prugramma. Questu ùn hè micca una preoccupazione quandu i bits di cunfigurazione sò guardati in u spaziu di memoria di cunfigurazione in una sezione chjamata "Registri di cunfigurazione di u dispositivu". Riferite à a Mappa di Memoria di u Programma in u capitulu "Organizazione di a Memoria" di a scheda di dati di u dispositivu specificu per determinà induve si trovanu i bits di cunfigurazione.

Operazioni di prugrammazione Flash
Un prugramma o un'operazione di cancellazione hè necessariu per prugrammazione o sguassate a memoria interna di u prugramma Flash in u modu RTSP. U prugramma o l'operazione di sguassà hè automaticamente cronometrata da u dispusitivu (riferite à a scheda di dati specifichi di u dispusitivu per l'infurmazioni di timing). L'impostazione di u bit WR (NVMCON[15]) principia l'operazione. U bit WR hè sguassatu automaticamente quandu l'operazione hè finita. U CPU si ferma finu à chì l'operazione di prugrammazione hè finita. U CPU ùn eseguirà micca istruzzioni o risponde à l'interruzioni durante stu tempu. Se ogni interruzzione accade durante u ciclu di prugrammazione, restanu pendenti finu à chì u ciculu finisci. Certi dispositi dsPIC33/PIC24 ponu furnisce una memoria di prugramma Flash ausiliaria (consultate u capitulu "Organizazione di a Memoria" di a scheda di dati di u dispositivu specificu per i dettagli), chì permette l'esecuzione di l'istruzzioni senza Stalls CPU mentre a memoria di u prugramma Flash di l'utente hè sguassata è / o programata. À u cuntrariu, a memoria di u prugramma ausiliaria Flash pò esse programata senza CPU Stalls, sempre chì u codice hè eseguitu da a memoria di u prugramma Flash d'utilizatore. L'interruzzione NVM pò esse usata per indicà chì l'operazione di prugrammazione hè cumpleta.

Nota

  1. Se si verifica un avvenimentu POR o BOR mentre una operazione di cancellazione o di prugrammazione RTSP hè in corso, l'operazione RTSP hè abortita immediatamente. L'utilizatore deve eseguisce l'operazione RTSP di novu dopu chì u dispusitivu esce da Reset.
  2. Se un avvenimentu di reset EXTR, SWR, WDTO, TRAPR, CM o IOPUWR si verifica mentre una operazione di cancellazione RTSP o di prugrammazione hè in corso, u dispusitivu serà resettatu solu dopu chì l'operazione RTSP hè cumpleta.

ALGORITMU DI PROGRAMMAZIONE RTSP
Questa sezione descrive a prugrammazione RTSP, chì si compone di trè prucessi maiò.

Crià una Image RAM di a Pagina di Dati per esse mudificata
Eseguite sti dui passi per creà una maghjina RAM di a pagina di dati da mudificà:

  1. Leghjite a pagina di a memoria di u prugramma Flash è guardala in a RAM di dati cum'è una "imagine" di dati. L'imaghjini RAM deve esse lettu partendu da una frontiera di l'indirizzu di a pagina.
  2. Mudificà l'imaghjini di dati RAM cum'è necessariu.

Cancellazione di a memoria di u prugramma Flash
Dopu avè finitu i Passi 1 è 2 sopra, fate i seguenti quattru passi per sguassà a pagina di memoria di u prugramma Flash:

  1. Impostate i bit NVMOP[3:0] (NVMCON[3:0]) per sguassà a pagina di a memoria di u prugramma Flash letta da u Passu 1.
  2. Scrivite l'indirizzu iniziale di a pagina per esse sguassata in i registri NVMADRU è NMVADR.
  3. Cù interruzioni disattivate:
    • a) Scrivite a sequenza di chjave à u registru NVMKEY per attivà l'impostazione di u bit WR (NVMCON [15]).
    • b) Pone u bit WR; questu hà da inizià u ciclu di sguassà.
    • c) Eseguite duie istruzioni NOP.
  4. U bit WR hè sguassatu quandu u ciclu di cancellazione hè cumpletu.

Prugrammazione di a Pagina di Memoria Flash
A prossima parte di u prucessu hè di prugrammà a pagina di memoria Flash. A pagina di memoria Flash hè programata cù e dati da l'imaghjini creati in u Passu 1. I dati sò trasferiti à i latches di scrittura in incrementi di duie parole d'istruzzioni o fila. Tutti i dispositi anu una doppia capacità di prugrammazione di e parolle d'istruzione. (Consultate u capitulu "Memoria di u prugramma Flash" in a scheda di dati specifichi di u dispositivu per determinà se, è chì tipu di prugrammazione di fila hè dispunibule.) Dopu chì i latches di scrittura sò caricati, l'operazione di prugrammazione hè iniziata, chì trasferisce i dati da u prugramma. scrivite latch in memoria Flash. Questu hè ripetutu finu à chì a pagina sana hè stata programata. Repetite i seguenti trè passi, partendu da a prima parolla d'istruzzioni di a pagina Flash è incrementendu in passi di duie parole di prugramma, o file d'istruzzioni, finu à chì a pagina sana hè stata programata:

  1. Caricate i latch di scrittura:
    • a) Pone u registru TBLPAG per indicà u locu di i latches di scrittura.
    • b) Caricate u numeru desideratu di latch usendu coppie di istruzioni TBLWTL è TBLWTH:
    • Per a prugrammazione di doppia parolla, duie coppie di istruzioni TBLWTL è TBLWTH sò richieste
    • Per a prugrammazione di fila, un paru di istruzioni TBLWTL è TBLWTH sò necessarii per ogni elementu di fila di parola d'istruzione
  2. Inizià l'operazione di prugrammazione:
    • a) Impostate i bit NVMOP[3:0] (NVMCON[3:0]) per programmare parole d'istruzione doppie o una fila d'istruzioni, se appropri.
      b) Scrivite u primu indirizzu di a doppia parolla d'istruzione o di a fila d'istruzzioni da esse programata in i registri NVMADRU è NVMADR.
      c) Cù interruzioni disattivate:
      • Scrivite a sequenza di chjave à u registru NVMKEY per attivà l'impostazione di u bit WR (NVMCON[15])
      • Pone u bit WR; questu hà da inizià u ciclu di sguassà
      • Eseguite dui instructions NOP
  3. U bit WR hè sguassatu quandu u ciclu di prugrammazione hè cumpletu.

Repetite u prucessu tutale quantu necessariu per programà a quantità desiderata di memoria di prugramma Flash.

Nota

  1. L'utilizatore deve ricurdà chì a quantità minima di memoria di prugramma Flash chì pò esse sguassata cù RTSP hè una pagina sguassata. Per quessa, hè impurtante chì una maghjina di sti lochi sia guardata in RAM di scopu generale prima di inizià un ciclu di sguassà.
  2. Una fila o una parolla in a memoria di u prugramma Flash ùn deve esse programata più di duie volte prima di esse sguassata.
  3. In i dispositi cù byte di cunfigurazione almacenati in l'ultima pagina di Flash, eseguisce una operazione di cancellazione di pagina in l'ultima pagina di memoria di u prugramma sguassate i bytes di cunfigurazione, chì permette a prutezzione di codice. Nantu à sti dispusitivi, l'ultima pagina di memoria Flash ùn deve esse sguassata.

CANCELLAZIONE DI UNA PAGINA DI FLASH
A sequenza di codice mostrata in Esample 4-1 pò esse usatu per sguassà una pagina di memoria di u prugramma Flash. U registru NVMCON hè cunfiguratu per sguassà una pagina di memoria di prugramma. I registri NVMADR è NMVADRU sò caricati cù l'indirizzu iniziale di a pagina per esse sguassata. A memoria di u prugramma deve esse sguassata à un limite di indirizzu di pagina "pari". Vede u capitulu "Memoria di u prugramma Flash" di a scheda di dati di u dispositivu specificu per determinà a dimensione di a pagina Flash.
L'operazione di cancellazione hè iniziata scrivendu un sbloccare speciale, o sequenza di chjave, à u registru NVMKEY prima di stabilisce u bit WR (NVMCON[15]). A sequenza di sbloccare deve esse eseguita in l'ordine esatta, cum'è mostra in Esample 4-1, senza interruzzione; dunque, l'interruzzione deve esse disattivata.
Dui struzzioni NOP deve esse inseriti in u codice dopu à u ciculu di sguassà. In certi dispositi, i bits di cunfigurazione sò guardati in l'ultima pagina di u prugramma Flash. Cù questi dispositi, eseguisce una operazione di cancellazione di pagina in l'ultima pagina di a memoria di u prugramma sguassate i bytes di Cunfigurazione Flash, chì permettenu a prutezzione di codice com'è u risultatu. L'utilizatori ùn devenu micca fà operazioni di cancellazione di pagina in l'ultima pagina di memoria di u prugramma.MICROCHIP-PIC24-Programmazione-Flash- (13)MICROCHIP-PIC24-Programmazione-Flash- (14)

LOADING Write LATCHES
I latches di scrittura sò aduprati cum'è un mecanismu di almacenamentu trà l'applicazioni d'utilizatori Table Writes è a sequenza di prugrammazione attuale. Durante l'operazione di prugrammazione, u dispusitivu trasfirerà i dati da i latches di scrittura in a memoria Flash. Per i dispositi chì supportanu a prugrammazione di fila, Esample 4-3 mostra a sequenza d'istruzzioni chì pò esse usata per carricà 128 latches di scrittura (128 parole d'istruzzioni). L'istruzzioni 128 TBLWTL è 128 TBLWTH sò necessarie per carica i latch di scrittura per a prugrammazione di una fila di memoria di prugramma Flash. Riferite à u capitulu "Memoria di u prugramma Flash" di a scheda di dati di u dispositivu specificu per determinà u numeru di latch di prugrammazione dispunibili nantu à u vostru dispositivu. Per i dispositi chì ùn sustene micca a prugrammazione di fila, Esample 4-4 mostra a sequenza d'istruzzioni chì ponu esse aduprate per carricà dui latches di scrittura (dui parolle d'istruzzioni). Dui istruzzioni TBLWTL è dui TBLWTH sò necessarii per carica i latch di scrittura.

Nota

  1. U codice per Load_Write_Latch_Row hè mostratu in Esample 4-3 è u codice per Load_Write_Latch_Word hè mostratu in Esample 4-4. U codice in i dui examples hè riferitu in l'esamples.
  2. Riferite à a scheda di dati specifichi di u dispusitivu per u numeru di latches.MICROCHIP-PIC24-Programmazione-Flash- (15)

PROGRAMMAZIONE SINGLE FILA EXAMPLE
U registru NVMCON hè cunfiguratu per programà una fila di memoria di prugramma Flash. L'operazione di u prugramma hè iniziata scrivendu un sbloccare speciale, o sequenza di chjave, à u registru NVMKEY prima di stabilisce u bit WR (NVMCON [15]). A sequenza di sbloccare deve esse eseguita senza interruzzione, è in l'ordine esattu, cum'è mostra in Esample 4-5. Dunque, l'interruzioni deve esse disattivate prima di scrive a sequenza.

Nota: Micca tutti i dispositi anu capacità di prugrammazione in fila. Riferite à u capitulu "Memoria di u prugramma Flash" di a scheda di dati di u dispositivu specificu per stabilisce se questa opzione hè dispunibule.

Dui struzzioni NOP devenu esse inseriti in u codice dopu à u ciclu di prugrammazione.MICROCHIP-PIC24-Programmazione-Flash- (16) MICROCHIP-PIC24-Programmazione-Flash- (17)

Programmazione di fila cù u RAM BUFFER
Selezziunate i dispositi dsPIC33 permettenu a prugrammazione di fila per esse realizatu direttamente da un spaziu buffer in a RAM di dati, invece di passà per i latch di mantene per trasfiriri dati cù struzzioni TBLWT. U locu di u buffer RAM hè determinatu da u registru NVMRCADR (s), chì sò carricati cù l'indirizzu RAM di dati chì cuntene a prima parolla di dati di u prugramma per esse scritta.

Prima di fà u funziunamentu di u prugramma, u spaziu buffer in RAM deve esse carricu cù a fila di dati per esse programati. A RAM pò esse caricata in un furmatu cumpressu (imballatu) o micca cumpressu. L'almacenamiento cumpressatu usa una parolla di dati per almacenà i Byte più significativi (MSB) di duie parolle di dati di u prugramma adiacenti. U furmatu micca cumpressatu usa duie parolle di dati per ogni parolla di dati di u prugramma, cù u byte superiore di ogni altra parolla essendu 00h. U formatu cumpressatu usa circa 3/4 di u spaziu in a RAM di dati cumparatu cù u furmatu micca cumpressatu. U formatu micca cumpressatu, invece, imita a struttura di a parolla di dati di u prugramma 24-bit, cumpletu cù u byte fantasma superiore. U furmatu di dati hè sceltu da u bit RPDF (NVMCON [9]). Sti dui formati sò mostrati in Figura 4-1.

Una volta chì u buffer RAM hè caricatu, i Flash Address Pointers, NVMADR è NVMADRU, sò caricati cù l'indirizzu iniziale di 24-bit di a fila Flash per esse scrittu. Cum'è cù a prugrammazione di i latch di scrittura, u prucessu hè iniziatu scrivendu a sequenza di sbloccare NVM, seguita da stabilisce u bit WR. Una volta iniziatu, u dispusitivu carica automaticamente i latches dritti è aumenta i registri di l'indirizzu NVM finu à chì tutti i byte sò stati programati. Esample 4-7 mostra un example di u prucessu. Se NVMSRCADR hè stabilitu à un valore tali chì una cundizione d'errore di underrun di dati si trova, u bit URERR (NVMCON[8]) serà stabilitu per indicà a cundizione.
I dispositi chì implementanu a prugrammazione di fila di buffer RAM implementanu ancu una o duie latch di scrittura. Quessi sò caricati cù l'istruzzioni TBLWT è sò usati per fà operazioni di prugrammazione di parolle.MICROCHIP-PIC24-Programmazione-Flash- (18)

PROGRAMAZIONI PAROLE
U registru NVMCON hè cunfiguratu per programà duie parolle d'istruzzioni di memoria di prugramma Flash. L'operazione di u prugramma hè iniziata scrivendu un sbloccare speciale, o sequenza di chjave, à u registru NVMKEY prima di stabilisce u bit WR (NVMCON [15]). A sequenza di sbloccare deve esse eseguita in l'ordine esatta, cum'è mostra in Esample 4-8, senza interruzzione. Dunque, l'interruzioni deve esse disattivate prima di scrive a sequenza.
Dui struzzioni NOP devenu esse inseriti in u codice dopu à u ciclu di prugrammazione.MICROCHIP-PIC24-Programmazione-Flash- (19) MICROCHIP-PIC24-Programmazione-Flash- (20)

Scrittura à i Registri di cunfigurazione di u dispositivu
In certi dispositi, i bits di cunfigurazione sò almacenati in u spaziu di memoria di cunfigurazione in una sezione chjamata "Registri di cunfigurazione di u dispositivu". Nant'à altri dispositi, i bits di cunfigurazione sò guardati in l'ultima pagina di u spaziu di memoria d'utilizatore Flash di u prugramma in una sezione chjamata "Bytes di cunfigurazione Flash". Cù questi dispositi, eseguisce una operazione di cancellazione di pagina in l'ultima pagina di a memoria di u prugramma sguassate i bytes di Cunfigurazione Flash, chì permette a prutezzione di codice. Per quessa, l'utilizatori ùn devenu micca fà operazioni di cancellazione di pagina in l'ultima pagina di memoria di prugramma. Riferite à a Mappa di Memoria di u Programma in u capitulu "Organizazione di a Memoria" di a scheda di dati di u dispositivu specificu per determinà induve si trovanu i bits di cunfigurazione.

Quandu i bits di cunfigurazione sò almacenati in u spaziu di memoria di cunfigurazione, RTSP pò esse usatu per scrive à i registri di cunfigurazione di u dispositivu, è RTSP permette à ogni registru di cunfigurazione per esse riscritta individualmente senza prima eseguisce un ciclu di cancellazione. A prudenza deve esse esercitata quandu scrivite i registri di cunfigurazione, postu chì cuntrullanu i paràmetri operativi critichi di u dispositivu, cum'è a fonte di u clock di u sistema, l'attivazione PLL è WDT.

A prucedura per a prugrammazione di un dispositivu Registru di cunfigurazione hè simile à a prucedura per a prugrammazione di memoria di prugramma Flash, salvu chì solu l'istruzzioni TBLWTL sò richieste. Questu hè chì l'ottu bits superiori in ogni registru di cunfigurazione di u dispositivu ùn sò micca usati. Inoltre, u bit 23 di l'indirizzu di Scrittura di a Tavola deve esse stabilitu per accede à i registri di cunfigurazione. Consultate "Configurazione di u dispositivu" (DS70000618) in u "Manuale di Riferimentu di Famiglia dsPIC33/PIC24" è u capitulu "Caratteristiche Speciali" in a scheda di dati di u dispusitivu per una descrizzione completa di i registri di cunfigurazione di u dispositivu.

Nota

  1. Scrittura à i registri di cunfigurazione di u dispositivu ùn hè micca dispunibule in tutti i dispositi. Fate riferimentu à u capitulu "Caratteristiche Speciali" in a scheda di dati di u dispositivu specificu per determinà i modi chì sò dispunibuli secondu a definizione di bit NVMOP[3:0] specificu di u dispositivu.
  2. Mentre eseguisce RTSP nantu à i registri di cunfigurazione di u dispositivu, u dispusitivu deve esse operatu cù l'oscillatore FRC internu (senza PLL). Se u dispusitivu opera da una fonte di clock differente, un cambiamentu di clock à l'oscillatore FRC internu (NOSC[2: 0] = 000) deve esse realizatu prima di eseguisce l'operazione RTSP in i registri di cunfigurazione di u dispositivu.
  3. Se i bits di Selezzione di Modu di Oscillatore Primariu (POSCMD[1:0]) in u registru di Configurazione di Oscillatore (FOSC) sò stati riprogrammati à un novu valore, l'utilizatori deve assicurà chì i bits di Modu di Cambiamentu di l'Orologio (FCKSM[1:0]) u registru FOSC hà un valore programatu iniziale di '0', prima di fà sta operazione RTSP.

CONFIGURAZIONE REGISTER SCRIVI ALGORITHM
A prucedura generale hè a siguenti:

  1. Scrivite u novu valore di cunfigurazione à u latch Table Write cù una struzzione TBLWTL.
  2. Configurate NVMCON per una scrittura di registru di cunfigurazione (NVMCON = 0x4000).
  3. Scrivite l'indirizzu di u registru di cunfigurazione per esse programatu in i registri NVMADRU è NVMADR.
  4. Disattivate l'interruzioni, se attivate.
  5. Scrivite a sequenza chjave in u registru NVMKEY.
  6. Accuminciate a sequenza di scrittura mettendu u bit WR (NVMCON [15]).
  7. Riattivate l'interruzioni, se necessariu.

Example 4-10 mostra a sequenza di codice chì pò esse usata per mudificà un registru di cunfigurazione di u dispositivu.MICROCHIP-PIC24-Programmazione-Flash- (21)

REGISTRU MAPPA

Un riassuntu di i registri assuciati cù a Programmazione Flash hè furnitu in a Tabella 5-1.MICROCHIP-PIC24-Programmazione-Flash- (22)

NOTE DI APPLICAZIONE RELATIVA

Questa sezione elenca e note di l'applicazione chì sò ligati à sta sezione di u manuale. Queste note d'applicazione ùn ponu micca esse scritte specificamente per e famiglie di prudutti dsPIC33 / PIC24, ma i cuncetti sò pertinenti è ponu esse aduprati cù mudificazione è pussibuli limitazioni. L'applicazioni attuali relative à a Programmazione Flash sò:

Nota: Per piacè visitate u Microchip websitu (www.microchip.com) per Note di Applicazione supplementari è codice examples per e famiglie di dispositivi dsPIC33/PIC24.

STORIA REVISIONE

Revisione A (Aostu 2009)
Questa hè a versione iniziale liberata di stu documentu.

Revisione B (ferraghju 2011)
Questa rivisione include l'aghjurnamenti seguenti:

  • Examples:
    • Eliminatu Example 5-3 è Example 5-4
    • Actualizatu Example 4-1, Example 4-5 è Example 4-10
    • Ogni riferimentu à #WR hè statu aghjurnatu à #15 in Example 4-1, Example 4-5 è Example 4-8
    • Aghjurnatu i seguenti in Example 4-3:
  • Aghjurnatu u tìtulu "Programmazione di Parulle" à "Carica di Scrittura Latches per Programmazione di Fila"
  • Ogni riferenza à #ram_image hè stata aghjurnata à #0xFA
    • Aggiuntu Example 4-4
    • Aghjurnatu u titulu in Example 4-8
  • Note:
    • Aghjunghjite duie note in a Sezione 4.2 "Operazioni di prugrammazione Flash"
    • Aghjurnatu a nota in a Sezione 4.5.2 "Carica di Scrittura Latches"
    • Aghjunghjite trè note in a Sezione 4.6 "Scrittura à i Registri di cunfigurazione di u dispositivu"
    • Aggiunta a Nota 1 in a Tabella 5-1
  • I registri:
    • Aghjurnatu i valori di bit per NVMOP[3:0]: Operazione NVM Selezziunate i bit in u registru di u Controlu di Memoria Flash (NVMCON) (vede u Registru 3-1)
  • Sezzioni:
    • Eliminate e sezioni 5.2.1.4 "Modu di scrittura di parola" è 5.2.1.5 "Modu di scrittura di byte"
    • Sezione aghjurnata 3.0 "Registri di cuntrollu"
    • Aghjurnatu i seguenti in a Sezione 4.5.5 "Programmazione di Word":
  • Cambiatu u titulu di a sezione "Programmazione di una Parola di Memoria Flash" in "Programmazione di Parola"
  • Aghjurnatu u primu paràgrafu
  • Cambiatu i termini "una parola" à "un paru di parolle" in u sicondu paràgrafu
    • Aggiuntu un novu Passu 1 à a Sezione 4.6.1 "Configurazione Registru Scrittura Algoritmu"
  • Tavule:
    • Tabella aghjurnata 5-1
  • Uni pochi riferimenti à a memoria di u prugramma sò stati aghjurnati à a memoria di u prugramma Flash
  • Altre aghjurnamenti minori cum'è l'aghjurnamenti di lingua è furmatu sò stati incorporati in tuttu u documentu

Revisione C (ghjugnu 2011)
Questa rivisione include l'aghjurnamenti seguenti:

  • Examples:
    • Actualizatu Example 4-1
    • Actualizatu Example 4-8
  • Note:
    • Aggiunta una nota in a Sezione 4.1 "Operazione RTSP"
    • Aggiunta Nota 3 in a Sezione 4.2 "Operazioni di prugrammazione Flash"
    • Aggiunta Nota 3 in a Sezione 4.2.1 "Algoritmu di prugrammazione RTSP"
    • Aggiunta una nota in a Sezione 4.5.1 "Sguassà una Pagina di Flash"
    • Aggiunta a Nota 2 in a Sezione 4.5.2 "Carica di Scrittura Latches"
  • I registri:
    • Aghjurnatu a descrizzione di bit per i bits 15-0 in u registru di l'indirizzu di memoria non volatile (vede u Registru 3-3)
  • Sezzioni:
    • Sezione aghjurnata 4.1 "Operazione RTSP"
    • Sezione aghjurnata 4.5.5 "Programmazione di e parolle"
  • Altre aghjurnamenti minori cum'è l'aghjurnamenti di lingua è furmatu sò stati incorporati in tuttu u documentu

Revisione D (dicembre 2011)
Questa rivisione include l'aghjurnamenti seguenti:

  • Sezione aghjurnata 2.1.3 "Latch di scrittura di tavulinu"
  • Sezione aghjurnata 3.2 "Registru NVMKEY"
  • Aghjurnatu e note in NVMCON: Registru di cuntrollu di memoria flash (vede Registru 3-1)
  • L'aghjurnamenti estensivi sò stati fatti in tutta a Sezione 4.0 "Autoprogrammazione Run-Time (RTSP)"
  • Altre aghjurnamenti minori cum'è l'aghjurnamenti di lingua è furmatu sò stati incorporati in tuttu u documentu

Révision E (ottobre 2018)
Questa rivisione include l'aghjurnamenti seguenti:

  • Aggiuntu Example 2-2, Example 4-2, Example 4-6 è Example 4-9
  • Aggiunta Sezione 4.5.4 "Programmazione di fila Utilizendu u RAM Buffer"
  • Sezione aghjurnata 1.0 "Introduzione", Sezione 3.3 "Registri d'indirizzu NVM", Sezione 4.0 "Autoprogrammazione Run-Time (RTSP)" è Sezione 4.5.3 "Programmazione in fila unica Example "
  • Registru aghjurnatu 3-1
  • Actualizatu Example 4-7
  • Tabella aghjurnata 5-1

Revisione F (nuvembre 2021)
Aggiunta Sezione 3.2.1 "Disattivazione di l'interruzioni".
Actualizatu Example 3-1, Example 4-1, Example 4-2, Example 4-5, Example 4-6, Example 4-7, Example 4-8, Example 4-9 è Example 4-10.
Sezione aghjurnata 3.2 "Registru NVMKEY", Sezione 4.5.1 "Sguassazione di una pagina di Flash", Sezione 4.5.3 "Programmazione Single Row Example" e Section 4.6.1 "Configuration Register Write Algorithm".

Nota i seguenti dettagli di a funzione di prutezzione di codice nantu à i prudutti Microchip:

  • I prudutti Microchip rispondenu à e specificazioni cuntenute in a so specifica Scheda di Dati Microchip.
  • Microchip crede chì a so famiglia di prudutti hè sicura quandu s'utilice in a manera prevista, in e specificazioni operative, è in cundizioni normali.
  • Microchip valorizza è prutegge in modu aggressivu i so diritti di pruprietà intellettuale. I tentativi di violazione di e funzioni di prutezzione di u codice di u produttu Microchip sò strettamente pruibiti è ponu violà a Digital Millennium Copyright Act.
  • Nè Microchip nè un altru fabricatore di semiconductor pò guarantisci a sicurità di u so codice. A prutezzione di u codice ùn significa micca chì guarantimu chì u pruduttu hè "unbreakable". A prutezzione di u codice hè in constante evoluzione. Microchip hè impegnatu à migliurà continuamente e funzioni di prutezzione di codice di i nostri prudutti

Questa publicazione è l'infurmazioni quì ponu esse aduprate solu cù i prudutti Microchip, cumpresu per cuncepisce, pruvà è integrà i prudutti Microchip cù a vostra applicazione. L'usu di sta infurmazione in ogni altra manera viola questi termini. L'infurmazioni riguardanti l'applicazioni di u dispositivu sò furnite solu per a vostra comodità è ponu esse rimpiazzate da l'aghjurnamenti. Hè a vostra rispunsabilità per assicurà chì a vostra applicazione risponde à e vostre specificazioni. Cuntattate u vostru uffiziu di vendita Microchip locale per supportu supplementu o, uttene supportu supplementu à https://www.microchip.com/en-us/support/design-help/client-supportservices.

QUESTA INFORMAZIONE hè furnita da u microchip "AS IS". MICROCHIP NON FACE NI RIPRESENTAZIONI O GARANZIE DI ALCUNA TIPI SIA ESPRESSA O IMPLICITA, SCRITTA O ORALE, STATUTARIA O ALTRE, RELATIVA A L'INFORMAZIONI INCLUSI, MA NON LIMITATE A ALCUNA GARANZIA IMPLICITA DI NON VIOLAZIONE, GARANTIA DI COMMERCIALE, GARANTIA DI POSSIBILITÀ, GARANTIA DI PARTECIPAZIONE, GARANTIA PER UNA COMMERCIALE. ATED TO A SO CONDIZIONE, QUALITÀ, O PRESTAZIONI. IN NESSUN CASU MICROCHIP SERA RESPONSABILE PER QUALSIASI PERDITA INDIRETTA, SPECIALE, PUNITIVE, INCIDENTALE, O CONSEGUENTE, DANNI, COSTO, O SPESE DI QUALUNQUE TIPI RELATATI À L'INFORMAZIONI O U U U U U SO, IN QUANTO CAUSATE, ANCHE QUANTO ESE ADVERTIMENTO. A POSSIBILITÀ O I DANNI SONT PREVISIBLES. À LA MESSA ALTERNATA PERMISSATA DA LEGGE, A RESPONSABILITÀ TOTALE DI MICROCHIP PER TUTTE LE RECLAMAZIONI IN QUALSIA MANIERA RELATATA À L'INFORMAZIONI O U U SO USU NON SUPERARÀ L'IMPORTU DI TARIFFE, SE CUALQUIE, CHE AVRAI PAGATA DIRETTAMENTE À MICROCHIP PER L'INFORMAZIONI.

L'usu di i dispositi Microchip in l'applicazioni di supportu di vita è / o di sicurezza hè interamente à u risicu di u cumpratore, è u cumpratore accetta di difende, indemnizà è mantene innocu Microchip da qualsiasi danni, rivendicazioni, vestiti, o spese risultanti da tali usu. Nisuna licenza hè trasmessa, implicitamente o altrimenti, sottu à alcunu diritti di pruprietà intellettuale di Microchip, salvu s'ellu ùn hè micca dichjaratu altrimenti.

Per infurmazione nantu à i Sistemi di Gestione di Qualità di Microchip, visitate www.microchip.com/quality.

Marchi

U nome è u logu di Microchip, u logu di Microchip, Adaptec, AnyRate, AVR, logo AVR, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheckSty, LinkluMDs, maX, maXTouch, MediaLB, megaAVR, Microsemi, Logo Microsemi, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash , Symmetricom, SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron è XMEGA sò marchi registrati di Microchip Technology Incorporated in i Stati Uniti è in altri paesi. AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed ​​Control, HyperLight Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, Quiet- Wire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath è ZL sò marchi registrati di Microchip Technology Incorporated in i Stati Uniti.

Suppressione di chjave adiacente, AKS, Analogicu per l'Età Digitale, Qualchese Capacitor, AnyIn, AnyOut, Switching Augmented, BlueSky, BodyCom, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic DAM Matching , ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, Programmazione Seriale In-Circuit, ICSP, INICnet, Parallelazione Intelligente, Connettività Inter-Chip, JitterBlocker, Knob-on-Display, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM Express, NVMe, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REALICE , Ripple Blocker, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect è ZENA sò marchi di Microchip Technology Incorporated in i Stati Uniti è in altri paesi.

SQTP hè una marca di serviziu di Microchip Technology Incorporated in i Stati Uniti
U logu Adaptec, Frequency on Demand, Silicon Storage Technology, Symmcom è Trusted Time sò marchi registrati di Microchip Technology Inc. in altri paesi.
GestIC hè una marca registrata di Microchip Technology Germany II GmbH & Co. KG, una filiale di Microchip Technology Inc., in altri paesi.
Tutti l'altri marchi citati quì sò pruprietà di e so cumpagnie rispettive.
© 2009-2021, Microchip Technology Incorporated è e so filiali.
Tutti i diritti riservati.
ISBN: 978-1-5224-9314-3

Vendite è serviziu in u mondu sanu

AMERICA

ASIA / PACIFIC

  • Australia - Sydney
    Tel: 61-2-9868-6733
  • Cina - Pechino
    Tel: 86-10-8569-7000
  • Cina - Chengdu
    Tel: 86-28-8665-5511
  • Cina - Chongqing
    Tel: 86-23-8980-9588
  • Cina - Dongguan
    Tel: 86-769-8702-9880
  • Cina - Guangzhou
    Tel: 86-20-8755-8029
  • Cina - Hangzhou
    Tel: 86-571-8792-8115
  • Cina - Hong Kong SAR
    Tel: 852-2943-5100
  • Cina - Nanjing
    Tel: 86-25-8473-2460
  • Cina - Qingdao
    Tel: 86-532-8502-7355
  • Cina - Shanghai
    Tel: 86-21-3326-8000
  • Cina - Shenyang
    Tel: 86-24-2334-2829
  • Cina - Shenzhen
    Tel: 86-755-8864-2200
  • Cina - Suzhou
    Tel: 86-186-6233-1526
  • Cina - Wuhan
    Tel: 86-27-5980-5300
  • Cina - Xian
    Tel: 86-29-8833-7252
  • Cina - Xiamen
    Tel: 86-592-2388138
  • Cina - Zhuhai
    Tel: 86-756-3210040
  • India - Bangalore
    Tel: 91-80-3090-4444
  • India - New Delhi
    Tel: 91-11-4160-8631
  • India - Pune
    Tel: 91-20-4121-0141
  • Giappone - Osaka
    Tel: 81-6-6152-7160
  • Giappone - Tokyo
    Tel: 81-3-6880- 3770
  • Corea - Daegu
    Tel: 82-53-744-4301
  • Corea - Seoul
    Tel: 82-2-554-7200
  • Malasia - Kuala Lumpur
    Tel: 60-3-7651-7906
  • Malasia - Penang
    Tel: 60-4-227-8870
  • Filippine - Manila
    Tel: 63-2-634-9065
  • Singapore
    Tel: 65-6334-8870
  • Taiwan - Hsin Chu
    Tel: 886-3-577-8366
  • Taiwan - Kaohsiung
    Tel: 886-7-213-7830
  • Taiwan - Taipei
    Tel: 886-2-2508-8600
  • Tailanda - Bangkok
    Tel: 66-2-694-1351
  • Vietnam - Ho Chi Minh
    Tel: 84-28-5448-2100

EUROPA

  • Austria - Wels
    Tel: 43-7242-2244-39
    Fax: 43-7242-2244-393
  • Danimarca - Copenhague
    Tel: 45-4485-5910
    Fax: 45-4485-2829
  • Finlandia - Espoo
    Tel: 358-9-4520-820
  • Francia - Parigi
    Tel: 33-1-69-53-63-20
    Fax: 33-1-69-30-90-79
  • Germania - Garching
    Tel: 49-8931-9700
  • Germania - Haan
    Tel: 49-2129-3766400
  • Germania - Heilbronn
    Tel: 49-7131-72400
  • Germania - Karlsruhe
    Tel: 49-721-625370
  • Germania - Munich
    Tel: 49-89-627-144-0
    Fax: 49-89-627-144-44
  • Germania - Rosenheim
    Tel: 49-8031-354-560
  • Italia - Milan
    Tel: 39-0331-742611
    Fax: 39-0331-466781
  • Italia - Padova
    Tel: 39-049-7625286
  • Paesi Bassi - Drunen
    Tel: 31-416-690399
    Fax: 31-416-690340
  • Norvegia - Trondheim
    Tel: 47-7288-4388
  • Pulonia - Varsavia
    Tel: 48-22-3325737
  • Romania - Bucarest
    Tel: 40-21-407-87-50
  • Spagna - Madrid
    Tel: 34-91-708-08-90
    Fax: 34-91-708-08-91
  • Svezia - Gothenberg
    Tel: 46-31-704-60-40
  • Svezia - Stoccolma
    Tel: 46-8-5090-4654
  • UK - Wokingham
    Tel: 44-118-921-5800
    Fax: 44-118-921-5820

Nota:

Questa sezione manuale di riferimentu di famiglia hè destinata à serve cum'è un cumplementu à e schede di dati di u dispositivu. Sicondu a variante di u dispositivu, sta sezione manuale pò micca applicà à tutti i dispositi dsPIC33/PIC24. Per piacè cunsultate a nota à l'iniziu di u capitulu "Memoria di u prugramma Flash" in a scheda di dati di u dispositivu attuale per verificà s'ellu stu documentu supporta u dispositivu chì site aduprate.
I schede di dati di u dispositivu è e sezioni di manuali di riferimentu di famiglia sò dispunibuli per scaricà da u Microchip Worldwide Websitu à: http://www.microchip.com.

Documenti / Risorse

Programmazione Flash MICROCHIP PIC24 [pdfGuida di l'utente
PIC24 Programmazione Flash, PIC24, Programmazione Flash, Programmazione
Programmazione Flash MICROCHIP PIC24 [pdfGuida di l'utente
PIC24 Programmazione Flash, PIC24, Programmazione Flash

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *