MICROCHIP-LOGO

ʻO MICROCHIP PIC24 Flash Programming

MICROCHIP-PIC24-Flash-Programming-PRO

ʻIke Huahana

Ka Papahana Flash
Loaʻa i nā ʻohana o nā polokalamu dsPIC33/PIC24 kahi hoʻomanaʻo polokalamu Flash programmable no ka hoʻokō ʻana i ke code mea hoʻohana. Aia a ʻekolu mau ala e hoʻolālā ai i kēia hoʻomanaʻo:

  • Papa kuhikuhi hana
  • Ka Papahana Serial In-Circuit Serial Programming (ICSP)
  • Ka Papahana Hoʻohana (IAP)

Hāʻawi nā ʻōlelo kuhikuhi papa i ke ʻano o ka hoʻoili ʻana i ka ʻikepili ma waena o ka lumi hoʻomanaʻo polokalamu Flash a me ka lumi hoʻomanaʻo ʻikepili o nā mea hana dsPIC33/PIC24. Hoʻohana ʻia ka ʻōlelo aʻoaʻo TBLRDL e heluhelu mai nā bits[15:0] o ka lumi hoʻomanaʻo papahana. Hoʻohana ʻia ka ʻōlelo aʻoaʻo TBLWTL e kākau i nā bits[15:0] o ka lumi hoʻomanaʻo polokalamu Flash. Hiki iā TBLRDL a me TBLWTL ke komo i ka hoʻomanaʻo polokalamu Flash ma ke ʻano huaʻōlelo a i ʻole ke ʻano Byte.

Ma waho aʻe o ka helu wahi hoʻomanaʻo o ka polokalamu Flash, ua kuhikuhi pū ka ʻōlelo aʻoaʻo papa i kahi W register (a i ʻole W Register Pointer i kahi wahi hoʻomanaʻo), ʻo ia ke kumu o ka ʻikepili hoʻomanaʻo polokalamu Flash e kākau ʻia, a i ʻole kahi e hele ai no kahi polokalamu Flash. heluhelu hoomanao.

Hōʻike kēia ʻāpana i ka ʻenehana no ka hoʻonohonoho ʻana i ka hoʻomanaʻo polokalamu Flash. Loaʻa i nā ʻohana dsPIC33/PIC24 o nā polokalamu he hoʻomanaʻo polokalamu Flash programmable no ka hoʻokō ʻana i ka code mea hoʻohana. Aia a ʻekolu mau ala e hoʻolālā ai i kēia hoʻomanaʻo:

  • Hoʻopolokalamu ponoʻī manawa holo (RTSP)
  • In-Circuit Serial Programming™ (ICSP™)
  • Hoʻonui ʻia i loko o ka Circuit Serial Programming (EICSP)

Hana ʻia ʻo RTSP e ka polokalamu noi i ka wā o ka hoʻokō ʻana, ʻoiai ʻo ICSP a me EICSP e hana ʻia mai kahi polokalamu waho waho e hoʻohana ana i kahi pilina data serial i ka hāmeʻa. ʻAe ʻo ICSP a me EICSP i ka manawa hoʻonohonoho wikiwiki loa ma mua o RTSP. Hōʻike ʻia nā ʻenehana RTSP ma ka Pauku 4.0 "Run-Time Self-Programming (RTSP)". Ua wehewehe ʻia nā protocols ICSP a me EICSP i nā palapala Hōʻike Hōʻike Programming no kēlā me kēia mea, hiki ke hoʻoiho ʻia mai ka Microchip. webkahua pūnaewelehttp://www.microchip.com). I ka hoʻonohonoho ʻana i ka ʻōlelo C, loaʻa kekahi mau hana i kūkulu ʻia e hoʻomaʻamaʻa i ka polokalamu Flash. E ʻike i ka “MPLAB® XC16 C Compiler User's Guide” (DS50002071) no nā kikoʻī e pili ana i nā hana i kūkulu ʻia.

Nā ʻōlelo hoʻohana huahana

No ka hoʻolālā ʻana i ka hoʻomanaʻo polokalamu Flash, e hahai i kēia mau ʻanuʻu:

  1. E nānā i ka pepa ʻikepili no ka nānā ʻana i ke kākoʻo ʻana o ka ʻaoʻao manual reference i ka hāmeʻa āu e hoʻohana nei.
  2. Hoʻoiho i ka pepa ʻikepili mea hana a me nā ʻāpana puke kuhikuhi ʻohana mai ka Microchip Worldwide Webkahua ma: http://www.microchip.com.
  3. E koho i kekahi o nā ʻano ʻekolu e hoʻolālā i ka hoʻomanaʻo (Table Instruction Operation, In-Circuit Serial Programming (ICSP), In-Application Programming (IAP)).
  4. Inā hoʻohana ʻoe i ka Papa kuhikuhi Hana Hana, e hoʻohana i ke aʻo TBLRDL e heluhelu mai nā bits[15:0] o ka lumi hoʻomanaʻo papahana a me ke aʻo TBLWTL e kākau i nā bits[15:0] o ka lumi hoʻomanaʻo polokalamu Flash.
  5. E hōʻoiaʻiʻo e kuhikuhi i kahi papa inoa W (a i ʻole W Register Pointer i kahi wahi hoʻomanaʻo) ma ke ʻano he kumu o ka ʻikepili hoʻomanaʻo polokalamu Flash e kākau ʻia, a i ʻole kahi e hele ai no kahi heluhelu hoʻomanaʻo polokalamu Flash.

No ka ʻike hou aku a me nā kikoʻī e pili ana i ka hoʻonohonoho ʻana i ka hoʻomanaʻo polokalamu Flash, e nānā i ka dsPIC33/PIC24 Family Reference Manual.

HANA HOOLAHA PAPA

Hāʻawi nā ʻōlelo kuhikuhi papa i ke ʻano o ka hoʻoili ʻana i ka ʻikepili ma waena o ka lumi hoʻomanaʻo polokalamu Flash a me ka wahi hoʻomanaʻo ʻikepili o nā mea hana dsPIC33/PIC24. Hāʻawi kēia ʻāpana i kahi hōʻuluʻulu o nā ʻōlelo aʻoaʻo papa i hoʻohana ʻia i ka hoʻonohonoho ʻana o ka hoʻomanaʻo polokalamu Flash. ʻEhā mau ʻōlelo kuhikuhi papaʻaina:

  • TBLRDL: Heluhelu haahaa ka papa
  • TBLRDH: Heluhelu Kiekie
  • TBLWTL: Papa Kakau Haahaa
  • TBLWTH: Papa Kākau Kiʻekiʻe

Hoʻohana ʻia ka ʻōlelo aʻoaʻo TBLRDL e heluhelu mai nā bits[15:0] o ka lumi hoʻomanaʻo papahana. Hoʻohana ʻia ka ʻōlelo aʻoaʻo TBLWTL e kākau i nā bits[15:0] o ka lumi hoʻomanaʻo polokalamu Flash. Hiki iā TBLRDL a me TBLWTL ke komo i ka hoʻomanaʻo polokalamu Flash ma ke ʻano huaʻōlelo a i ʻole ke ʻano Byte.

Hoʻohana ʻia nā ʻōlelo aʻoaʻo TBLRDH a me TBLWTH e heluhelu a kākau paha i nā bit[23:16] o ka lumi hoʻomanaʻo papahana. Hiki iā TBLRDH a me TBLWTH ke komo i ka hoʻomanaʻo polokalamu Flash ma ke ʻano Word a i ʻole Byte. No ka mea he 24 bits ka laula o ka hoʻomanaʻo polokalamu Flash, hiki i nā ʻōlelo aʻoaʻo TBLRDH a me TBLWTH ke hoʻoponopono i kahi byte kiʻekiʻe o ka hoʻomanaʻo polokalamu Flash i loaʻa ʻole. Kapa ʻia kēia byte ka "phantom byte". ʻO kēlā me kēia heluhelu o ka phantom byte e hoʻihoʻi 0x00. ʻAʻohe hopena o kahi kākau i ka phantom byte. Hiki ke manaʻo ʻia ka hoʻomanaʻo polokalamu Flash 24-bit ma ke ʻano he ʻelua mau ʻaoʻao 16-bit space, me kēlā me kēia wahi e kaʻana like ana i ka laulā helu wahi. No laila, komo nā ʻōlelo aʻoaʻo TBLRDL a me TBLWTL i ka wahi hoʻomanaʻo papahana "haʻahaʻa" (PM[15:0]). Hiki i nā ʻōlelo kuhikuhi TBLRDH a me TBLWTH ke komo i ka wahi hoʻomanaʻo papahana "kiʻekiʻe" (PM[31:16]). ʻO nā mea heluhelu a kākau paha iā PM[31:24] e komo i ka phantom (unimplemented) byte. Ke hoʻohana ʻia kekahi o nā ʻōlelo kuhikuhi papa ma ke ʻano Byte, e hoʻohana ʻia ka bit liʻiliʻi loa (LSb) o ka helu papa ma ke ʻano he bit koho byte. Hoʻoholo ka LSb i ka byte ma ka lumi hoʻomanaʻo papahana kiʻekiʻe a haʻahaʻa paha i loaʻa.

Hōʻike ka Figure 2-1 i ke ʻano o ka hoʻomanaʻo ʻana o ka polokalamu Flash me ka hoʻohana ʻana i nā kuhikuhi papa. Hoʻokumu ʻia kahi helu hoʻomanaʻo polokalamu 24-bit me ka hoʻohana ʻana i nā bits[7:0] o ka papa inoa TBLPAG a me ka Address Effective Address (EA) mai kahi papa inoa W i kuhikuhi ʻia ma ka papa kuhikuhi. Hōʻike ʻia ka 24-bit Program Counter (PC) ma ke Kiʻi 2-1 no ka ʻike. Hoʻohana ʻia nā ʻāpana 23 kiʻekiʻe o ka EA e koho i ka wahi hoʻomanaʻo polokalamu Flash.

No nā kuhikuhi papa kuhikuhi Byte mode, hoʻohana ʻia ka LSb o ka W register EA no ke koho ʻana i ka byte o ka huaʻōlelo hoʻomanaʻo polokalamu Flash 16-bit i ʻōlelo ʻia; '1' koho i nā bits[15:8] a '0' koho i nā bits[7:0]. ʻAʻole mālama ʻia ka LSb o ka W register EA no ke aʻo papa ma ke ʻano Word. Ma waho aʻe o ka helu wahi hoʻomanaʻo o ka polokalamu Flash, ua kuhikuhi pū ka ʻōlelo aʻoaʻo papa i kahi W register (a i ʻole W Register Pointer i kahi wahi hoʻomanaʻo), ʻo ia ke kumu o ka ʻikepili hoʻomanaʻo polokalamu Flash e kākau ʻia, a i ʻole kahi e hele ai no kahi polokalamu Flash. heluhelu hoomanao. No ka hana kākau papa ma ke ʻano Byte, ʻaʻole mālama ʻia nā bits[15:8] o ke kumu.MICROCHIP-PIC24-Hoʻolālā-Flash- (1)

E hoʻohana ana i nā ʻōlelo aʻoaʻo heluhelu papa
Pono nā papa ʻelua i ka heluhelu ʻana:

  1. Hoʻonohonoho ʻia ka Pointer Pointer me ka hoʻohana ʻana i ka papa inoa TBLPAG a me kekahi o nā papa inoa W.
  2. Hiki ke heluhelu ʻia nā mea hoʻomanaʻo o ka polokalamu Flash ma ka wahi helu wahi.

 

  1. HELUHELU HUAOLELO
    ʻO ke code i hōʻike ʻia ma Example 2-1 a me ExampHōʻike ka le 2-2 pehea e heluhelu ai i kahi huaʻōlelo o ka hoʻomanaʻo polokalamu Flash me ka hoʻohana ʻana i nā kuhikuhi papa ma ka mode Word.MICROCHIP-PIC24-Hoʻolālā-Flash- (2) MICROCHIP-PIC24-Hoʻolālā-Flash- (3)
  2. HELUHELU BYTE MODE
    ʻO ke code i hōʻike ʻia ma ExampHōʻike ka 2-3 i ka mea hoʻohana ma hope o ka hoʻonui ʻana ma ka heluhelu ʻana i ka byte haʻahaʻa, kahi e hoʻonui ai ka helu o ka helu Hana i hoʻokahi. Hoʻonoho kēia iā EA[0] i kahi '1' no ke komo ʻana i ka byte waena ma ke kolu o ke aʻo kākau. ʻO ka hoʻonui hope hope e hoʻihoʻi iā W0 i kahi helu kaulike, e kuhikuhi ana i kahi wahi hoʻomanaʻo polokalamu Flash e hiki mai ana.MICROCHIP-PIC24-Hoʻolālā-Flash- (4)
  3. PAPA KAKAU LIKA
    ʻAʻole kākau pololei nā ʻōlelo kuhikuhi papaʻaina i ka hoʻomanaʻo papahana nonvolatile. Akā, kākau ka papa kuhikuhi i nā ʻōlelo aʻoaʻo e hoʻouka i nā latches kākau e mālama i ka ʻikepili kākau. Pono e hoʻouka ʻia nā papa inoa NVM Address me ka helu mua kahi e kākau ʻia ai ka ʻikepili i hoʻopaʻa ʻia. Ke hoʻouka ʻia nā latches kākau a pau, hoʻomaka ka hana hoʻonohonoho hoʻomanaʻo maoli ma ka hoʻokō ʻana i kahi kaʻina kuhikuhi kūikawā. I ka wā o ka hoʻolālā ʻana, hoʻoili ka ʻenehana i ka ʻikepili i nā latches kākau i ka hoʻomanaʻo Flash. Hoʻomaka mau nā laka kākau ma ka helu 0xFA0000, a hoʻonui ʻia ma 0xFA0002 no ka hoʻonohonoho ʻana i nā huaʻōlelo, a i ʻole ma o 0xFA00FE no nā hāmeʻa i loaʻa ka papahana lālani.

Nānā: He ʻokoʻa ka helu o nā latches kākau ma ka mea hana. E nānā i ka mokuna "Flash Program Memory" o ka pepa ʻikepili ponoʻī no ka helu o nā laka kākau i loaʻa.

PAPA KAKAU

Hoʻohana ʻia kekahi mau papa inoa hana kūikawā (SFRs) e hoʻolālā i ka hoʻomaʻemaʻe ʻana i ka hoʻomanaʻo polokalamu Flash a kākau i nā hana: NVMCON, NVMKEY, a me nā papa inoa NVM Address, NVMADR a me NVMADRU.

Kakau inoa NVMCON
ʻO ka papa inoa NVMCON ka papa inoa mana mua no ka Flash a me nā hana papahana / holoi. Ke koho nei kēia papa inoa inā e hana ʻia kahi hana holoi a i ʻole ka papahana a hiki ke hoʻomaka i ka papahana a holoi ʻia paha. Hōʻike ʻia ka papa inoa NVMCON ma ka Register 3-1. Hoʻonohonoho ka byte haʻahaʻa o NVMCON i ke ʻano o ka hana NVM e hana ʻia.

NVMKEY kakau inoa
ʻO ka papa inoa NVMKEY (e ʻike i ka Register 3-4) he palapala kākau wale nō i hoʻohana ʻia no ka pale ʻana i ka kākau ʻana o NVMCON hiki ke hōʻino i ka hoʻomanaʻo Flash. Ke wehe ʻia, ʻae ʻia ke kākau ʻana iā NVMCON no hoʻokahi pōʻaiapili aʻo i hiki ke hoʻonohonoho ʻia ka bit WR e kāhea i kahi holoi a i ʻole ka papahana maʻamau. Hāʻawi ʻia i nā koi manawa, pono ke hoʻopau ʻana i nā interrupts.
Hana i kēia mau ʻanuʻu no ka hoʻomaka ʻana i kahi kaʻina holoi a i ʻole ka hoʻonohonoho papahana:

  1. Hoʻopau i nā mea hoʻopau.
  2. Kākau 0x55 iā NVMKEY.
  3. Kākau iā 0xAA iā NVMKEY.
  4. E hoʻomaka i ka pōʻai kākau papahana ma ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]).
  5. E hoʻokō i ʻelua mau kuhikuhi NOP.
  6. Hoʻihoʻi i nā mea hoʻopau.

MICROCHIP-PIC24-Hoʻolālā-Flash- (5)

KA HOPE ANA
Pono ka hoʻopau ʻana i nā interrupts no nā hana Flash āpau e hōʻoia i ka hopena kūleʻa. Inā loaʻa kahi hoʻopau i ka wā o ka wehe ʻana o ka NVMKEY, hiki iā ia ke pale i ke kākau ʻana i ka bit WR. Pono e hoʻokō ʻia ke kaʻina wehe NVMKEY me ka ʻole o ke keakea ʻana, e like me ka mea i kūkākūkā ʻia ma ka Pauku 3.2 "NVMKEY Register".

Hiki ke hoʻopau ʻia nā interrupts ma kekahi o nā ʻano ʻelua, ma ke kāpae ʻana i ka Global Interrupt Enable (GIE bit), a i ʻole ma ka hoʻohana ʻana i ke aʻo DSI. ʻAʻole ʻōlelo ʻia ka ʻōlelo aʻoaʻo DSI no ka mea e hoʻopau wale ia i nā keakea o ka Priority 6 a i ʻole; no laila, pono ke hoʻohana ʻia ke ʻano hana hoʻonā honua.

Kākau ʻo CPU iā GIE e lawe i ʻelua mau kaʻina aʻo ma mua o ka hoʻopili ʻana i ke kahe code. Pono ʻelua ʻōlelo kuhikuhi NOP ma hope, a i ʻole hiki ke hoʻololi ʻia me nā ʻōlelo aʻoaʻo hana pono ʻē aʻe, e like me ka hoʻouka ʻana iā NVMKEY; pili kēia i nā hana hoʻonohonoho a maopopo. Pono e mālama i ka wā e ho'ā hou ai i nā interrupts no laila ʻaʻole ʻae ka hana maʻamau i kuhikuhi ʻia e NVM i ka wā i hoʻopau ai kahi hana i kapa ʻia ma mua no nā kumu ʻē aʻe. No ka hoʻoponopono ʻana i kēia ma ka Assembly, hiki ke hoʻohana ʻia kahi pahu pahu a me ka pop e mālama i ke kūlana o ka bit GIE. Ma C, hiki ke hoʻohana ʻia kahi hoʻololi i ka RAM no ka mālama ʻana iā INTCON2 ma mua o ka holoi ʻana iā GIE. E hoʻohana i kēia kaʻina hana no ka hoʻopau ʻana i nā keʻakeʻa:

  1. E kaomi i ka INTCON2 ma ka waihona.
  2. Holoi i ka bit GIE.
  3. ʻElua NOP a kākau paha iā NVMKEY.
  4. E hoʻomaka i ka pōʻaiapili polokalamu ma ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]).
  5. Hoʻihoʻi hou i ka mokuʻāina GIE e POP o INTCON2.MICROCHIP-PIC24-Hoʻolālā-Flash- (6)

NVM Helu kakau inoa
ʻO nā papa inoa NVM ʻelua, NVMADRU a me NVMADR, ke hoʻohui ʻia, e hana i ka 24-bit EA o ka lālani i koho ʻia a i ʻole ka huaʻōlelo no nā hana hoʻolālā. Hoʻohana ʻia ka papa inoa NVMADRU no ka hoʻopaʻa ʻana i nā ʻāpana ʻewalu o luna o ka EA, a hoʻohana ʻia ka papa inoa NVMADR e paʻa i nā bits haʻahaʻa 16 o ka EA. Hiki i kekahi mau mea ke kuhikuhi i kēia mau papa inoa like me NVMADRL a me NVMADRH. Pono nā papa inoa NVM Address e kuhikuhi mau i ka palena ʻōlelo aʻoaʻo pālua i ka wā e hana ana i ka hana hoʻonohonoho ʻōlelo aʻoaʻo pālua, ka palena o ka lālani i ka wā e hana ana i kahi hana hoʻolālā lālani a i ʻole ka palena ʻaoʻao ke hana i ka hana holoi ʻaoʻao.

Kakau inoa 3-1: NVMCON: Hoʻopaʻa inoa hoʻomanaʻo FlashMICROCHIP-PIC24-Hoʻolālā-Flash- (7) MICROCHIP-PIC24-Hoʻolālā-Flash- (8)

Nānā

  1. Hiki ke hoʻonohonoho hou ʻia kēia bit (ʻo ia hoʻi, hoʻomaʻemaʻe ʻia) ma kahi Power-on Reset (POR).
  2. Ke haʻalele nei i ke ʻano Idle, aia kahi lohi o ka mana-up (TVREG) ma mua o ka hoʻohana ʻana o ka hoʻomanaʻo polokalamu Flash. E nānā i ka mokuna “Electrical Characteristics” o ka pepa ʻikepili o ka mīkini no ka ʻike hou aku.
  3. ʻAʻole hoʻokō ʻia nā hui ʻē aʻe o NVMOP[3:0].
  4. ʻAʻole loaʻa kēia hana ma nā mea hana a pau. E nānā i ka mokuna "Flash Program Memory" ma ka pepa ʻikepili ponoʻī no nā hana i loaʻa.
  5. ʻO ke komo ʻana i kahi ʻano mālama mana ma hope o ka hoʻokō ʻana i kahi ʻōlelo aʻo PWRSAV e pili ana i ka pau ʻana o nā hana NVM e kali nei.
  6. Loaʻa kēia bit ma nā polokalamu e kākoʻo ana i ka hoʻonohonoho ʻana i ka lālani buffered RAM. E nānā i ka pepa ʻikepili kikoʻī no ka loaʻa.

MICROCHIP-PIC24-Hoʻolālā-Flash- (9)

Nānā

  1. Hiki ke hoʻonohonoho hou ʻia kēia bit (ʻo ia hoʻi, hoʻomaʻemaʻe ʻia) ma kahi Power-on Reset (POR).
  2. Ke haʻalele nei i ke ʻano Idle, aia kahi lohi o ka mana-up (TVREG) ma mua o ka hoʻohana ʻana o ka hoʻomanaʻo polokalamu Flash. E nānā i ka mokuna “Electrical Characteristics” o ka pepa ʻikepili o ka mīkini no ka ʻike hou aku.
  3. ʻAʻole hoʻokō ʻia nā hui ʻē aʻe o NVMOP[3:0].
  4. ʻAʻole loaʻa kēia hana ma nā mea hana a pau. E nānā i ka mokuna "Flash Program Memory" ma ka pepa ʻikepili ponoʻī no nā hana i loaʻa.
  5. ʻO ke komo ʻana i kahi ʻano mālama mana ma hope o ka hoʻokō ʻana i kahi ʻōlelo aʻo PWRSAV e pili ana i ka pau ʻana o nā hana NVM e kali nei.
  6. Loaʻa kēia bit ma nā polokalamu e kākoʻo ana i ka hoʻonohonoho ʻana i ka lālani buffered RAM. E nānā i ka pepa ʻikepili kikoʻī no ka loaʻa.

Kakau 3-2: NVMADRU: Nonvolatile Memory Upper Address Register

MICROCHIP-PIC24-Hoʻolālā-Flash- (10)

Kakau 3-3: NVMADR: Nonvolatile Memory Address Register

MICROCHIP-PIC24-Hoʻolālā-Flash- (11)

Kakau 3-4: NVMKEY: Nonvolatile Memory Key Register

MICROCHIP-PIC24-Hoʻolālā-Flash- (12)

KA HOLO ANA I KA PONO KOLOHE (RTSP)

ʻAe ʻo RTSP i ka mea hoʻohana e hoʻololi i nā mea hoʻomanaʻo polokalamu Flash. Hoʻokō ʻia ka RTSP me ka hoʻohana ʻana i nā kuhikuhi TBLRD (Table Read) a me TBLWT (Table Write), ka papa inoa TBLPAG, a me nā papa inoa NVM Control. Me RTSP, hiki i ka mea hoʻohana ke holoi i ka ʻaoʻao hoʻokahi o ka hoʻomanaʻo Flash a me ka papahana ʻelua mau huaʻōlelo aʻo a i ʻole 128 mau huaʻōlelo aʻo ma kekahi mau polokalamu.

Hana RTSP
Hoʻonohonoho ʻia ka papa hoʻomanaʻo papahana dsPIC33/PIC24 Flash i nā ʻaoʻao holoi i hiki ke loaʻa i nā ʻōlelo kuhikuhi 1024. Loaʻa ka koho hoʻolālā huaʻōlelo pālua i nā mea hana a pau ma nā ʻohana dsPIC33/PIC24. Eia kekahi, loaʻa i kekahi mau polokalamu ka mana hoʻonohonoho laina, e hiki ai ke hoʻonohonoho i nā huaʻōlelo aʻo a hiki i 128 i ka manawa. Hoʻohana mau ʻia nā hana papahana a holoi ʻia ma kahi huaʻōlelo papahana pālua, lālani a i ʻole nā ​​palena ʻaoʻao. E nānā i ka mokuna "Flash Program Memory" o ka pepa ʻikepili mea pono no ka loaʻa a me ka nui o kahi lālani polokalamu, a me ka nui o ka ʻaoʻao no ka holoi ʻana. Hoʻohana ka hoʻomanaʻo polokalamu Flash i nā pale paʻa, i kapa ʻia nā latches kākau, hiki ke loaʻa a hiki i 128 mau ʻōlelo kuhikuhi o ka ʻikepili hoʻonohonoho ma muli o ka hāmeʻa. Ma mua o ka hana hoʻolālā maoli, pono e hoʻouka ʻia ka ʻikepili kākau i loko o nā latches kākau. ʻO ke kaʻina maʻamau no RTSP ʻo ia ka hoʻonohonoho ʻana i ka Papa kuhikuhi papa, kākau inoa ʻo TBLPAG, a laila hana i nā ʻōlelo kuhikuhi TBLWT e hoʻouka i nā laka kākau. Hana ʻia ka papahana ma ka hoʻonohonoho ʻana i nā ʻāpana mana i ka papa inoa NVMCON. ʻO ka helu o nā ʻōlelo kuhikuhi TBLWTL a me TBLWTH e pono ai no ka hoʻouka ʻana i nā latches kākau e like me ka helu o nā huaʻōlelo papahana e kākau ʻia.

Nānā: Manaʻo ʻia e mālama ʻia ka papa inoa TBLPAG ma mua o ka hoʻololi ʻana a hoʻihoʻi ʻia ma hope o ka hoʻohana ʻana.

ALOHA
Ma kekahi mau mea hana, mālama ʻia nā ʻāpana Configuration ma ka ʻaoʻao hope o ka papahana Flash mea hoʻohana wahi hoʻomanaʻo ma kahi ʻāpana i kapa ʻia, "Flash Configuration Bytes". Me kēia mau mea hana, e hoʻopau ana i ka hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo o ka papahana e holoi i nā bytes Flash Configuration, kahi e hiki ai i ka pale code. No laila, ʻaʻole pono nā mea hoʻohana e hana i nā hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo papahana. ʻAʻole kēia he mea hopohopo ke mālama ʻia nā bits Configuration i kahi hoʻomanaʻo hoʻomanaʻo Configuration ma kahi ʻāpana i kapa ʻia, "Nā Hoʻopaʻa inoa Configuration". E nānā i ka Palapala Hoʻomanaʻo Papahana ma ka mokuna "Memory Organization" o ka pepa ʻikepili ponoʻī no ka hoʻoholo ʻana i kahi o nā bit Configuration.

Nā Hana Hoʻolālā Flash
Pono ka polokalamu a holoi ʻia paha no ka hoʻonohonoho ʻana a i ʻole ka holoi ʻana i ka hoʻomanaʻo polokalamu Flash i loko o ke ʻano RTSP. ʻO ka polokalamu a i ʻole ka hana holoi ʻia e hoʻopaʻa ʻia e ka mea hana (e nānā i ka pepa ʻikepili kikoʻī no ka ʻike manawa). Hoʻomaka ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]) i ka hana. Hoʻopau ʻia ka bit WR i ka pau ʻana o ka hana. Kū ka CPU a hiki i ka pau ʻana o ka hana hoʻolālā. ʻAʻole e hoʻokō ka CPU i nā ʻōlelo aʻo a pane ʻole i nā keʻakeʻa i kēia manawa. Inā loaʻa kekahi pilikia i ka wā o ka pōʻaiapili hoʻolālā, e kali ana lākou a hiki i ka pau ʻana o ka pōʻai. Hiki i kekahi mau mea hana dsPIC33/PIC24 ke hāʻawi i ka hoʻomanaʻo polokalamu Flash kōkua (e nānā i ka mokuna "Memory Organization" o ka pepa ʻikepili kikoʻī no nā kikoʻī), e ʻae ai i ka hoʻokō ʻana me ka ʻole o ka CPU Stalls i ka wā e holoi ʻia ai ka hoʻomanaʻo polokalamu Flash mea hoʻohana a/a i hoʻonohonoho ʻia. ʻO ka mea ʻē aʻe, hiki ke hoʻolālā ʻia ka hoʻomanaʻo polokalamu Flash kōkua me ka ʻole o ka CPU Stalls, ʻoiai ke hoʻokō ʻia ke code mai ka hoʻomanaʻo polokalamu Flash mea hoʻohana. Hiki ke hoʻohana i ka NVM interrupt e hōʻike i ka pau ʻana o ka hana hoʻolālā.

Nānā

  1. Inā loaʻa kahi hanana POR a i ʻole BOR i ka wā e holo ana ka RTSP holoi a i ʻole ka hana hoʻolālā, hoʻopau koke ʻia ka hana RTSP. Pono ka mea hoʻohana e hoʻokō hou i ka hana RTSP ma hope o ka puka ʻana o ka hāmeʻa mai Reset.
  2. Inā loaʻa kahi hanana EXTR, SWR, WDTO, TRAPR, CM a i ʻole IOPUWR Reset i ka wā e holo ana ka holoi ʻana a i ʻole ka hoʻolālā ʻana o ka RTSP, e hoʻihoʻi hou ʻia ka hāmeʻa ma hope o ka pau ʻana o ka hana RTSP.

ALGORITHM PROGRAMMING RTSP
Hōʻike kēia ʻāpana i ka papahana RTSP, aia ʻekolu mau kaʻina hana nui.

Ke hana ʻana i kahi kiʻi RAM o ka ʻaoʻao ʻikepili e hoʻololi ʻia
Hana i kēia mau ʻanuʻu ʻelua e hana i kahi kiʻi RAM o ka ʻaoʻao ʻikepili e hoʻololi ʻia:

  1. E heluhelu i ka ʻaoʻao o ka hoʻomanaʻo polokalamu Flash a mālama iā ia i loko o ka RAM data ma ke ʻano he "kiʻi" data. Pono e heluhelu ʻia ke kiʻi RAM mai kahi palena ʻaoʻao.
  2. E hoʻololi i ke kiʻi ʻikepili RAM e like me ka mea e pono ai.

Holoi i ka hoʻomanaʻo polokalamu Flash
Ma hope o ka pau ʻana o nā ʻanuʻu 1 a me 2 ma luna, e hana i nā ʻanuʻu ʻehā e holoi ai i ka ʻaoʻao hoʻomanaʻo polokalamu Flash:

  1. E hoʻonoho i nā ʻāpana NVMOP[3:0] (NVMCON[3:0]) e holoi i ka ʻaoʻao o ka hoʻomanaʻo polokalamu Flash i heluhelu ʻia mai ka ʻanuʻu 1.
  2. Kākau i ka helu hoʻomaka o ka ʻaoʻao e holoi ʻia i loko o nā papa inoa NVMADRU a me NMVADR.
  3. Me nā keakea i hoʻopaʻa ʻia:
    • a) E kākau i ke kaʻina kī i ka papa inoa NVMKEY e hiki ai ke hoʻonohonoho i ka bit WR (NVMCON[15]).
    • b) E hoʻonoho i ka WR bit; e hoʻomaka kēia i ka pōʻai holoi.
    • c) E hoʻokō i ʻelua mau kuhikuhi NOP.
  4. Hoʻomaʻemaʻe ʻia ka bit WR ke pau ka pōʻai holoi.

Ka papahana ʻana i ka ʻaoʻao hoʻomanaʻo Flash
ʻO ka ʻāpana aʻe o ke kaʻina hana, ʻo ia ka papahana i ka ʻaoʻao Flash memory. Hoʻolālā ʻia ka ʻaoʻao hoʻomanaʻo Flash me ka hoʻohana ʻana i ka ʻikepili mai ke kiʻi i hana ʻia ma ka ʻanuʻu 1. Hoʻololi ʻia ka ʻikepili i nā latches kākau ma nā hoʻonui o nā huaʻōlelo aʻo pālua a i ʻole nā ​​lālani. Loaʻa i nā mea hana a pau ka mana hoʻonohonoho huaʻōlelo ʻōlelo pālua. (E nānā i ka mokuna "Flash Program Memory" i loko o ka pepa ʻikepili ponoʻī e hoʻoholo ai inā loaʻa, a me ke ʻano o ka papahana lālani.) Ma hope o ka hoʻouka ʻia ʻana o nā laka kākau, hoʻomaka ʻia ka hana hoʻolālā, e hoʻoili i ka ʻikepili mai ka e kākau i nā kī i loko o ka hoʻomanaʻo Flash. Hana ʻia kēia a hiki i ka hoʻolālā ʻana o ka ʻaoʻao holoʻokoʻa. E hana hou i kēia mau ʻanuʻu ʻekolu, e hoʻomaka ana ma ka ʻōlelo aʻo mua o ka ʻaoʻao Flash a e hoʻonui i nā ʻanuʻu o nā huaʻōlelo papahana pālua, a i ʻole nā ​​lālani aʻo, a hiki i ka hoʻolālā ʻia ʻana o ka ʻaoʻao holoʻokoʻa.

  1. E hoʻouka i nā laka kākau:
    • a) E hoʻopaʻa i ka papa inoa TBLPAG e kuhikuhi i kahi o nā kī kākau.
    • b) Hoʻouka i ka helu i makemake ʻia o nā kī me ka hoʻohana ʻana i nā ʻōlelo kuhikuhi TBLWTL a me TBLWTH:
    • No ka papahana hua'ōlelo pālua, pono ʻelua mau ʻōlelo kuhikuhi TBLWTL a me TBLWTH
    • No ka hoʻonohonoho ʻana i ka lālani, koi ʻia nā ʻōlelo kuhikuhi TBLWTL a me TBLWTH no kēlā me kēia ʻano huaʻōlelo aʻo.
  2. E hoʻomaka i ka hana papahana:
    • a) E hoʻonohonoho i nā ʻāpana NVMOP[3:0] (NVMCON[3:0]) e hoʻolālā i nā huaʻōlelo aʻo pālua a i ʻole kahi lālani aʻo, e like me ke kūpono.
      b) Kākau i ka helu mua o ka huaʻōlelo aʻo pālua a i ʻole lālani aʻo e hoʻolālā ʻia i loko o nā papa inoa NVMADRU a me NVMADR.
      c) Me nā mea hoʻopau i hoʻopau ʻia:
      • Kākau i ke kaʻina kī i ka papa inoa NVMKEY e hiki ai ke hoʻonohonoho i ka bit WR (NVMCON[15])
      • Hoʻonoho i ka bit WR; e hoʻomaka kēia i ka pōʻai holoi
      • Hoʻokō i ʻelua mau kuhikuhi NOP
  3. Hoʻomaʻemaʻe ʻia ka bit WR i ka pau ʻana o ka pōʻaiapili hoʻonohonoho.

E hana hou i ka hana holoʻokoʻa e like me ka mea e pono ai e hoʻolālā i ka nui o ka hoʻomanaʻo polokalamu Flash i makemake ʻia.

Nānā

  1. Pono ka mea hoʻohana e hoʻomanaʻo ʻo ka hapa liʻiliʻi o ka hoʻomanaʻo polokalamu Flash hiki ke holoi ʻia me ka RTSP he ʻaoʻao i holoi ʻia. No laila, he mea nui e mālama ʻia kahi kiʻi o kēia mau wahi i ka RAM ma mua o ka hoʻomaka ʻana o kahi pōʻai holoi.
  2. ʻAʻole pono e hoʻolālā ʻia kahi lālani a huaʻōlelo paha i ka hoʻomanaʻo polokalamu Flash ma mua o ʻelua ma mua o ka holoi ʻia ʻana.
  3. Ma nā polokalamu me nā bytes Configuration i mālama ʻia ma ka ʻaoʻao hope o Flash, e hana ana i kahi hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo papahana e holoi i nā bytes Configuration, e hiki ai i ka pale code. Ma kēia mau polokalamu, ʻaʻole pono e holoi ʻia ka ʻaoʻao hope o ka hoʻomanaʻo Flash.

E holoi ana i hoʻokahi ʻaoʻao o ka uila
ʻO ke kaʻina code i hōʻike ʻia ma Examphiki ke hoʻohana i ka 4-1 e holoi i kahi ʻaoʻao o ka hoʻomanaʻo polokalamu Flash. Hoʻonohonoho ʻia ka papa inoa NVMCON e holoi i hoʻokahi ʻaoʻao o ka hoʻomanaʻo papahana. Hoʻokomo ʻia nā papa inoa NVMADR a me NMVADRU me ka helu hoʻomaka o ka ʻaoʻao e holoi ʻia. Pono e holoi ʻia ka hoʻomanaʻo o ka polokalamu ma kahi palena ʻaoʻao ʻaoʻao "even". E ʻike i ka mokuna "Flash Program Memory" o ka pepa ʻikepili ponoʻī e hoʻoholo ai i ka nui o ka ʻaoʻao Flash.
Hoʻomaka ka hana holoi ma ke kākau ʻana i kahi wehe kūikawā, a i ʻole ke kaʻina kī, i ka papa inoa NVMKEY ma mua o ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]). Pono e hoʻokō ʻia ke kaʻina wehe i ke kauoha pololei, e like me ka mea i hōʻike ʻia ma Example 4-1, me ke keakea ole; no laila, pono e hoʻopau ʻia nā mea hoʻopau.
Pono e hoʻokomo ʻia nā ʻōlelo kuhikuhi NOP ʻelua i loko o ke code ma hope o ke kaʻina holoi. Ma kekahi mau polokalamu, mālama ʻia nā ʻāpana Configuration ma ka ʻaoʻao hope o ka polokalamu Flash. Me kēia mau mea hana, e hoʻopau ana i ka hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo o ka papahana e holoi i nā bytes Flash Configuration, e hiki ai i ka pale code ma muli o ka hopena. ʻAʻole pono nā mea hoʻohana e hana i nā hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo papahana.MICROCHIP-PIC24-Hoʻolālā-Flash- (13)MICROCHIP-PIC24-Hoʻolālā-Flash- (14)

KAU KAU KAKAU
Hoʻohana ʻia nā latches kākau ma ke ʻano he mea mālama ma waena o ka mea hoʻohana ʻo Table Writes a me ke kaʻina papahana maoli. I ka wā o ka hoʻolālā ʻana, e hoʻoili ka mea hana i ka ʻikepili mai nā latches kākau i ka hoʻomanaʻo Flash. No nā polokalamu e kākoʻo ana i ka hoʻolālā lālani, ExampHōʻike ka le 4-3 i ke kaʻina o nā ʻōlelo aʻo i hiki ke hoʻohana i ka hoʻouka ʻana i 128 mau latches kākau (128 mau ʻōlelo aʻo). Pono nā ʻōlelo aʻo 128 TBLWTL a me 128 TBLWTH no ka hoʻouka ʻana i nā laka kākau no ka hoʻonohonoho ʻana i kahi lālani o ka hoʻomanaʻo polokalamu Flash. E nānā i ka mokuna "Flash Program Memory" o ka pepa ʻikepili ponoʻī no ka hoʻoholo ʻana i ka helu o nā laka hoʻonohonoho i loaʻa ma kāu kelepona. No nā polokalamu i kākoʻo ʻole i ka hoʻonohonoho ʻana i ka lālani, ExampHōʻike ka le 4-4 i ke kaʻina o nā ʻōlelo aʻo i hiki ke hoʻohana ʻia no ka hoʻouka ʻana i ʻelua latches kākau (ʻelua mau ʻōlelo aʻo). Pono ʻelua mau ʻōlelo kuhikuhi TBLWTL a me ʻelua TBLWTH no ka hoʻouka ʻana i nā laka kākau.

Nānā

  1. Hōʻike ʻia ke code no Load_Write_Latch_Row ma Example 4-3 a ua hōʻike ʻia ke code no Load_Write_Latch_Word ma Example 4-4. ʻO ke code i loko o kēia mau exampʻōlelo ʻia nā les ma hope o examples.
  2. E nānā i ka pepa ʻikepili ponoʻī no ka helu o nā kī.MICROCHIP-PIC24-Hoʻolālā-Flash- (15)

LALANI HOOKAHI EXAMPLE
Hoʻonohonoho ʻia ka papa inoa NVMCON e hoʻolālā i hoʻokahi lālani o ka hoʻomanaʻo polokalamu Flash. Hoʻomaka ka hana o ka papahana ma ke kākau ʻana i kahi wehe kūikawā, a i ʻole ke kaʻina kī, i ka papa inoa NVMKEY ma mua o ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]). Pono e hoʻokō ʻia ke kaʻina wehe me ka ʻole o ke keakea ʻana, a ma ke ʻano pololei, e like me ka mea i hōʻike ʻia ma Ex.ample 4-5. No laila, pono e hoʻopau ʻia nā mea hoʻopau ma mua o ke kākau ʻana i ke kaʻina.

Nānā: ʻAʻole i loaʻa i nā mea hana a pau ka mana hoʻonohonoho laina. E nānā i ka mokuna "Flash Program Memory" o ka pepa ʻikepili ponoʻī e hoʻoholo ai inā loaʻa kēia koho.

Pono e hoʻokomo ʻia ʻelua mau ʻōlelo aʻoaʻo NOP i ke code ma hope o ka pōʻaiapili hoʻonohonoho.MICROCHIP-PIC24-Hoʻolālā-Flash- (16) MICROCHIP-PIC24-Hoʻolālā-Flash- (17)

KA LALANI KA HOOLAHA ANA I KA RAM BUFFER
Koho i nā mea hana dsPIC33 e ʻae i ka hoʻonohonoho ʻana i ka lālani e hana pololei mai kahi wahi hoʻopaʻa i ka RAM data, ma mua o ka hele ʻana i nā laka paʻa e hoʻololi i ka ʻikepili me nā kuhikuhi TBLWT. Hoʻoholo ʻia ka wahi o ka RAM buffer e ka NVMSRCADR register(s), i hoʻouka ʻia me ka helu helu RAM data i loaʻa ka huaʻōlelo mua o ka ʻikepili papahana e kākau ʻia.

Ma mua o ka hoʻokō ʻana i ka hana o ka papahana, pono e hoʻouka ʻia ka wahi buffer i ka RAM me ka lālani o ka ʻikepili e hoʻolālā ʻia. Hiki ke hoʻouka ʻia ka RAM ma ke ʻano i hoʻopaʻa ʻia (hoʻopili ʻia) a i ʻole ka hoʻopili ʻole ʻia. Hoʻohana ʻia kahi waihona ʻikepili i hoʻokahi huaʻōlelo no ka mālama ʻana i nā Bytes Nui Loa (MSB) o nā huaʻōlelo ʻikepili papahana ʻelua. Hoʻohana ka ʻano i hoʻopaʻa ʻole ʻia i ʻelua huaʻōlelo ʻikepili no kēlā me kēia huaʻōlelo ʻikepili papahana, me ka byte luna o kēlā me kēia huaʻōlelo ʻo 00h. Hoʻohana ʻia ka format Compressed e pili ana i ka 3/4 o ka hakahaka i ka ʻikepili RAM i hoʻohālikelike ʻia me ka format uncompressed. Ma ka ʻaoʻao ʻē aʻe, hoʻohālikelike ʻia ke ʻano o ka huaʻōlelo ʻikepili papahana 24-bit, piha me ka phantom byte kiʻekiʻe. Ua koho ʻia ka ʻikepili e ka bit RPDF (NVMCON[9]). Hōʻike ʻia kēia mau ʻano ʻelua ma ke Kiʻi 4-1.

Ke hoʻouka ʻia ka pahu pahu RAM, hoʻokomo ʻia nā Flash Address Pointers, NVMADR a me NVMADRU me ka helu hoʻomaka 24-bit o ka lālani Flash e kākau ʻia. E like me ka hoʻonohonoho ʻana i nā latches kākau, hoʻomaka ʻia ke kaʻina hana ma ke kākau ʻana i ke kaʻina wehe NVM, a ukali ʻia me ka hoʻonohonoho ʻana i ka bit WR. I ka manawa i hoʻomaka ʻia, hoʻouka koke ka mea hana i nā latches kūpono a hoʻonui i ka helu NVM Address a hiki i ka hoʻonohonoho ʻia ʻana o nā bytes āpau. ExampHōʻike ka le 4-7 i kahi example o ka hana. Inā hoʻonoho ʻia ʻo NVMSRCADR i kahi waiwai e like me ke ʻano o ka hewa underrun data, e hoʻonohonoho ʻia ka URERR bit (NVMCON[8]) e hōʻike i ke kūlana.
ʻO nā mea hana e hoʻokō ai i ka hoʻonohonoho ʻana i ka lālani buffer RAM e hoʻokō i hoʻokahi a ʻelua mau latches kākau. Hoʻouka ʻia kēia me ka hoʻohana ʻana i nā ʻōlelo aʻoaʻo TBLWT a hoʻohana ʻia e hana i nā hana hoʻonohonoho huaʻōlelo.MICROCHIP-PIC24-Hoʻolālā-Flash- (18)

HOOLAHA HUAOLELO
Hoʻonohonoho ʻia ka papa inoa NVMCON e hoʻolālā i ʻelua mau ʻōlelo aʻo o ka hoʻomanaʻo polokalamu Flash. Hoʻomaka ka hana o ka papahana ma ke kākau ʻana i kahi wehe kūikawā, a i ʻole ke kaʻina kī, i ka papa inoa NVMKEY ma mua o ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]). Pono e hoʻokō ʻia ke kaʻina wehe i ke kauoha pololei, e like me ka mea i hōʻike ʻia ma Example 4-8, me ke keakea ole. No laila, pono e hoʻopau ʻia nā mea hoʻopau ma mua o ke kākau ʻana i ke kaʻina.
Pono e hoʻokomo ʻia ʻelua mau ʻōlelo aʻoaʻo NOP i ke code ma hope o ka pōʻaiapili hoʻonohonoho.MICROCHIP-PIC24-Hoʻolālā-Flash- (19) MICROCHIP-PIC24-Hoʻolālā-Flash- (20)

Ke kākau ʻana i nā papa inoa o nā mea hoʻonohonoho
Ma kekahi mau mea hana, mālama ʻia nā ʻāpana Configuration ma kahi hoʻomanaʻo hoʻomanaʻo hoʻonohonoho ma kahi ʻāpana i kapa ʻia, "Nā Hoʻopaʻa inoa Configuration". Ma nā polokalamu ʻē aʻe, mālama ʻia nā ʻāpana Configuration ma ka ʻaoʻao hope o ka papahana Flash mea hoʻohana hoʻomanaʻo wahi ma kahi ʻāpana i kapa ʻia, "Flash Configuration Bytes". Me kēia mau mea hana, e hoʻopau ana i ka hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo o ka papahana e holoi i nā bytes Flash Configuration, kahi e hiki ai i ka pale code. No laila, ʻaʻole pono nā mea hoʻohana e hana i nā hana holoi ʻaoʻao ma ka ʻaoʻao hope o ka hoʻomanaʻo papahana. E nānā i ka Palapala Hoʻomanaʻo Papahana ma ka mokuna "Memory Organization" o ka pepa ʻikepili ponoʻī no ka hoʻoholo ʻana i kahi o nā bit Configuration.

Ke mālama ʻia nā ʻāpana Configuration i loko o ka lumi hoʻomanaʻo hoʻonohonoho, hiki ke hoʻohana ʻia ka RTSP e kākau i nā mea hoʻopaʻa inoa Configuration, a ʻae ʻo RTSP i kēlā me kēia papa inoa Configuration e kākau hou ʻia me ka hana ʻole ʻana i kahi pōʻai holoi. Pono e akahele i ke kākau ʻana i nā papa inoa Configuration no ka mea e hoʻomalu lākou i nā ʻāpana hana koʻikoʻi, e like me ke kumu o ka uaki ʻōnaehana, PLL a me WDT hiki.

ʻO ke kaʻina hana no ka hoʻonohonoho ʻana i kahi mea hoʻopaʻa inoa Configuration e like me ke kaʻina hana no ka hoʻonohonoho ʻana i ka hoʻomanaʻo polokalamu Flash, koe wale nō ke koi ʻia nā ʻōlelo kuhikuhi TBLWTL. ʻO kēia no ka mea ʻaʻole hoʻohana ʻia nā bits ʻewalu o luna o kēlā me kēia mea hoʻopaʻa inoa Configuration. Eia kekahi, pono e hoʻonohonoho ʻia ka bit 23 o ka papa kākau ʻōlelo no ke komo ʻana i nā papa inoa Configuration. E nānā i ka "Device Configuration" (DS70000618) ma ka "dsPIC33/PIC24 Family Reference Manual" a me ka "Special Features" mokuna ma ka pepa ʻikepili kikoʻī no ka wehewehe piha ʻana i nā papa inoa Configuration.

Nānā

  1. ʻAʻole i loaʻa nā papa inoa hoʻonohonoho hoʻonohonoho i nā mea hana a pau. E nānā i ka mokuna "Nā Hiʻona Kūikawā" ma ka pepa ʻikepili mea hana pono e hoʻoholo i nā ʻano i loaʻa e like me ka wehewehe ʻana o nā bits NVMOP[3:0] kikoʻī.
  2. ʻOiai e hana ana i ka RTSP ma nā mea hoʻopaʻa inoa Configuration, pono e hana ka hāmeʻa me ka hoʻohana ʻana i ka FRC Oscillator kūloko (me ka ʻole PLL). Inā e hana ana ka mea hana mai kahi kumu wati ʻē aʻe, pono e hoʻokō ʻia kahi hoʻololi uaki i ka FRC Oscillator kūloko (NOSC[2:0] = 000) ma mua o ka hana ʻana i ka hana RTSP ma nā papa inoa Configuration.
  3. Inā hoʻonohonoho hou ʻia nā ʻāpana koho o ka Primary Oscillator Mode (POSCMD[1:0]) i ka Oscillator Configuration register (FOSC) i kahi waiwai hou, pono e hōʻoia ka mea hoʻohana i nā bits Switching Mode (FCKSM[1:0]) i loko. '0' ko ka papa inoa FOSC, ma mua o ka hana ʻana i kēia hana RTSP.

HOOLAHA KAKAU KAKAU Kākau ALGORITHM
Penei ke kaʻina hana maʻamau:

  1. Kākau i ka waiwai hoʻonohonoho hou i ka Papa Kākau i ka latch me ka hoʻohana ʻana i ke aʻo TBLWTL.
  2. E hoʻonohonoho i ka NVMCON no ke kākau inoa hoʻonohonoho (NVMCON = 0x4000).
  3. Kākau i ka helu wahi o ka hoʻopaʻa inoa Configuration e hoʻolālā ʻia i loko o nā papa inoa NVMADRU a me NVMADR.
  4. Hoʻopau i nā mea hoʻopau, inā hiki.
  5. E kākau i ke kaʻina kī i ka papa inoa NVMKEY.
  6. E hoʻomaka i ke kaʻina kākau ma ka hoʻonohonoho ʻana i ka bit WR (NVMCON[15]).
  7. E ho'ā hou i nā keakea, inā pono.

ExampHōʻike ka le 4-10 i ke kaʻina code i hiki ke hoʻohana ʻia e hoʻololi i kahi papa inoa hoʻonohonoho.MICROCHIP-PIC24-Hoʻolālā-Flash- (21)

KAKAU MAPALA

Hāʻawi ʻia kahi hōʻuluʻulu o nā papa inoa e pili ana me Flash Programming ma ka Papa 5-1.MICROCHIP-PIC24-Hoʻolālā-Flash- (22)

OLELO HOOLAHA PILI

Hoʻopili kēia ʻāpana i nā moʻolelo noiʻi e pili ana i kēia ʻāpana o ka manual. ʻAʻole hiki ke kākau kikoʻī ʻia kēia mau palapala noi no nā ʻohana huahana dsPIC33/PIC24, akā pili nā manaʻo a hiki ke hoʻohana ʻia me ka hoʻololi a me nā palena hiki. ʻO nā palapala noi i kēia manawa e pili ana i ka Flash Programming:

Nānā: E ʻoluʻolu e kipa i ka Microchip webkahua pūnaewelewww.microchip.com) no nā palapala noi hou a me ke code examples no nā ʻohana dsPIC33/PIC24 o nā mea hana.

MOOLELO HOONANEA

Hoʻoponopono A (ʻAukake 2009)
ʻO kēia ka mana mua i hoʻokuʻu ʻia o kēia palapala.

Hoʻoponopono B (Fepeluali 2011)
Aia kēia hoʻoponopono hou i kēia mau mea hou:

  • Examples:
    • Wehe ia Example 5-3 a me Example 5-4
    • Hōʻano hou ʻia Example 4-1, Example 4-5 a me Example 4-10
    • Ua hōʻano hou ʻia nā kuhikuhi i #WR i ka #15 ma Example 4-1, Example 4-5 a me Example 4-8
    • Hoʻouka hou ʻia i kēia ma Exampka 4-3:
  • Hoʻohou i ka inoa "Word Programming" i "Loading Write Latches for Row Programming"
  • Ua hōʻano hou ʻia nā mea e pili ana i #ram_image i #0xFA
    • Hoʻohui ʻia ʻo Example 4-4
    • Hoʻohou i ka inoa ma Example 4-8
  • Nā memo:
    • Hoʻohui ʻia ʻelua mau memo ma ka Pauku 4.2 "Nā Hana Hoʻolālā Flash"
    • Hoʻohou i ka memo ma ka Pauku 4.5.2 "Loading Write Latches"
    • Hoʻohui ʻia ʻekolu mau memo ma ka Pauku 4.6 "Kākau i nā papa inoa hoʻonohonoho hoʻonohonoho".
    • Hoʻohui ʻia ka memo 1 ma ka Papa 5-1
  • Nā papa inoa:
    • Hoʻohou i nā waiwai bit no NVMOP[3:0]: NVM Operation E koho i nā bits i loko o ka papa inoa Flash Memory Control (NVMCON) (e nānā i ka Register 3-1)
  • Māhele:
    • Wehe ʻia nā ʻāpana 5.2.1.4 "Kākau Hua'ōlelo" a me 5.2.1.5 "Kākau Byte Mode"
    • Hōʻano hou ʻia i ka ʻāpana 3.0 "nā papa inoa hoʻomalu"
    • Ua hōʻano hou ʻia kēia ma ka Pauku 4.5.5 “Word Programming”:
  • Ua hoʻololi i ke poʻo inoa o ka ʻāpana "Programming One Word of Flash Memory" i "Word Programming"
  • Hoʻohou i ka paukū mua
  • Hoʻololi i nā huaʻōlelo "hoʻokahi huaʻōlelo" i "ʻelua huaʻōlelo" ma ka paukū ʻelua
    • Hoʻohui ʻia kahi ʻanuʻu 1 hou i ka ʻāpana 4.6.1 "Kakau inoa hoʻonohonoho Kākau i ka Algorithm"
  • Nā papa:
    • Papa 5-1 hou
  • Ua hōʻano hou ʻia kekahi mau kuhikuhi i ka hoʻomanaʻo polokalamu i ka hoʻomanaʻo polokalamu Flash
  • ʻO nā mea hou liʻiliʻi ʻē aʻe e like me ka ʻōlelo a me nā hōʻano hou i hoʻohui ʻia i loko o ka palapala

Hoʻoponopono C (Iune 2011)
Aia kēia hoʻoponopono hou i kēia mau mea hou:

  • Examples:
    • Hōʻano hou ʻia Example 4-1
    • Hōʻano hou ʻia Example 4-8
  • Nā memo:
    • Hoʻohui i kahi leka ma ka Pauku 4.1 "RTSP Operation"
    • Hoʻohui ʻia ka Nānā 3 ma ka ʻāpana 4.2 "Nā Hana Hoʻolālā Flash"
    • Hoʻohui ʻia ka memo 3 ma ka ʻāpana 4.2.1 "RTSP Programming Algorithm"
    • Hoʻohui ʻia kahi memo ma ka Pauku 4.5.1 "E holoi i kahi ʻaoʻao o Flash"
    • Hoʻohui ʻia ka memo 2 ma ka ʻāpana 4.5.2 "Hoʻouka i nā Latches kākau"
  • Nā papa inoa:
    • Hoʻohou i ka wehewehe kikoʻī no nā bits 15-0 i ka Nonvolatile Memory Address register (e nānā i ka Register 3-3)
  • Māhele:
    • Hoʻouka hou ʻia ka ʻāpana 4.1 "RTSP Operation"
    • Hōʻano hou ʻia i ka ʻāpana 4.5.5 “Word Programming”
  • ʻO nā mea hou liʻiliʻi ʻē aʻe e like me ka ʻōlelo a me nā hōʻano hou i hoʻohui ʻia i loko o ka palapala

Hoʻoponopono D (Kekemapa 2011)
Aia kēia hoʻoponopono hou i kēia mau mea hou:

  • Hōʻano hou ʻia i ka ʻāpana 2.1.3 “Papa Kākau Latches”
  • Hōʻano hou ʻia i ka ʻāpana 3.2 "NVMKEY Register"
  • Hoʻohou i nā memo ma NVMCON: Flash Memory Control Register (e nānā i ka Register 3-1)
  • Ua hana ʻia nā mea hou i ka pauku 4.0 "Run-Time Self-Programming (RTSP)"
  • ʻO nā mea hou liʻiliʻi ʻē aʻe e like me ka ʻōlelo a me nā hōʻano hou i hoʻohui ʻia i loko o ka palapala

Hoʻoponopono E (ʻOkakopa 2018)
Aia kēia hoʻoponopono hou i kēia mau mea hou:

  • Hoʻohui ʻia ʻo Example 2-2, Example 4-2, Example 4-6 a me Example 4-9
  • Hoʻohui ʻia i ka ʻāpana 4.5.4 "Ka Hoʻolālā Lalani me ka hoʻohana ʻana i ka RAM Buffer"
  • Hōʻano hou ʻia ʻo ka ʻāpana 1.0 "Hoʻomaka", ʻāpana 3.3 "NVM Address Registers", Mahele 4.0 "Run-Time Self-Programming (RTSP)" a me ka Paukū 4.5.3 "Single Row Programming Example ”
  • Kakau inoa hou 3-1
  • Hōʻano hou ʻia Example 4-7
  • Papa 5-1 hou

Hoʻoponopono F (Nowemapa 2021)
Hoʻohui ʻia i ka ʻāpana 3.2.1 "Hoʻopau i nā mea hoʻopau".
Hōʻano hou ʻia Example 3-1, Example 4-1, Example 4-2, Example 4-5, Example 4-6, Example 4-7, Example 4-8, Example 4-9 a me Example 4-10.
Hōʻano hou ʻia i ka ʻāpana 3.2 "NVMKEY Register", Mahele 4.5.1 "Ke holoi ʻana i hoʻokahi ʻaoʻao o Flash", Mahele 4.5.3 "Single Row Programming Example” a me ka Māhele 4.6.1 “Kakau inoa hoʻonohonoho Kākau i ka Algorithm”.

E nānā i nā kikoʻī aʻe o ka hiʻohiʻona pale code ma nā huahana Microchip:

  • Hoʻokō nā huahana Microchip i nā kikoʻī i loko o kā lākou Microchip Data Sheet.
  • Manaʻo ʻo Microchip ua paʻa kona ʻohana huahana ke hoʻohana ʻia ma ke ʻano i manaʻo ʻia, i loko o nā kikoʻī hana, a ma lalo o nā kūlana maʻamau.
  • ʻO nā waiwai Microchip a pale ikaika i kāna mau pono waiwai naʻauao. Ua pāpā loa ʻia ka hoʻāʻo ʻana e uhaki i nā hiʻohiʻona pale code o ka huahana Microchip a hiki ke hōʻeha i ke Digital Millennium Copyright Act.
  • ʻAʻole hiki i ka Microchip a me nā mea hana semiconductor ʻē aʻe ke hōʻoia i ka palekana o kāna code. ʻAʻole manaʻo ka pale code e hōʻoiaʻiʻo ana mākou i ka huahana "unbreakable". Ke ulu mau nei ka pale code. Ua kūpaʻa ʻo Microchip i ka hoʻomaikaʻi mau ʻana i nā hiʻohiʻona pale code o kā mākou huahana

Hiki ke hoʻohana ʻia kēia hoʻolaha a me ka ʻike ma ʻaneʻi me nā huahana Microchip, me ka hoʻolālā, hoʻāʻo, a hoʻohui i nā huahana Microchip me kāu noi. ʻO ka hoʻohana ʻana i kēia ʻike ma nā ʻano ʻē aʻe e kūʻē i kēia mau ʻōlelo. Hāʻawi ʻia ka ʻike e pili ana i nā noi hāmeʻa no kou ʻoluʻolu wale nō a hiki ke pani ʻia e nā mea hou. Nau ke kuleana e hōʻoia i ka hoʻokō ʻana o kāu noi me kāu mau kikoʻī. E kelepona i kāu keʻena kūʻai Microchip kūloko no ke kākoʻo hou a i ʻole, e kiʻi i ke kākoʻo hou ma https://www.microchip.com/en-us/support/design-help/client-supportservices.

HOʻolako ʻia kēia ʻike e MICROCHIP "AS IS". ʻAʻole hana ʻo MICROCHIP i nā hōʻike a i ʻole nā ​​palapala hōʻoia o kēlā me kēia ʻano inā he hōʻike a i ʻole i ʻōlelo ʻia, kākau a waha, kānāwai a i ʻole nā ​​​​mea ʻē aʻe, e pili ana i ka ʻike me ka ʻaʻole i kaupalena ʻia i nā palapala hōʻoia a me ka hana hewa ʻole, PALAPALA PILI IA KONA KULANA, ANOAI, A I OLE HANA. ʻAʻole e kuleana ʻo MICROCHIP no kekahi mea ʻole, SPECIAL, PUNITIVE, INCIDENTAL, a i ʻole ka hopena, a i ʻole ka hopena, ka pōʻino, ke kumu kūʻai, a i ʻole nā ​​​​lālā o kēlā me kēia ʻano mea e pili ana i ka ʻike a i ʻole kona hoʻohana ʻana, akā naʻe i hana ʻia, ʻoiai he hewa. IKE AUANEI KA PONO A I OLE. I KA LOA LOA I A'EIA E KE KANAWAI, O KA HOIKE O MICROCHIP MA NA KOI A PAU I KE ANO E PILI ANA I KA IKE A I OLE I KONA HOohana, AOLE E OI I KA NUI O NA UUKU, Ina He La, Au i Uku pololei aku ai i ka Microchip.

ʻO ka hoʻohana ʻana i nā polokalamu Microchip i ke kākoʻo ola a / a i ʻole nā ​​noi palekana e pili ana i ka mea kūʻai aku, a ʻae ka mea kūʻai aku e pale, hoʻopaʻa a hoʻopaʻa ʻole i ka Microchip mai nā pōʻino, nā koi, nā hoʻopiʻi, a me nā lilo i hopena mai ia hoʻohana. ʻAʻole hāʻawi ʻia nā laikini, ma ke ʻano a i ʻole, ma lalo o nā kuleana waiwai naʻauao Microchip ke ʻole ka ʻōlelo ʻē aʻe.

No ka 'ike e pili ana i ka Microchip's Quality Management Systems, e 'olu'olu e kipa www.microchip.com/quality.

Nā hōʻailona

ʻO ka inoa a me ka hōʻailona Microchip, ka logo Microchip, Adaptec, AnyRate, AVR, AVR logo, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, Microsemi logo, 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, a me XMEGA he mau inoa inoa inoa o Microchip Technology Incorporated ma USA a me nā ʻāina ʻē aʻe. 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, ʻO SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath, a me ZL he mau inoa inoa inoa o Microchip Technology Incorporated ma USA.

Kāohi kī pili, AKS, Analog-no-ka-Digital Age, Kekahi Capacitor, AnyIn, AnyOut, Hoʻololi i hoʻonui ʻia, BlueSky, BodyCom, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching , ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralling, Inter-Chip Connectivity, JitterBlocker, Knob-on-Display, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB i hōʻoia ʻia ka logo, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM Express, NVMe, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE , Palena Ripple, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Endurance Total, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewʻO Span, WiperLock, XpressConnect, a me ZENA nā hōʻailona o Microchip Technology Incorporated ma USA a me nā ʻāina ʻē aʻe.

ʻO SQTP kahi hōʻailona lawelawe o Microchip Technology Incorporated ma USA
ʻO ka logo Adaptec, Frequency on Demand, Silicon Storage Technology, Symmcom, a me Trusted Time he mau inoa inoa inoa inoa o Microchip Technology Inc. ma nā ʻāina ʻē aʻe.
He hōʻailona inoa inoa ʻo GestIC o Microchip Technology Germany II GmbH & Co. KG, he lālā o Microchip Technology Inc., ma nā ʻāina ʻē aʻe.
ʻO nā hōʻailona ʻē aʻe a pau i ʻōlelo ʻia ma ʻaneʻi, he waiwai ia o kā lākou hui.
© 2009-2021, Microchip Technology Incorporated a me kāna mau lālā.
Mālama ʻia nā kuleana a pau.
ISBN: 978-1-5224-9314-3

Nā Kūʻai a me nā lawelawe o ka honua holoʻokoʻa

AMERIKA

ASIA/PAKIPIKA

  • Australia – Sydney
    Tel: 61-2-9868-6733
  • Kina – Pekina
    Tel: 86-10-8569-7000
  • Kina – Chengdu
    Tel: 86-28-8665-5511
  • Kina – Chongqing
    Tel: 86-23-8980-9588
  • Kina – Dongguan
    Tel: 86-769-8702-9880
  • Kina – Guangzhou
    Tel: 86-20-8755-8029
  • Kina – Hangzhou
    Tel: 86-571-8792-8115
  • Kina - Hong Kong SAR
    Tel: 852-2943-5100
  • Kina – Nanjing
    Tel: 86-25-8473-2460
  • Kina – Qingdao
    Tel: 86-532-8502-7355
  • Kina – Shanghai
    Tel: 86-21-3326-8000
  • Kina – Shenyang
    Tel: 86-24-2334-2829
  • Kina – Shenzhen
    Tel: 86-755-8864-2200
  • Kina – Suzhou
    Tel: 86-186-6233-1526
  • Kina - Wuhan
    Tel: 86-27-5980-5300
  • Kina – Xian
    Tel: 86-29-8833-7252
  • Kina – Xiamen
    Tel: 86-592-2388138
  • Kina – Zhuhai
    Tel: 86-756-3210040
  • ʻĪnia – Bangalore
    Tel: 91-80-3090-4444
  • ʻĪnia – New Delhi
    Tel: 91-11-4160-8631
  • ʻInia - Pune
    Tel: 91-20-4121-0141
  • Iapana – Osaka
    Tel: 81-6-6152-7160
  • Iapana – Tokyo
    Tel: 81-3-6880- 3770
  • Korea – Daegu
    Tel: 82-53-744-4301
  • Korea – Seoul
    Tel: 82-2-554-7200
  • Malaysia – Kuala Lumpur
    Tel: 60-3-7651-7906
  • Malaysia – Penang
    Tel: 60-4-227-8870
  • Pilipine – Manila
    Tel: 63-2-634-9065
  • Sinapoa
    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
  • Thailand – Bangkok
    Tel: 66-2-694-1351
  • Vietnam – Ho Chi Minh
    Tel: 84-28-5448-2100

EUROPA

  • ʻAuseturia – Wels
    Tel: 43-7242-2244-39
    Fax: 43-7242-2244-393
  • Denemaka – Kopenhagen
    Tel: 45-4485-5910
    Fax: 45-4485-2829
  • Finland – Espoo
    Kelepona: 358-9-4520-820
  • Palani – Paris
    Tel: 33-1-69-53-63-20
    Fax: 33-1-69-30-90-79
  • Kelemānia - Garching
    Tel: 49-8931-9700
  • Kelemānia – Haan
    Tel: 49-2129-3766400
  • Kelemānia – Heilbronn
    Tel: 49-7131-72400
  • Kelemānia – Karlsruhe
    Tel: 49-721-625370
  • Kelemānia – Munich
    Tel: 49-89-627-144-0
    Fax: 49-89-627-144-44
  • Kelemānia – Rosenheim
    Tel: 49-8031-354-560
  • Italia – Milana
    Tel: 39-0331-742611
    Fax: 39-0331-466781
  • Italia – Padova
    Tel: 39-049-7625286
  • Holani – Drunen
    Tel: 31-416-690399
    Fax: 31-416-690340
  • Norewai – Trondheim
    Tel: 47-7288-4388
  • Polani – Warsaw
    Tel: 48-22-3325737
  • Romania – Bucharest
    Tel: 40-21-407-87-50
  • Sepania – Madeda
    Tel: 34-91-708-08-90
    Fax: 34-91-708-08-91
  • Kuekene – Gothenberg
    Tel: 46-31-704-60-40
  • Kuekene – Stockholm
    Tel: 46-8-5090-4654
  • UK – Wokingham
    Tel: 44-118-921-5800
    Fax: 44-118-921-5820

Nānā:

Ua manaʻo ʻia kēia ʻāpana manual reference no ka hoʻokō ʻana i nā pepa ʻikepili. Ma muli o ka ʻano mea like ʻole, ʻaʻole pili kēia ʻāpana manual i nā mea hana dsPIC33/PIC24 āpau. E ʻoluʻolu e nānā i ka memo ma ka hoʻomaka ʻana o ka mokuna "Flash Program Memory" ma ka pepa ʻikepili o kēia manawa e nānā inā kākoʻo kēia palapala i ka hāmeʻa āu e hoʻohana nei.
Loaʻa nā pepa ʻikepili mea hana a me nā ʻāpana puke kuhikuhi ʻohana no ka hoʻoiho ʻana mai ka Microchip Worldwide Webkahua ma: http://www.microchip.com.

Palapala / Punawai

ʻO MICROCHIP PIC24 Flash Programming [pdf] Ke alakaʻi hoʻohana
PIC24 Flash Programming, PIC24, Flash Programming, Programming
ʻO MICROCHIP PIC24 Flash Programming [pdf] Ke alakaʻi hoʻohana
PIC24 Flash Programming, PIC24, Flash Programming

Nā kuhikuhi

Waiho i kahi manaʻo

ʻAʻole e paʻi ʻia kāu leka uila. Hōʻailona ʻia nā kahua i makemake ʻia *