| 전자부품 데이터시트 검색엔진 |
|
PIC24F16KA102 데이터시트(PDF) 55 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
PIC24F16KA102 데이터시트(HTML) 55 Page - Microchip Technology |
|
55 / 278 page ![]() 2008-2011 Microchip Technology Inc. DS39927C-page 55 PIC24F16KA102 FAMILY 6.4.1.1 Data EEPROM Bulk Erase To erase the entire data EEPROM (bulk erase), the address registers do not need to be configured because this operation affects the entire data EEPROM. The following sequence helps in performing bulk erase: 1. Configure NVMCON to Bulk Erase mode. 2. Clear NVMIF status bit and enable NVM interrupt (optional). 3. Write the key sequence to NVMKEY. 4. Set the WR bit to begin erase cycle. 5. Either poll the WR bit or wait for the NVM interrupt (NVMIF is set). A typical bulk erase sequence is provided in Example 6-3. 6.4.2 SINGLE-WORD WRITE To write a single word in the data EEPROM, the following sequence must be followed: 1. Erase one data EEPROM word (as mentioned in Section 6.4.1 “Erase Data EEPROM” ) if the PGMONLY bit (NVMCON<12>) is set to ‘1’. 2. Write the data word into the data EEPROM latch. 3. Program the data word into the EEPROM: - Configure the NVMCON register to program one EEPROM word (NVMCON<5:0> = 0001xx). - Clear NVMIF status bit and enable NVM interrupt (optional). - Write the key sequence to NVMKEY. - Set the WR bit to begin erase cycle. - Either poll the WR bit or wait for the NVM interrupt (NVMIF is set). - To get cleared, wait until NVMIF is set. A typical single-word write sequence is provided in Example 6-4. EXAMPLE 6-3: DATA EEPROM BULK ERASE EXAMPLE 6-4: SINGLE-WORD WRITE TO DATA EEPROM // Set up NVMCON to bulk erase the data EEPROM NVMCON = 0x4050; // Disable Interrupts For 5 Instructions asm volatile ("disi #5"); // Issue Unlock Sequence and Start Erase Cycle __builtin_write_NVM(); int __attribute__ ((space(eedata))) eeData = 0x1234; // Variable located in EEPROM,declared as a global variable. int newData; // New data to write to EEPROM unsigned int offset; // Set up NVMCON to erase one word of data EEPROM NVMCON = 0x4004; // Set up a pointer to the EEPROM location to be erased TBLPAG = __builtin_tblpage(&eeData); // Initialize EE Data page pointer offset = __builtin_tbloffset(&eeData); // Initizlize lower word of address __builtin_tblwtl(offset, newData); // Write EEPROM data to write latch asm volatile ("disi #5"); // Disable Interrupts For 5 Instructions __builtin_write_NVM(); // Issue Unlock Sequence & Start Write Cycle |
|
링크 URL |
| ALLDATASHEET 가 귀하에 도움이 되셨나요? [ DONATE ] |
Alldatasheet는? | 광고문의 | 운영자에게 연락하기 | 개인정보취급방침 | 링크 투 데이터시트 | 링크교환 | 제조사별 검색 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |