మైక్రోచిప్ PIC24 ఫ్లాష్ ప్రోగ్రామింగ్

ఉత్పత్తి సమాచారం
ఫ్లాష్ ప్రోగ్రామింగ్
dsPIC33/PIC24 పరికరాల కుటుంబాలు వినియోగదారు కోడ్ని అమలు చేయడానికి అంతర్గత ప్రోగ్రామబుల్ ఫ్లాష్ ప్రోగ్రామ్ మెమరీని కలిగి ఉంటాయి. ఈ మెమరీని ప్రోగ్రామ్ చేయడానికి మూడు పద్ధతులు ఉన్నాయి:
- టేబుల్ ఇన్స్ట్రక్షన్ ఆపరేషన్
- ఇన్-సర్క్యూట్ సీరియల్ ప్రోగ్రామింగ్ (ICSP)
- ఇన్-అప్లికేషన్ ప్రోగ్రామింగ్ (IAP)
టేబుల్ సూచనలు ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్పేస్ మరియు dsPIC33/PIC24 పరికరాల డేటా మెమరీ స్పేస్ మధ్య డేటాను బదిలీ చేసే పద్ధతిని అందిస్తాయి. ప్రోగ్రామ్ మెమరీ స్థలం యొక్క బిట్స్[15:0] నుండి చదవడానికి TBLRDL సూచన ఉపయోగించబడుతుంది. ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్పేస్లోని బిట్స్[15:0]కి వ్రాయడానికి TBLWTL సూచన ఉపయోగించబడుతుంది. TBLRDL మరియు TBLWTL వర్డ్ మోడ్ లేదా బైట్ మోడ్లో ఫ్లాష్ ప్రోగ్రామ్ మెమరీని యాక్సెస్ చేయగలవు.
ఫ్లాష్ ప్రోగ్రామ్ మెమరీ చిరునామాతో పాటు, టేబుల్ ఇన్స్ట్రక్షన్ W రిజిస్టర్ను (లేదా మెమరీ స్థానానికి W రిజిస్టర్ పాయింటర్) కూడా నిర్దేశిస్తుంది, అది ఫ్లాష్ ప్రోగ్రామ్ మెమరీ డేటాకు మూలం లేదా ఫ్లాష్ ప్రోగ్రామ్ కోసం గమ్యాన్ని సూచిస్తుంది. చదివిన జ్ఞాపకం.
ఈ విభాగం ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామింగ్ చేయడానికి సాంకేతికతను వివరిస్తుంది. dsPIC33/ PIC24 పరికరాల కుటుంబాలు వినియోగదారు కోడ్ని అమలు చేయడానికి అంతర్గత ప్రోగ్రామబుల్ ఫ్లాష్ ప్రోగ్రామ్ మెమరీని కలిగి ఉంటాయి. ఈ మెమరీని ప్రోగ్రామ్ చేయడానికి మూడు పద్ధతులు ఉన్నాయి:
- రన్-టైమ్ సెల్ఫ్-ప్రోగ్రామింగ్ (RTSP)
- ఇన్-సర్క్యూట్ సీరియల్ ప్రోగ్రామింగ్™ (ICSP™)
- మెరుగైన ఇన్-సర్క్యూట్ సీరియల్ ప్రోగ్రామింగ్ (EICSP)
RTSP అమలు సమయంలో అప్లికేషన్ సాఫ్ట్వేర్ ద్వారా నిర్వహించబడుతుంది, అయితే ICSP మరియు EICSP పరికరానికి సీరియల్ డేటా కనెక్షన్ని ఉపయోగించి బాహ్య ప్రోగ్రామర్ నుండి నిర్వహించబడతాయి. ICSP మరియు EICSP లు RTSP కంటే చాలా వేగవంతమైన ప్రోగ్రామింగ్ సమయాన్ని అనుమతిస్తాయి. RTSP పద్ధతులు విభాగం 4.0 “రన్-టైమ్ సెల్ఫ్-ప్రోగ్రామింగ్ (RTSP)”లో వివరించబడ్డాయి. ICSP మరియు EICSP ప్రోటోకాల్లు సంబంధిత పరికరాల కోసం ప్రోగ్రామింగ్ స్పెసిఫికేషన్ డాక్యుమెంట్లలో నిర్వచించబడ్డాయి, వీటిని మైక్రోచిప్ నుండి డౌన్లోడ్ చేసుకోవచ్చు webసైట్ (http://www.microchip.com) సి భాషలో ప్రోగ్రామింగ్ చేస్తున్నప్పుడు, ఫ్లాష్ ప్రోగ్రామింగ్ను సులభతరం చేసే అనేక అంతర్నిర్మిత ఫంక్షన్లు అందుబాటులో ఉంటాయి. అంతర్నిర్మిత ఫంక్షన్లకు సంబంధించిన వివరాల కోసం “MPLAB® XC16 C కంపైలర్ యూజర్స్ గైడ్” (DS50002071) చూడండి.
ఉత్పత్తి వినియోగ సూచనలు
ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామ్ చేయడానికి, ఈ దశలను అనుసరించండి:
- కుటుంబ సూచన మాన్యువల్ విభాగం మీరు ఉపయోగిస్తున్న పరికరానికి మద్దతు ఇస్తుందో లేదో తనిఖీ చేయడానికి పరికర డేటా షీట్ని చూడండి.
- మైక్రోచిప్ వరల్డ్వైడ్ నుండి పరికర డేటా షీట్ మరియు ఫ్యామిలీ రిఫరెన్స్ మాన్యువల్ విభాగాలను డౌన్లోడ్ చేయండి Webసైట్: http://www.microchip.com.
- మెమరీని ప్రోగ్రామ్ చేయడానికి మూడు పద్ధతుల్లో ఒకదాన్ని ఎంచుకోండి (టేబుల్ ఇన్స్ట్రక్షన్ ఆపరేషన్, ఇన్-సర్క్యూట్ సీరియల్ ప్రోగ్రామింగ్ (ICSP), ఇన్-అప్లికేషన్ ప్రోగ్రామింగ్ (IAP)).
- టేబుల్ ఇన్స్ట్రక్షన్ ఆపరేషన్ని ఉపయోగిస్తుంటే, ప్రోగ్రామ్ మెమరీ స్పేస్ బిట్స్[15:0] నుండి చదవడానికి TBLRDL సూచనను మరియు ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్పేస్లోని బిట్లకు[15:0] వ్రాయడానికి TBLWTL సూచనలను ఉపయోగించండి.
- వ్రాయవలసిన ఫ్లాష్ ప్రోగ్రామ్ మెమరీ డేటా యొక్క మూలంగా W రిజిస్టర్ (లేదా మెమరీ స్థానానికి W రిజిస్టర్ పాయింటర్) లేదా ఫ్లాష్ ప్రోగ్రామ్ మెమొరీ రీడ్ కోసం గమ్యస్థానంగా పేర్కొనాలని నిర్ధారించుకోండి.
ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామింగ్ చేయడంపై మరింత సమాచారం మరియు వివరాల కోసం, dsPIC33/PIC24 ఫ్యామిలీ రిఫరెన్స్ మాన్యువల్ని చూడండి.
టేబుల్ ఇన్స్ట్రక్షన్ ఆపరేషన్
పట్టిక సూచనలు ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్థలం మరియు dsPIC33/PIC24 పరికరాల డేటా మెమరీ స్థలం మధ్య డేటాను బదిలీ చేసే పద్ధతిని అందిస్తాయి. ఈ విభాగం ఫ్లాష్ ప్రోగ్రామ్ మెమరీ ప్రోగ్రామింగ్ సమయంలో ఉపయోగించే పట్టిక సూచనల సారాంశాన్ని అందిస్తుంది. నాలుగు ప్రాథమిక పట్టిక సూచనలు ఉన్నాయి:
- TBLRDL: పట్టిక తక్కువగా చదవబడింది
- TBLRDH: టేబుల్ రీడ్ హై
- TBLWTL: పట్టిక తక్కువగా వ్రాయండి
- TBLWTH: టేబుల్ రైట్ హై
ప్రోగ్రామ్ మెమరీ స్థలం యొక్క బిట్స్[15:0] నుండి చదవడానికి TBLRDL సూచన ఉపయోగించబడుతుంది. ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్పేస్లోని బిట్స్[15:0]కి వ్రాయడానికి TBLWTL సూచన ఉపయోగించబడుతుంది. TBLRDL మరియు TBLWTL వర్డ్ మోడ్ లేదా బైట్ మోడ్లో ఫ్లాష్ ప్రోగ్రామ్ మెమరీని యాక్సెస్ చేయగలవు.
TBLRDH మరియు TBLWTH సూచనలను ప్రోగ్రామ్ మెమరీ స్పేస్ యొక్క బిట్స్[23:16] చదవడానికి లేదా వ్రాయడానికి ఉపయోగిస్తారు. TBLRDH మరియు TBLWTH వర్డ్ లేదా బైట్ మోడ్లో ఫ్లాష్ ప్రోగ్రామ్ మెమరీని యాక్సెస్ చేయగలవు. ఫ్లాష్ ప్రోగ్రామ్ మెమరీ 24 బిట్ల వెడల్పు మాత్రమే ఉన్నందున, TBLRDH మరియు TBLWTH సూచనలు ఉనికిలో లేని ఫ్లాష్ ప్రోగ్రామ్ మెమరీ యొక్క ఎగువ బైట్ను పరిష్కరించగలవు. ఈ బైట్ను "ఫాంటమ్ బైట్" అంటారు. ఫాంటమ్ బైట్ యొక్క ఏదైనా రీడ్ 0x00ని అందిస్తుంది. ఫాంటమ్ బైట్కి వ్రాయడం వల్ల ఎటువంటి ప్రభావం ఉండదు. 24-బిట్ ఫ్లాష్ ప్రోగ్రామ్ మెమరీని రెండు పక్కపక్కనే 16-బిట్ స్పేస్లుగా పరిగణించవచ్చు, ప్రతి స్థలం ఒకే చిరునామా పరిధిని పంచుకుంటుంది. అందువల్ల, TBLRDL మరియు TBLWTL సూచనలు “తక్కువ” ప్రోగ్రామ్ మెమరీ స్థలాన్ని యాక్సెస్ చేస్తాయి (PM[15:0]). TBLRDH మరియు TBLWTH సూచనలు "హై" ప్రోగ్రామ్ మెమరీ స్పేస్ను యాక్సెస్ చేస్తాయి (PM[31:16]). PM[31:24]కి చదవడం లేదా వ్రాసే ఏదైనా ఫాంటమ్ (అమలుపరచబడని) బైట్ని యాక్సెస్ చేస్తుంది. ఏదైనా పట్టిక సూచనలను బైట్ మోడ్లో ఉపయోగించినప్పుడు, టేబుల్ అడ్రస్ యొక్క అతి తక్కువ ముఖ్యమైన బిట్ (LSb) బైట్ ఎంపిక బిట్గా ఉపయోగించబడుతుంది. అధిక లేదా తక్కువ ప్రోగ్రామ్ మెమరీ స్థలంలో ఏ బైట్ యాక్సెస్ చేయబడుతుందో LSb నిర్ణయిస్తుంది.
పట్టిక సూచనలను ఉపయోగించి ఫ్లాష్ ప్రోగ్రామ్ మెమరీ ఎలా పరిష్కరించబడుతుందో మూర్తి 2-1 వివరిస్తుంది. 24-బిట్ ప్రోగ్రామ్ మెమరీ చిరునామా TBLPAG రిజిస్టర్లోని బిట్లు[7:0] మరియు టేబుల్ ఇన్స్ట్రక్షన్లో పేర్కొన్న W రిజిస్టర్ నుండి ఎఫెక్టివ్ అడ్రస్ (EA)ని ఉపయోగించి రూపొందించబడింది. 24-బిట్ ప్రోగ్రామ్ కౌంటర్ (PC) సూచన కోసం మూర్తి 2-1లో వివరించబడింది. EA యొక్క ఎగువ 23 బిట్లు ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్థానాన్ని ఎంచుకోవడానికి ఉపయోగించబడతాయి.
బైట్ మోడ్ టేబుల్ సూచనల కోసం, 16-బిట్ ఫ్లాష్ ప్రోగ్రామ్ మెమరీ వర్డ్లో ఏ బైట్ను సూచించాలో ఎంచుకోవడానికి W రిజిస్టర్ EA యొక్క LSb ఉపయోగించబడుతుంది; '1' బిట్లను ఎంచుకుంటుంది[15:8] మరియు '0' బిట్లను ఎంచుకుంటుంది[7:0]. W రిజిస్టర్ EA యొక్క LSb వర్డ్ మోడ్లోని టేబుల్ సూచన కోసం విస్మరించబడింది. ఫ్లాష్ ప్రోగ్రామ్ మెమరీ చిరునామాతో పాటు, టేబుల్ ఇన్స్ట్రక్షన్ W రిజిస్టర్ను (లేదా మెమరీ స్థానానికి W రిజిస్టర్ పాయింటర్) కూడా నిర్దేశిస్తుంది, అది ఫ్లాష్ ప్రోగ్రామ్ మెమరీ డేటాకు మూలం లేదా ఫ్లాష్ ప్రోగ్రామ్ కోసం గమ్యాన్ని సూచిస్తుంది. చదివిన జ్ఞాపకం. బైట్ మోడ్లో టేబుల్ రైట్ ఆపరేషన్ కోసం, సోర్స్ వర్కింగ్ రిజిస్టర్లోని బిట్స్[15:8] విస్మరించబడతాయి.
టేబుల్ రీడ్ సూచనలను ఉపయోగించడం
టేబుల్ రీడ్లకు రెండు దశలు అవసరం:
- అడ్రస్ పాయింటర్ TBLPAG రిజిస్టర్ మరియు W రిజిస్టర్లలో ఒకదానిని ఉపయోగించి సెటప్ చేయబడింది.
- చిరునామా స్థానంలో ఉన్న ఫ్లాష్ ప్రోగ్రామ్ మెమరీ కంటెంట్లు చదవబడవచ్చు.
- వర్డ్ మోడ్ని చదవండి
Ex లో చూపబడిన కోడ్ample 2-1 మరియు Example 2-2 వర్డ్ మోడ్లోని టేబుల్ సూచనలను ఉపయోగించి ఫ్లాష్ ప్రోగ్రామ్ మెమరీ యొక్క పదాన్ని ఎలా చదవాలో చూపిస్తుంది.

- బైట్ మోడ్ను చదవండి
Ex లో చూపబడిన కోడ్ample 2-3 తక్కువ బైట్ యొక్క రీడ్లో పోస్ట్-ఇంక్రిమెంట్ ఆపరేటర్ను చూపుతుంది, దీని వలన వర్కింగ్ రిజిస్టర్లోని చిరునామా ఒకటి చొప్పున పెరుగుతుంది. ఇది మూడవ వ్రాత సూచనలో మధ్య బైట్ యాక్సెస్ కోసం EA[0]ని '1'కి సెట్ చేస్తుంది. చివరి పోస్ట్-ఇంక్రిమెంట్ W0ని సరి చిరునామాకు సెట్ చేస్తుంది, ఇది తదుపరి ఫ్లాష్ ప్రోగ్రామ్ మెమరీ స్థానాన్ని సూచిస్తుంది.
- టేబుల్ వ్రాయండి లాచెస్
టేబుల్ రైట్ సూచనలు నేరుగా నాన్వోలేటైల్ ప్రోగ్రామ్ మెమరీకి వ్రాయవు. బదులుగా, టేబుల్ రైట్ ఇన్స్ట్రక్షన్స్ లోడ్ రైట్ డేటాను స్టోర్ చేసే రైట్ లాచెస్. NVM అడ్రస్ రిజిస్టర్లు తప్పనిసరిగా లాచ్ చేయబడిన డేటా వ్రాయవలసిన మొదటి చిరునామాతో లోడ్ చేయబడాలి. అన్ని రైట్ లాచ్లు లోడ్ చేయబడినప్పుడు, ప్రత్యేక సూచనల క్రమాన్ని అమలు చేయడం ద్వారా అసలు మెమరీ ప్రోగ్రామింగ్ ఆపరేషన్ ప్రారంభించబడుతుంది. ప్రోగ్రామింగ్ సమయంలో, హార్డ్వేర్ రైట్ లాచెస్లోని డేటాను ఫ్లాష్ మెమరీకి బదిలీ చేస్తుంది. రైట్ లాచ్లు ఎల్లప్పుడూ చిరునామా 0xFA0000 వద్ద ప్రారంభమవుతాయి మరియు వర్డ్ ప్రోగ్రామింగ్ కోసం 0xFA0002 వరకు లేదా రో ప్రోగ్రామింగ్ ఉన్న పరికరాల కోసం 0xFA00FE ద్వారా విస్తరించబడతాయి.
గమనిక: పరికరాన్ని బట్టి వ్రాసే లాచెస్ సంఖ్య మారుతూ ఉంటుంది. అందుబాటులో ఉన్న రైట్ లాచ్ల సంఖ్య కోసం నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి.
నియంత్రణ రిజిస్టర్లు
అనేక ప్రత్యేక ఫంక్షన్ రిజిస్టర్లు (SFRలు) ఫ్లాష్ ప్రోగ్రామ్ మెమరీని తొలగించడానికి మరియు వ్రాసే ఆపరేషన్లను ప్రోగ్రామ్ చేయడానికి ఉపయోగించబడతాయి: NVMCON, NVMKEY మరియు NVM చిరునామా రిజిస్టర్లు, NVMADR మరియు NVMADRU.
NVMCON రిజిస్టర్
NVMCON రిజిస్టర్ అనేది ఫ్లాష్ మరియు ప్రోగ్రామ్/ఎరేస్ ఆపరేషన్ల కోసం ప్రాథమిక నియంత్రణ రిజిస్టర్. ఈ రిజిస్టర్ ఎరేస్ లేదా ప్రోగ్రామ్ ఆపరేషన్ నిర్వహించబడుతుందా లేదా అనేదాన్ని ఎంచుకుంటుంది మరియు ప్రోగ్రామ్ను ప్రారంభించవచ్చు లేదా సైకిల్ను ఎరేజ్ చేయగలదు. NVMCON రిజిస్టర్ రిజిస్టర్ 3-1లో చూపబడింది. NVMCON యొక్క దిగువ బైట్ నిర్వహించబడే NVM ఆపరేషన్ రకాన్ని కాన్ఫిగర్ చేస్తుంది.
NVMKEY రిజిస్టర్
NVMKEY రిజిస్టర్ (రిజిస్టర్ 3-4 చూడండి) అనేది ఫ్లాష్ మెమరీని పాడు చేయగల NVMCON యొక్క ప్రమాదవశాత్తూ వ్రాసేటటువంటి వ్రాతలను నిరోధించడానికి ఉపయోగించే వ్రాత-మాత్రమే రిజిస్టర్. అన్లాక్ చేసిన తర్వాత, ఒక ఇన్స్ట్రక్షన్ సైకిల్ కోసం NVMCONకి వ్రాతలు అనుమతించబడతాయి, దీనిలో WR బిట్ ఎరేస్ లేదా ప్రోగ్రామ్ రొటీన్ను అమలు చేయడానికి సెట్ చేయవచ్చు. సమయ అవసరాల దృష్ట్యా, అంతరాయాలను నిలిపివేయడం అవసరం.
ఎరేస్ లేదా ప్రోగ్రామింగ్ క్రమాన్ని ప్రారంభించడానికి ఈ క్రింది దశలను చేయండి:
- అంతరాయాలను నిలిపివేయండి.
- NVMKEYకి 0x55 వ్రాయండి.
- NVMKEYకి 0xAA వ్రాయండి.
- WR బిట్ (NVMCON[15]) సెట్ చేయడం ద్వారా ప్రోగ్రామింగ్ రైట్ సైకిల్ను ప్రారంభించండి.
- రెండు NOP సూచనలను అమలు చేయండి.
- అంతరాయాలను పునరుద్ధరించండి.

అంతరాయాలను నిలిపివేయడం
విజయవంతమైన ఫలితాన్ని నిర్ధారించడానికి అన్ని ఫ్లాష్ కార్యకలాపాలకు అంతరాయాలను నిలిపివేయడం అవసరం. NVMKEY అన్లాక్ సీక్వెన్స్ సమయంలో అంతరాయం ఏర్పడితే, అది WR బిట్కి వ్రాయడాన్ని నిరోధించవచ్చు. విభాగం 3.2 “NVMKEY రిజిస్టర్”లో చర్చించినట్లుగా, NVMKEY అన్లాక్ క్రమం అంతరాయం లేకుండా అమలు చేయబడాలి.
గ్లోబల్ ఇంటరప్ట్ ఎనేబుల్ (GIE బిట్)ని నిలిపివేయడం ద్వారా లేదా DISI సూచనలను ఉపయోగించడం ద్వారా రెండు పద్ధతుల్లో ఒకదానిలో అంతరాయాలను నిలిపివేయవచ్చు. DISI సూచన సిఫార్సు చేయబడదు ఎందుకంటే ఇది ప్రాధాన్యత 6 లేదా అంతకంటే తక్కువ అంతరాయాలను మాత్రమే నిలిపివేస్తుంది; కాబట్టి, గ్లోబల్ ఇంటరప్ట్ ఎనేబుల్ పద్ధతిని ఉపయోగించాలి.
CPU కోడ్ ప్రవాహాన్ని ప్రభావితం చేసే ముందు GIEకి రెండు సూచనల చక్రాలను తీసుకుంటుంది. రెండు NOP సూచనలు ఆ తర్వాత అవసరం, లేదా NVMKEYని లోడ్ చేయడం వంటి ఏదైనా ఇతర ఉపయోగకరమైన పని సూచనలతో భర్తీ చేయవచ్చు; ఇది సెట్ మరియు స్పష్టమైన కార్యకలాపాలకు వర్తిస్తుంది. అంతరాయాలను రీ-ఎనేబుల్ చేస్తున్నప్పుడు జాగ్రత్త వహించాలి, తద్వారా NVM టార్గెటెడ్ రొటీన్ ఇతర కారణాల వల్ల గతంలో పిలిచే ఫంక్షన్ వాటిని డిసేబుల్ చేసినప్పుడు అంతరాయాలను అనుమతించదు. అసెంబ్లీలో దీనిని పరిష్కరించడానికి, GIE బిట్ స్థితిని నిలుపుకోవడానికి స్టాక్ పుష్ మరియు పాప్ను ఉపయోగించవచ్చు. Cలో, GIEని క్లియర్ చేయడానికి ముందు INTCON2ని నిల్వ చేయడానికి RAMలోని వేరియబుల్ని ఉపయోగించవచ్చు. అంతరాయాలను నిలిపివేయడానికి క్రింది క్రమాన్ని ఉపయోగించండి:
- INTCON2ని స్టాక్పైకి నెట్టండి.
- GIE బిట్ను క్లియర్ చేయండి.
- రెండు NOPలు లేదా NVMKEYకి వ్రాశారు.
- WR బిట్ (NVMCON[15]) సెట్ చేయడం ద్వారా ప్రోగ్రామింగ్ సైకిల్ను ప్రారంభించండి.
- INTCON2 యొక్క POP ద్వారా GIE స్థితిని పునరుద్ధరించండి.

NVM చిరునామా రిజిస్టర్లు
రెండు NVM అడ్రస్ రిజిస్టర్లు, NVMADRU మరియు NVMADR, సంయోగం చేయబడినప్పుడు, ప్రోగ్రామింగ్ కార్యకలాపాల కోసం ఎంచుకున్న అడ్డు వరుస లేదా పదం యొక్క 24-బిట్ EAని ఏర్పరుస్తాయి. EA యొక్క ఎగువ ఎనిమిది బిట్లను పట్టుకోవడానికి NVMADRU రిజిస్టర్ ఉపయోగించబడుతుంది మరియు EA యొక్క దిగువ 16 బిట్లను పట్టుకోవడానికి NVMADR రిజిస్టర్ ఉపయోగించబడుతుంది. కొన్ని పరికరాలు ఇదే రిజిస్టర్లను NVMADRL మరియు NVMADRHగా సూచించవచ్చు. NVM అడ్రస్ రిజిస్టర్లు డబుల్ ఇన్స్ట్రక్షన్ వర్డ్ ప్రోగ్రామింగ్ ఆపరేషన్ చేస్తున్నప్పుడు డబుల్ ఇన్స్ట్రక్షన్ వర్డ్ బౌండరీని, రో ప్రోగ్రామింగ్ ఆపరేషన్ చేస్తున్నప్పుడు రో బౌండరీని లేదా పేజీ ఎరేస్ ఆపరేషన్ చేస్తున్నప్పుడు పేజీ బౌండరీని సూచించాలి.
నమోదు 3-1: NVMCON: ఫ్లాష్ మెమరీ నియంత్రణ రిజిస్టర్

గమనిక
- పవర్-ఆన్ రీసెట్ (POR)లో మాత్రమే ఈ బిట్ రీసెట్ చేయబడుతుంది (అంటే, క్లియర్ చేయబడింది).
- నిష్క్రియ మోడ్ నుండి నిష్క్రమించినప్పుడు, ఫ్లాష్ ప్రోగ్రామ్ మెమరీ పని చేయడానికి ముందు పవర్-అప్ ఆలస్యం (TVREG) ఉంటుంది. మరింత సమాచారం కోసం నిర్దిష్ట పరికర డేటా షీట్లోని “ఎలక్ట్రికల్ క్యారెక్టరిస్టిక్స్” అధ్యాయాన్ని చూడండి.
- NVMOP[3:0] యొక్క అన్ని ఇతర కలయికలు అమలు చేయబడలేదు.
- ఈ కార్యాచరణ అన్ని పరికరాలలో అందుబాటులో లేదు. అందుబాటులో ఉన్న కార్యకలాపాల కోసం నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి.
- PWRSAV సూచనను అమలు చేసిన తర్వాత పవర్-పొదుపు మోడ్లోకి ప్రవేశించడం అనేది పెండింగ్లో ఉన్న అన్ని NVM ఆపరేషన్లను పూర్తి చేయడంపై ఆధారపడి ఉంటుంది.
- ఈ బిట్ RAM బఫర్డ్ రో ప్రోగ్రామింగ్కు మద్దతు ఇచ్చే పరికరాల్లో మాత్రమే అందుబాటులో ఉంటుంది. లభ్యత కోసం పరికర-నిర్దిష్ట డేటా షీట్ని చూడండి.

గమనిక
- పవర్-ఆన్ రీసెట్ (POR)లో మాత్రమే ఈ బిట్ రీసెట్ చేయబడుతుంది (అంటే, క్లియర్ చేయబడింది).
- నిష్క్రియ మోడ్ నుండి నిష్క్రమించినప్పుడు, ఫ్లాష్ ప్రోగ్రామ్ మెమరీ పని చేయడానికి ముందు పవర్-అప్ ఆలస్యం (TVREG) ఉంటుంది. మరింత సమాచారం కోసం నిర్దిష్ట పరికర డేటా షీట్లోని “ఎలక్ట్రికల్ క్యారెక్టరిస్టిక్స్” అధ్యాయాన్ని చూడండి.
- NVMOP[3:0] యొక్క అన్ని ఇతర కలయికలు అమలు చేయబడలేదు.
- ఈ కార్యాచరణ అన్ని పరికరాలలో అందుబాటులో లేదు. అందుబాటులో ఉన్న కార్యకలాపాల కోసం నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి.
- PWRSAV సూచనను అమలు చేసిన తర్వాత పవర్-పొదుపు మోడ్లోకి ప్రవేశించడం అనేది పెండింగ్లో ఉన్న అన్ని NVM ఆపరేషన్లను పూర్తి చేయడంపై ఆధారపడి ఉంటుంది.
- ఈ బిట్ RAM బఫర్డ్ రో ప్రోగ్రామింగ్కు మద్దతు ఇచ్చే పరికరాల్లో మాత్రమే అందుబాటులో ఉంటుంది. లభ్యత కోసం పరికర-నిర్దిష్ట డేటా షీట్ని చూడండి.
నమోదు 3-2: NVMADRU: నాన్వోలేటైల్ మెమరీ ఎగువ చిరునామా రిజిస్టర్

రిజిస్టర్ 3-3: NVMADR: నాన్వోలేటైల్ మెమరీ అడ్రస్ రిజిస్టర్

రిజిస్టర్ 3-4: NVMKEY: నాన్వోలేటైల్ మెమరీ కీ రిజిస్టర్

రన్-టైమ్ సెల్ఫ్-ప్రోగ్రామింగ్ (RTSP)
RTSP వినియోగదారు అప్లికేషన్ను ఫ్లాష్ ప్రోగ్రామ్ మెమరీ కంటెంట్లను సవరించడానికి అనుమతిస్తుంది. RTSP TBLRD (టేబుల్ రీడ్) మరియు TBLWT (టేబుల్ రైట్) సూచనలు, TBLPAG రిజిస్టర్ మరియు NVM కంట్రోల్ రిజిస్టర్లను ఉపయోగించి సాధించబడుతుంది. RTSPతో, వినియోగదారు అప్లికేషన్ ఫ్లాష్ మెమరీ యొక్క ఒకే పేజీని చెరిపివేయగలదు మరియు నిర్దిష్ట పరికరాలలో రెండు సూచన పదాలు లేదా 128 సూచన పదాలను ప్రోగ్రామ్ చేయవచ్చు.
RTSP ఆపరేషన్
The dsPIC33/PIC24 Flash program memory array is organized into erase pages that can contain up to 1024 instructions. The double-word programming option is available in all devices in the dsPIC33/PIC24 families. In addition, certain devices have row programming capability, which allows the programming of up to 128 instruction words at a time. Programming and erase operations always occur on an even double programming word, row or page boundaries. Refer to the “Flash Program Memory” chapter of the specific device data sheet for the availability and sizes of a programming row, and the page size for erasing. The Flash program memory implements holding buffers, called write latches, that can contain up to 128 instructions of programming data depending on the device. Prior to the actual programming operation, the write data must be loaded into the write latches. The basic sequence for RTSP is to set up the Table Pointer, TBLPAG register, and then perform a series of TBLWT instructions to load the write latches. Programming is performed by setting the control bits in the NVMCON register. The number of TBLWTL and TBLWTH instructions needed to load the write latches is equal to the number of program words to be written.
గమనిక: TBLPAG రిజిస్టర్ని సవరించడానికి ముందు సేవ్ చేసి, ఉపయోగం తర్వాత పునరుద్ధరించాలని సిఫార్సు చేయబడింది.
జాగ్రత్త
కొన్ని పరికరాలలో, కాన్ఫిగరేషన్ బిట్లు ప్రోగ్రామ్ ఫ్లాష్ యూజర్ మెమరీ స్థలం యొక్క చివరి పేజీలో “ఫ్లాష్ కాన్ఫిగరేషన్ బైట్స్” అనే విభాగంలో నిల్వ చేయబడతాయి. ఈ పరికరాలతో, ప్రోగ్రామ్ మెమరీ యొక్క చివరి పేజీలో పేజీ చెరిపివేత ఆపరేషన్ చేయడం వలన ఫ్లాష్ కాన్ఫిగరేషన్ బైట్లు చెరిపివేయబడతాయి, ఇది కోడ్ రక్షణను ప్రారంభిస్తుంది. కాబట్టి, వినియోగదారులు ప్రోగ్రామ్ మెమరీ చివరి పేజీలో పేజీ ఎరేస్ ఆపరేషన్లను నిర్వహించకూడదు. "డివైస్ కాన్ఫిగరేషన్ రిజిస్టర్స్" అనే విభాగంలో కాన్ఫిగరేషన్ మెమరీ స్పేస్లో కాన్ఫిగరేషన్ బిట్లు నిల్వ చేయబడినప్పుడు ఇది ఆందోళన చెందదు. కాన్ఫిగరేషన్ బిట్లు ఎక్కడ ఉన్నాయో గుర్తించడానికి నిర్దిష్ట పరికర డేటా షీట్లోని “మెమరీ ఆర్గనైజేషన్” అధ్యాయంలోని ప్రోగ్రామ్ మెమరీ మ్యాప్ని చూడండి.
ఫ్లాష్ ప్రోగ్రామింగ్ కార్యకలాపాలు
A program or erase operation is necessary for programming or erasing the internal Flash program memory in RTSP mode. The program or erase operation is automatically timed by the device (refer to the specific device data sheet for timing information). Setting the WR bit (NVMCON[15]) starts the operation. The WR bit is automatically cleared when the operation is finished. The CPU stalls until the programming operation is finished. The CPU will not execute any instructions or respond to interrupts during this time. If any interrupts occur during the programming cycle, they will remain pending until the cycle completes. Some dsPIC33/PIC24 devices may provide auxiliary Flash program memory (refer to the “Memory Organization” chapter of the specific device data sheet for details), which allows instruction execution without CPU Stalls while user Flash program memory is being erased and/ or programmed. Conversely, auxiliary Flash program memory can be programmed without CPU Stalls, as long as code is executed from the user Flash program memory. The NVM interrupt can be used to indicate that the programming operation is complete.
గమనిక
- RTSP ఎరేస్ లేదా ప్రోగ్రామింగ్ ఆపరేషన్ జరుగుతున్నప్పుడు POR లేదా BOR ఈవెంట్ సంభవించినట్లయితే, RTSP ఆపరేషన్ వెంటనే నిలిపివేయబడుతుంది. పరికరం రీసెట్ నుండి బయటకు వచ్చిన తర్వాత వినియోగదారు మళ్లీ RTSP ఆపరేషన్ను అమలు చేయాలి.
- RTSP ఎరేస్ లేదా ప్రోగ్రామింగ్ ఆపరేషన్ జరుగుతున్నప్పుడు EXTR, SWR, WDTO, TRAPR, CM లేదా IOPUWR రీసెట్ ఈవెంట్ జరిగితే, RTSP ఆపరేషన్ పూర్తయిన తర్వాత మాత్రమే పరికరం రీసెట్ చేయబడుతుంది.
RTSP ప్రోగ్రామింగ్ అల్గోరిథం
ఈ విభాగం RTSP ప్రోగ్రామింగ్ను వివరిస్తుంది, ఇందులో మూడు ప్రధాన ప్రక్రియలు ఉంటాయి.
సవరించాల్సిన డేటా పేజీ యొక్క RAM చిత్రాన్ని సృష్టిస్తోంది
సవరించాల్సిన డేటా పేజీ యొక్క RAM చిత్రాన్ని రూపొందించడానికి ఈ రెండు దశలను చేయండి:
- ఫ్లాష్ ప్రోగ్రామ్ మెమరీ పేజీని చదవండి మరియు దానిని డేటా "ఇమేజ్"గా డేటా RAMలో నిల్వ చేయండి. RAM చిత్రాన్ని తప్పనిసరిగా పేజీ చిరునామా సరిహద్దు నుండి చదవాలి.
- అవసరమైన విధంగా RAM డేటా చిత్రాన్ని సవరించండి.
Erasing Flash Program Memory
పైన 1 మరియు 2 దశలను పూర్తి చేసిన తర్వాత, ఫ్లాష్ ప్రోగ్రామ్ మెమరీ పేజీని తొలగించడానికి క్రింది నాలుగు దశలను చేయండి:
- దశ 3 నుండి చదివిన ఫ్లాష్ ప్రోగ్రామ్ మెమరీ పేజీని తొలగించడానికి NVMOP[0:3] బిట్లను (NVMCON[0:1]) సెట్ చేయండి.
- NVMADRU మరియు NMVADR రిజిస్టర్లలో తొలగించాల్సిన పేజీ యొక్క ప్రారంభ చిరునామాను వ్రాయండి.
- అంతరాయాలతో నిలిపివేయబడింది:
- a) WR బిట్ (NVMCON[15])ని సెట్ చేయడాన్ని ప్రారంభించడానికి NVMKEY రిజిస్టర్కి కీ క్రమాన్ని వ్రాయండి.
- b) WR బిట్ను సెట్ చేయండి; ఇది ఎరేజ్ సైకిల్ను ప్రారంభిస్తుంది.
- c) రెండు NOP సూచనలను అమలు చేయండి.
- ఎరేస్ సైకిల్ పూర్తయినప్పుడు WR బిట్ క్లియర్ చేయబడుతుంది.
ఫ్లాష్ మెమరీ పేజీని ప్రోగ్రామింగ్ చేస్తోంది
ప్రక్రియ యొక్క తదుపరి భాగం ఫ్లాష్ మెమరీ పేజీని ప్రోగ్రామ్ చేయడం. దశ 1లో సృష్టించబడిన ఇమేజ్ నుండి డేటాను ఉపయోగించి ఫ్లాష్ మెమరీ పేజీ ప్రోగ్రామ్ చేయబడింది. డేటా డబుల్ ఇన్స్ట్రక్షన్ పదాలు లేదా అడ్డు వరుసల ఇంక్రిమెంట్లలో రైట్ లాచ్లకు బదిలీ చేయబడుతుంది. అన్ని పరికరాలు డబుల్ ఇన్స్ట్రక్షన్ వర్డ్ ప్రోగ్రామింగ్ సామర్థ్యాన్ని కలిగి ఉంటాయి. (నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి, మరియు ఏ రకమైన రో ప్రోగ్రామింగ్ అందుబాటులో ఉందో నిర్ణయించడానికి.) వ్రాత లాచెస్ లోడ్ అయిన తర్వాత, ప్రోగ్రామింగ్ ఆపరేషన్ ప్రారంభించబడుతుంది, ఇది డేటాను బదిలీ చేస్తుంది ఫ్లాష్ మెమరీలో లాచెస్ వ్రాయండి. మొత్తం పేజీ ప్రోగ్రామ్ చేయబడే వరకు ఇది పునరావృతమవుతుంది. ఈ క్రింది మూడు దశలను పునరావృతం చేయండి, ఫ్లాష్ పేజీ యొక్క మొదటి సూచన పదం నుండి ప్రారంభించి, మొత్తం పేజీ ప్రోగ్రామ్ చేయబడే వరకు డబుల్ ప్రోగ్రామ్ పదాలు లేదా సూచన వరుసల దశలను పెంచండి:
- వ్రాసే లాచ్లను లోడ్ చేయండి:
- a) TBLPAG రిజిస్టర్ను వ్రాసే లాచెస్ ఉన్న ప్రదేశానికి సూచించడానికి సెట్ చేయండి.
- b) TBLWTL మరియు TBLWTH సూచనల జతలను ఉపయోగించి కావలసిన సంఖ్యలో లాచ్లను లోడ్ చేయండి:
- డబుల్-వర్డ్ ప్రోగ్రామింగ్ కోసం, రెండు జతల TBLWTL మరియు TBLWTH సూచనలు అవసరం
- వరుస ప్రోగ్రామింగ్ కోసం, ప్రతి సూచన పదం వరుస మూలకం కోసం ఒక జత TBLWTL మరియు TBLWTH సూచనలు అవసరం
- ప్రోగ్రామింగ్ ఆపరేషన్ ప్రారంభించండి:
- ఎ) సముచితంగా డబుల్ ఇన్స్ట్రక్షన్ పదాలు లేదా సూచనల వరుసను ప్రోగ్రామ్ చేయడానికి NVMOP[3:0] బిట్లను (NVMCON[3:0]) సెట్ చేయండి.
బి) NVMADRU మరియు NVMADR రిజిస్టర్లలో ప్రోగ్రామ్ చేయవలసిన డబుల్ ఇన్స్ట్రక్షన్ వర్డ్ లేదా ఇన్స్ట్రక్షన్ రో యొక్క మొదటి చిరునామాను వ్రాయండి.
సి) డిసేబుల్ అంతరాయాలతో:
• WR బిట్ (NVMCON[15])ని సెట్ చేయడాన్ని ప్రారంభించడానికి NVMKEY రిజిస్టర్కి కీ క్రమాన్ని వ్రాయండి
• WR బిట్ని సెట్ చేయండి; ఇది ఎరేజ్ సైకిల్ను ప్రారంభిస్తుంది
• రెండు NOP సూచనలను అమలు చేయండి
- ఎ) సముచితంగా డబుల్ ఇన్స్ట్రక్షన్ పదాలు లేదా సూచనల వరుసను ప్రోగ్రామ్ చేయడానికి NVMOP[3:0] బిట్లను (NVMCON[3:0]) సెట్ చేయండి.
- ప్రోగ్రామింగ్ సైకిల్ పూర్తయినప్పుడు WR బిట్ క్లియర్ చేయబడుతుంది.
కావలసిన మొత్తంలో ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామ్ చేయడానికి అవసరమైన మొత్తం ప్రక్రియను పునరావృతం చేయండి.
గమనిక
- RTSPని ఉపయోగించి తొలగించగల ఫ్లాష్ ప్రోగ్రామ్ మెమొరీ యొక్క కనిష్ట మొత్తం ఒక సింగిల్ ఎరేస్డ్ పేజీ అని వినియోగదారు గుర్తుంచుకోవాలి. అందువల్ల, ఎరేస్ సైకిల్ ప్రారంభించే ముందు ఈ స్థానాల యొక్క చిత్రం సాధారణ ప్రయోజన RAMలో నిల్వ చేయబడటం ముఖ్యం.
- ఫ్లాష్ ప్రోగ్రామ్ మెమరీలో అడ్డు వరుస లేదా పదం తొలగించబడటానికి ముందు రెండుసార్లు కంటే ఎక్కువ ప్రోగ్రామ్ చేయరాదు.
- Flash చివరి పేజీలో నిల్వ చేయబడిన కాన్ఫిగరేషన్ బైట్లతో ఉన్న పరికరాలలో, ప్రోగ్రామ్ మెమరీ చివరి పేజీలో పేజీ ఎరేస్ ఆపరేషన్ చేయడం వలన కాన్ఫిగరేషన్ బైట్లు క్లియర్ చేయబడతాయి, ఇది కోడ్ రక్షణను ప్రారంభిస్తుంది. ఈ పరికరాలలో, ఫ్లాష్ మెమరీ చివరి పేజీని తొలగించకూడదు.
ERASING ONE PAGE OF FLASH
Ex లో చూపబడిన కోడ్ సీక్వెన్స్ampఫ్లాష్ ప్రోగ్రామ్ మెమరీ పేజీని చెరిపివేయడానికి le 4-1ని ఉపయోగించవచ్చు. NVMCON రిజిస్టర్ ప్రోగ్రామ్ మెమరీలోని ఒక పేజీని చెరిపేయడానికి కాన్ఫిగర్ చేయబడింది. NVMADR మరియు NMVADRU రిజిస్టర్లు తొలగించాల్సిన పేజీ యొక్క ప్రారంభ చిరునామాతో లోడ్ చేయబడ్డాయి. ప్రోగ్రామ్ మెమరీ తప్పనిసరిగా "సరి" పేజీ చిరునామా సరిహద్దు వద్ద తొలగించబడాలి. ఫ్లాష్ పేజీ పరిమాణాన్ని నిర్ణయించడానికి నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి.
WR బిట్ (NVMCON[15]) సెట్ చేయడానికి ముందు NVMKEY రిజిస్టర్కి ప్రత్యేక అన్లాక్ లేదా కీ సీక్వెన్స్ రాయడం ద్వారా ఎరేస్ ఆపరేషన్ ప్రారంభించబడుతుంది. Ex.లో చూపిన విధంగా అన్లాక్ సీక్వెన్స్ ఖచ్చితమైన క్రమంలో అమలు చేయబడాలిample 4-1, అంతరాయం లేకుండా; కాబట్టి, అంతరాయాలను తప్పనిసరిగా నిలిపివేయాలి.
ఎరేస్ సైకిల్ తర్వాత కోడ్లో రెండు NOP సూచనలను చొప్పించాలి. నిర్దిష్ట పరికరాలలో, కాన్ఫిగరేషన్ బిట్లు ప్రోగ్రామ్ ఫ్లాష్ యొక్క చివరి పేజీలో నిల్వ చేయబడతాయి. ఈ పరికరాలతో, ప్రోగ్రామ్ మెమరీ చివరి పేజీలో పేజీ ఎరేస్ ఆపరేషన్ చేయడం వలన ఫ్లాష్ కాన్ఫిగరేషన్ బైట్లు చెరిపివేయబడతాయి, ఫలితంగా కోడ్ రక్షణను ప్రారంభిస్తుంది. ప్రోగ్రామ్ మెమరీ యొక్క చివరి పేజీలో వినియోగదారులు పేజీని తొలగించే కార్యకలాపాలను నిర్వహించకూడదు.

వ్రాయండి లాచెస్ లోడ్ అవుతోంది
యూజర్ అప్లికేషన్ టేబుల్ రైట్స్ మరియు వాస్తవ ప్రోగ్రామింగ్ సీక్వెన్స్ మధ్య స్టోరేజ్ మెకానిజం వలె రైట్ లాచెస్ ఉపయోగించబడుతుంది. ప్రోగ్రామింగ్ ఆపరేషన్ సమయంలో, పరికరం వ్రాత లాచెస్ నుండి డేటాను ఫ్లాష్ మెమరీకి బదిలీ చేస్తుంది. వరుస ప్రోగ్రామింగ్కు మద్దతు ఇచ్చే పరికరాల కోసం, ఉదాample 4-3 128 రైట్ లాచెస్ (128 సూచన పదాలు) లోడ్ చేయడానికి ఉపయోగించే సూచనల క్రమాన్ని చూపుతుంది. ఫ్లాష్ ప్రోగ్రామ్ మెమరీ వరుసను ప్రోగ్రామింగ్ చేయడానికి రైట్ లాచ్లను లోడ్ చేయడానికి 128 TBLWTL మరియు 128 TBLWTH సూచనలు అవసరం. మీ పరికరంలో అందుబాటులో ఉన్న ప్రోగ్రామింగ్ లాచ్ల సంఖ్యను నిర్ణయించడానికి నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి. వరుస ప్రోగ్రామింగ్కు మద్దతు ఇవ్వని పరికరాల కోసం, ఉదాample 4-4 రెండు వ్రాత లాచెస్ (రెండు సూచనల పదాలు) లోడ్ చేయడానికి ఉపయోగించే సూచనల క్రమాన్ని చూపుతుంది. వ్రాత లాచ్లను లోడ్ చేయడానికి రెండు TBLWTL మరియు రెండు TBLWTH సూచనలు అవసరం.
గమనిక
- Load_Write_Latch_Row కోసం కోడ్ Ex లో చూపబడిందిample 4-3 మరియు Load_Write_Latch_Word కోసం కోడ్ Ex.లో చూపబడిందిample 4-4. ఈ రెండింటిలో కోడ్ examples తదుపరి ex లో సూచించబడిందిampలెస్.
- లాచ్ల సంఖ్య కోసం నిర్దిష్ట పరికర డేటా షీట్ను చూడండి.

సింగిల్ రో ప్రోగ్రామింగ్ EXAMPLE
NVMCON రిజిస్టర్ ఒక వరుస ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామ్ చేయడానికి కాన్ఫిగర్ చేయబడింది. WR బిట్ (NVMCON[15]) సెట్ చేయడానికి ముందు NVMKEY రిజిస్టర్కి ప్రత్యేక అన్లాక్ లేదా కీ సీక్వెన్స్ రాయడం ద్వారా ప్రోగ్రామ్ ఆపరేషన్ ప్రారంభించబడుతుంది. అన్లాక్ క్రమం అంతరాయం లేకుండా అమలు చేయబడాలి మరియు Ex లో చూపిన విధంగా ఖచ్చితమైన క్రమంలో ఉండాలిample 4-5. కాబట్టి, క్రమాన్ని వ్రాయడానికి ముందు అంతరాయాలను తప్పనిసరిగా నిలిపివేయాలి.
గమనిక: అన్ని పరికరాలు వరుస ప్రోగ్రామింగ్ సామర్థ్యాన్ని కలిగి ఉండవు. ఈ ఎంపిక అందుబాటులో ఉందో లేదో తెలుసుకోవడానికి నిర్దిష్ట పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయాన్ని చూడండి.
ప్రోగ్రామింగ్ సైకిల్ తర్వాత కోడ్లో రెండు NOP సూచనలను చొప్పించాలి.

ర్యామ్ బఫర్ని ఉపయోగించి రో ప్రోగ్రామింగ్
dsPIC33 పరికరాలను ఎంచుకోండి, TBLWT సూచనలతో డేటాను బదిలీ చేయడానికి హోల్డింగ్ లాచెస్ ద్వారా కాకుండా, డేటా RAMలోని బఫర్ స్పేస్ నుండి నేరుగా రో ప్రోగ్రామింగ్ను నిర్వహించడానికి అనుమతిస్తుంది. RAM బఫర్ యొక్క స్థానం NVMSRCADR రిజిస్టర్(లు) ద్వారా నిర్ణయించబడుతుంది, ఇది ప్రోగ్రామ్ డేటా యొక్క మొదటి పదాన్ని కలిగి ఉన్న డేటా RAM చిరునామాతో లోడ్ చేయబడుతుంది.
ప్రోగ్రామ్ ఆపరేషన్ చేయడానికి ముందు, RAMలోని బఫర్ స్పేస్ తప్పనిసరిగా ప్రోగ్రామ్ చేయవలసిన డేటా వరుసతో లోడ్ చేయబడాలి. ర్యామ్ను కంప్రెస్డ్ (ప్యాక్డ్) లేదా కంప్రెస్డ్ ఫార్మాట్లో లోడ్ చేయవచ్చు. కంప్రెస్డ్ స్టోరేజ్ రెండు ప్రక్కనే ఉన్న ప్రోగ్రామ్ డేటా పదాల యొక్క అత్యంత ముఖ్యమైన బైట్లను (MSBs) నిల్వ చేయడానికి ఒక డేటా పదాన్ని ఉపయోగిస్తుంది. కంప్రెస్ చేయని ఫార్మాట్ ప్రతి ప్రోగ్రామ్ డేటా వర్డ్ కోసం రెండు డేటా పదాలను ఉపయోగిస్తుంది, ప్రతి ఇతర పదం ఎగువ బైట్ 00h. కంప్రెస్డ్ ఫార్మాట్, కంప్రెస్డ్ ఫార్మాట్తో పోలిస్తే డేటా RAMలో దాదాపు 3/4 స్పేస్ని ఉపయోగిస్తుంది. కంప్రెస్డ్ ఫార్మాట్, మరోవైపు, ఎగువ ఫాంటమ్ బైట్తో పూర్తి అయిన 24-బిట్ ప్రోగ్రామ్ డేటా వర్డ్ యొక్క నిర్మాణాన్ని అనుకరిస్తుంది. డేటా ఫార్మాట్ RPDF బిట్ (NVMCON[9]) ద్వారా ఎంపిక చేయబడింది. ఈ రెండు ఫార్మాట్లు మూర్తి 4-1లో చూపబడ్డాయి.
RAM బఫర్ లోడ్ అయిన తర్వాత, ఫ్లాష్ అడ్రస్ పాయింటర్లు, NVMADR మరియు NVMADRU, వ్రాయవలసిన ఫ్లాష్ అడ్డు వరుస యొక్క 24-బిట్ ప్రారంభ చిరునామాతో లోడ్ చేయబడతాయి. రైట్ లాచ్లను ప్రోగ్రామింగ్ చేసినట్లుగా, ప్రక్రియ NVM అన్లాక్ సీక్వెన్స్ను వ్రాయడం ద్వారా ప్రారంభించబడుతుంది, ఆ తర్వాత WR బిట్ను సెట్ చేస్తుంది. ప్రారంభించిన తర్వాత, పరికరం స్వయంచాలకంగా కుడి లాచ్లను లోడ్ చేస్తుంది మరియు అన్ని బైట్లు ప్రోగ్రామ్ చేయబడే వరకు NVM అడ్రస్ రిజిస్టర్లను ఇంక్రిమెంట్ చేస్తుంది. ఉదాample 4-7 మాజీని చూపుతుందిampప్రక్రియ యొక్క le. NVMSRCADR డేటా అండర్రన్ ఎర్రర్ కండిషన్ సంభవించే విలువకు సెట్ చేయబడితే, పరిస్థితిని సూచించడానికి URERR బిట్ (NVMCON[8]) సెట్ చేయబడుతుంది.
RAM బఫర్ రో ప్రోగ్రామింగ్ను అమలు చేసే పరికరాలు ఒకటి లేదా రెండు రైట్ లాచ్లను కూడా అమలు చేస్తాయి. ఇవి TBLWT సూచనలను ఉపయోగించి లోడ్ చేయబడతాయి మరియు వర్డ్ ప్రోగ్రామింగ్ కార్యకలాపాలను నిర్వహించడానికి ఉపయోగించబడతాయి.
వర్డ్ ప్రోగ్రామింగ్
NVMCON రిజిస్టర్ ఫ్లాష్ ప్రోగ్రామ్ మెమరీ యొక్క రెండు సూచన పదాలను ప్రోగ్రామ్ చేయడానికి కాన్ఫిగర్ చేయబడింది. WR బిట్ (NVMCON[15]) సెట్ చేయడానికి ముందు NVMKEY రిజిస్టర్కి ప్రత్యేక అన్లాక్ లేదా కీ సీక్వెన్స్ రాయడం ద్వారా ప్రోగ్రామ్ ఆపరేషన్ ప్రారంభించబడుతుంది. Ex.లో చూపిన విధంగా అన్లాక్ సీక్వెన్స్ ఖచ్చితమైన క్రమంలో అమలు చేయబడాలిample 4-8, అంతరాయం లేకుండా. కాబట్టి, క్రమాన్ని వ్రాయడానికి ముందు అంతరాయాలను నిలిపివేయాలి.
ప్రోగ్రామింగ్ సైకిల్ తర్వాత కోడ్లో రెండు NOP సూచనలను చొప్పించాలి.

పరికర కాన్ఫిగరేషన్ రిజిస్టర్లకు వ్రాయడం
నిర్దిష్ట పరికరాలలో, కాన్ఫిగరేషన్ బిట్లు కాన్ఫిగరేషన్ మెమరీ స్పేస్లో "డివైస్ కాన్ఫిగరేషన్ రిజిస్టర్లు" అనే విభాగంలో నిల్వ చేయబడతాయి. ఇతర పరికరాలలో, కాన్ఫిగరేషన్ బిట్లు ప్రోగ్రామ్ ఫ్లాష్ యూజర్ మెమరీ స్థలం యొక్క చివరి పేజీలో “ఫ్లాష్ కాన్ఫిగరేషన్ బైట్స్” అనే విభాగంలో నిల్వ చేయబడతాయి. ఈ పరికరాలతో, ప్రోగ్రామ్ మెమరీ యొక్క చివరి పేజీలో పేజీ చెరిపివేత ఆపరేషన్ చేయడం వలన ఫ్లాష్ కాన్ఫిగరేషన్ బైట్లు చెరిపివేయబడతాయి, ఇది కోడ్ రక్షణను ప్రారంభిస్తుంది. కాబట్టి, వినియోగదారులు ప్రోగ్రామ్ మెమరీ చివరి పేజీలో పేజీ ఎరేస్ ఆపరేషన్లను నిర్వహించకూడదు. కాన్ఫిగరేషన్ బిట్లు ఎక్కడ ఉన్నాయో గుర్తించడానికి నిర్దిష్ట పరికర డేటా షీట్లోని "మెమరీ ఆర్గనైజేషన్" అధ్యాయంలోని ప్రోగ్రామ్ మెమరీ మ్యాప్ని చూడండి.
కాన్ఫిగరేషన్ బిట్లు కాన్ఫిగరేషన్ మెమరీ స్పేస్లో నిల్వ చేయబడినప్పుడు, పరికర కాన్ఫిగరేషన్ రిజిస్టర్లకు వ్రాయడానికి RTSP ఉపయోగించబడుతుంది మరియు RTSP ప్రతి కాన్ఫిగరేషన్ రిజిస్టర్ను మొదట ఎరేస్ సైకిల్ చేయకుండా వ్యక్తిగతంగా తిరిగి వ్రాయడానికి అనుమతిస్తుంది. సిస్టమ్ క్లాక్ సోర్స్, PLL మరియు WDT ఎనేబుల్ వంటి క్లిష్టమైన పరికర ఆపరేటింగ్ పారామితులను నియంత్రిస్తుంది కాబట్టి కాన్ఫిగరేషన్ రిజిస్టర్లను వ్రాసేటప్పుడు జాగ్రత్త వహించాలి.
పరికర కాన్ఫిగరేషన్ రిజిస్టర్ని ప్రోగ్రామింగ్ చేసే విధానం ఫ్లాష్ ప్రోగ్రామ్ మెమరీని ప్రోగ్రామింగ్ చేసే విధానాన్ని పోలి ఉంటుంది, TBLWTL సూచనలు మాత్రమే అవసరం. ఎందుకంటే ప్రతి పరికర కాన్ఫిగరేషన్ రిజిస్టర్లోని ఎగువ ఎనిమిది బిట్లు ఉపయోగించబడవు. ఇంకా, కాన్ఫిగరేషన్ రిజిస్టర్లను యాక్సెస్ చేయడానికి టేబుల్ రైట్ అడ్రస్లోని బిట్ 23ని తప్పనిసరిగా సెట్ చేయాలి. పరికర కాన్ఫిగరేషన్ రిజిస్టర్ల పూర్తి వివరణ కోసం "dsPIC70000618/PIC33 ఫ్యామిలీ రిఫరెన్స్ మాన్యువల్"లో "డివైస్ కాన్ఫిగరేషన్" (DS24) మరియు నిర్దిష్ట పరికర డేటా షీట్లోని "ప్రత్యేక ఫీచర్లు" అధ్యాయాన్ని చూడండి.
గమనిక
- పరికర కాన్ఫిగరేషన్ రిజిస్టర్లకు వ్రాయడం అన్ని పరికరాలలో అందుబాటులో లేదు. పరికర-నిర్దిష్ట NVMOP[3:0] బిట్ల నిర్వచనం ప్రకారం అందుబాటులో ఉన్న మోడ్లను గుర్తించడానికి నిర్దిష్ట పరికర డేటా షీట్లోని “ప్రత్యేక లక్షణాలు” అధ్యాయాన్ని చూడండి.
- పరికర కాన్ఫిగరేషన్ రిజిస్టర్లలో RTSP చేస్తున్నప్పుడు, పరికరం తప్పనిసరిగా అంతర్గత FRC ఓసిలేటర్ను (PLL లేకుండా) ఉపయోగించి పని చేస్తుంది. పరికరం వేరొక క్లాక్ సోర్స్ నుండి పనిచేస్తుంటే, పరికర కాన్ఫిగరేషన్ రిజిస్టర్లలో RTSP ఆపరేషన్ చేయడానికి ముందు తప్పనిసరిగా అంతర్గత FRC ఓసిలేటర్ (NOSC[2:0] = 000)కి క్లాక్ స్విచ్ చేయాలి.
- ఓసిలేటర్ కాన్ఫిగరేషన్ రిజిస్టర్ (FOSC)లోని ప్రైమరీ ఓసిలేటర్ మోడ్ సెలెక్ట్ బిట్లు (POSCMD[1:0]) కొత్త విలువకు రీప్రోగ్రామ్ చేయబడుతుంటే, వినియోగదారు తప్పనిసరిగా క్లాక్ స్విచింగ్ మోడ్ బిట్లను (FCKSM[1:0]) లో ఉండేలా చూసుకోవాలి. FOSC రిజిస్టర్ ఈ RTSP ఆపరేషన్ చేయడానికి ముందు '0' యొక్క ప్రారంభ ప్రోగ్రామ్ చేయబడిన విలువను కలిగి ఉంటుంది.
కాన్ఫిగరేషన్ రిజిస్టర్ రైట్ అల్గోరిథం
సాధారణ విధానం క్రింది విధంగా ఉంది:
- TBLWTL సూచనను ఉపయోగించి టేబుల్ రైట్ లాచ్కి కొత్త కాన్ఫిగరేషన్ విలువను వ్రాయండి.
- కాన్ఫిగరేషన్ రిజిస్టర్ రైట్ కోసం NVMCONని కాన్ఫిగర్ చేయండి (NVMCON = 0x4000).
- NVMADRU మరియు NVMADR రిజిస్టర్లలో ప్రోగ్రామ్ చేయవలసిన కాన్ఫిగరేషన్ రిజిస్టర్ చిరునామాను వ్రాయండి.
- ప్రారంభించబడితే, అంతరాయాలను నిలిపివేయండి.
- NVMKEY రిజిస్టర్కి కీ క్రమాన్ని వ్రాయండి.
- WR బిట్ (NVMCON[15]) సెట్ చేయడం ద్వారా రైట్ సీక్వెన్స్ను ప్రారంభించండి.
- అవసరమైతే, అంతరాయాలను మళ్లీ ప్రారంభించండి.
Example 4-10 పరికర కాన్ఫిగరేషన్ రిజిస్టర్ను సవరించడానికి ఉపయోగించే కోడ్ క్రమాన్ని చూపుతుంది.
రిజిస్టర్ మ్యాప్
ఫ్లాష్ ప్రోగ్రామింగ్తో అనుబంధించబడిన రిజిస్టర్ల సారాంశం టేబుల్ 5-1లో అందించబడింది.
ఈ విభాగం మాన్యువల్లోని ఈ విభాగానికి సంబంధించిన అప్లికేషన్ నోట్లను జాబితా చేస్తుంది. ఈ అప్లికేషన్ నోట్స్ ప్రత్యేకంగా dsPIC33/PIC24 ఉత్పత్తి కుటుంబాల కోసం వ్రాయబడకపోవచ్చు, కానీ భావనలు సంబంధితంగా ఉంటాయి మరియు సవరణలు మరియు సాధ్యమైన పరిమితులతో ఉపయోగించవచ్చు. ఫ్లాష్ ప్రోగ్రామింగ్కు సంబంధించిన ప్రస్తుత అప్లికేషన్ నోట్స్:
గమనిక: దయచేసి మైక్రోచిప్ని సందర్శించండి webసైట్ (www.microchip.com) అదనపు అప్లికేషన్ నోట్స్ మరియు కోడ్ కోసంampపరికరాల dsPIC33/PIC24 కుటుంబాలకు les.
పునర్విమర్శ చరిత్ర
పునర్విమర్శ A (ఆగస్టు 2009)
ఇది ఈ పత్రం యొక్క ప్రారంభ విడుదల వెర్షన్.
పునర్విమర్శ B (ఫిబ్రవరి 2011)
ఈ పునర్విమర్శ కింది నవీకరణలను కలిగి ఉంది:
- Exampతక్కువ:
- తీసివేయబడిన మాజీample 5-3 మరియు Exampలే 5-4
- నవీకరించబడిన Example 4-1, ఉదాample 4-5 మరియు Exampలే 4-10
- #WRకి సంబంధించిన ఏవైనా సూచనలు Ex.లో #15కి నవీకరించబడ్డాయిample 4-1, ఉదాample 4-5 మరియు Exampలే 4-8
- ఉదా.లో కింది వాటిని నవీకరించారుample 4-3:
- “వర్డ్ ప్రోగ్రామింగ్” శీర్షిక “వరుస ప్రోగ్రామింగ్ కోసం రైట్ లాచెస్ లోడ్ అవుతోంది”కి నవీకరించబడింది
- #ram_imageకి సంబంధించిన ఏదైనా సూచన #0xFAకి నవీకరించబడింది
- మాజీ జోడించబడిందిampలే 4-4
- Ex లో టైటిల్ అప్డేట్ చేయబడిందిampలే 4-8
- గమనికలు:
- విభాగం 4.2 “ఫ్లాష్ ప్రోగ్రామింగ్ ఆపరేషన్స్”లో రెండు గమనికలు జోడించబడ్డాయి
- సెక్షన్ 4.5.2 “వ్రైట్ లాచెస్ లోడ్ అవుతోంది”లో నోట్ అప్డేట్ చేయబడింది
- విభాగం 4.6 “పరికర కాన్ఫిగరేషన్ రిజిస్టర్లకు వ్రాయడం”లో మూడు గమనికలు జోడించబడ్డాయి
- పట్టిక 1-5లో గమనిక 1 జోడించబడింది
- రిజిస్టర్లు:
- NVMOP[3:0] కోసం బిట్ విలువలు నవీకరించబడ్డాయి: NVM ఆపరేషన్ ఫ్లాష్ మెమరీ కంట్రోల్ (NVMCON) రిజిస్టర్లో బిట్లను ఎంచుకోండి (రిజిస్టర్ 3-1 చూడండి)
- విభాగాలు:
- తీసివేయబడిన విభాగాలు 5.2.1.4 “వ్రైట్ వర్డ్ మోడ్” మరియు 5.2.1.5 “రైట్ బైట్ మోడ్”
- నవీకరించబడిన విభాగం 3.0 “కంట్రోల్ రిజిస్టర్లు”
- విభాగం 4.5.5 “వర్డ్ ప్రోగ్రామింగ్”లో కిందివి నవీకరించబడ్డాయి:
- “ప్రోగ్రామింగ్ వన్ వర్డ్ ఆఫ్ ఫ్లాష్ మెమరీ” అనే విభాగం శీర్షికను “వర్డ్ ప్రోగ్రామింగ్”గా మార్చారు
- మొదటి పేరా నవీకరించబడింది
- రెండవ పేరాలో "ఒక పదం" అనే పదాలను "ఒక జత పదాలు"గా మార్చారు
- విభాగం 1 “కాన్ఫిగరేషన్ రిజిస్టర్ రైట్ అల్గారిథమ్”కి కొత్త దశ 4.6.1 జోడించబడింది
- పట్టికలు:
- పట్టిక 5-1 నవీకరించబడింది
- ప్రోగ్రామ్ మెమరీకి సంబంధించిన కొన్ని సూచనలు ఫ్లాష్ ప్రోగ్రామ్ మెమరీకి నవీకరించబడ్డాయి
- భాష మరియు ఫార్మాటింగ్ అప్డేట్లు వంటి ఇతర చిన్న అప్డేట్లు పత్రం అంతటా చేర్చబడ్డాయి
పునర్విమర్శ సి (జూన్ 2011)
ఈ పునర్విమర్శ కింది నవీకరణలను కలిగి ఉంది:
- Exampతక్కువ:
- నవీకరించబడిన Exampలే 4-1
- నవీకరించబడిన Exampలే 4-8
- గమనికలు:
- విభాగం 4.1 “RTSP ఆపరేషన్”లో గమనిక జోడించబడింది
- విభాగం 3 “ఫ్లాష్ ప్రోగ్రామింగ్ ఆపరేషన్స్”లో గమనిక 4.2 జోడించబడింది
- విభాగం 3 “RTSP ప్రోగ్రామింగ్ అల్గోరిథం”లో గమనిక 4.2.1 జోడించబడింది
- Added a note in Section 4.5.1 “Erasing One Page of Flash”
- విభాగం 2 “వ్రైట్ లాచెస్ లోడ్ అవుతోంది”లో గమనిక 4.5.2 జోడించబడింది
- రిజిస్టర్లు:
- నాన్వోలేటైల్ మెమరీ అడ్రస్ రిజిస్టర్లో బిట్లు 15-0 కోసం బిట్ వివరణ నవీకరించబడింది (రిజిస్టర్ 3-3 చూడండి)
- విభాగాలు:
- నవీకరించబడిన విభాగం 4.1 “RTSP ఆపరేషన్”
- నవీకరించబడిన విభాగం 4.5.5 “వర్డ్ ప్రోగ్రామింగ్”
- భాష మరియు ఫార్మాటింగ్ అప్డేట్లు వంటి ఇతర చిన్న అప్డేట్లు పత్రం అంతటా చేర్చబడ్డాయి
పునర్విమర్శ D (డిసెంబర్ 2011)
ఈ పునర్విమర్శ కింది నవీకరణలను కలిగి ఉంది:
- నవీకరించబడిన విభాగం 2.1.3 “టేబుల్ రైట్ లాచెస్”
- నవీకరించబడిన విభాగం 3.2 “NVMKEY రిజిస్టర్”
- NVMCONలో గమనికలు నవీకరించబడ్డాయి: ఫ్లాష్ మెమరీ నియంత్రణ రిజిస్టర్ (రిజిస్టర్ 3-1 చూడండి)
- విభాగం 4.0 “రన్-టైమ్ సెల్ఫ్-ప్రోగ్రామింగ్ (RTSP)” అంతటా విస్తృతమైన నవీకరణలు చేయబడ్డాయి.
- భాష మరియు ఫార్మాటింగ్ అప్డేట్లు వంటి ఇతర చిన్న అప్డేట్లు పత్రం అంతటా చేర్చబడ్డాయి
పునర్విమర్శ E (అక్టోబర్ 2018)
ఈ పునర్విమర్శ కింది నవీకరణలను కలిగి ఉంది:
- మాజీ జోడించబడిందిample 2-2, ఉదాample 4-2, ఉదాample 4-6 మరియు Exampలే 4-9
- విభాగం 4.5.4 జోడించబడింది “RAM బఫర్ని ఉపయోగించి రో ప్రోగ్రామింగ్”
- నవీకరించబడిన విభాగం 1.0 “పరిచయం”, విభాగం 3.3 “NVM చిరునామా రిజిస్టర్లు”, విభాగం 4.0 “రన్-టైమ్ సెల్ఫ్-ప్రోగ్రామింగ్ (RTSP)” మరియు విభాగం 4.5.3 “సింగిల్ రో ప్రోగ్రామింగ్ ఎక్స్ampలే ”
- రిజిస్టర్ 3-1 నవీకరించబడింది
- నవీకరించబడిన Exampలే 4-7
- పట్టిక 5-1 నవీకరించబడింది
పునర్విమర్శ F (నవంబర్ 2021)
విభాగం 3.2.1 “అంతరాయాలను నిలిపివేయడం” జోడించబడింది.
నవీకరించబడిన Example 3-1, ఉదాample 4-1, ఉదాample 4-2, ఉదాample 4-5, ఉదాample 4-6, ఉదాample 4-7, ఉదాample 4-8, ఉదాample 4-9 మరియు Example 4-10.
Updated Section 3.2 “NVMKEY Register”, Section 4.5.1 “Erasing One Page of Flash”, Section 4.5.3 “Single Row Programming Example” మరియు విభాగం 4.6.1 “కాన్ఫిగరేషన్ రిజిస్టర్ రైట్ అల్గోరిథం”.
మైక్రోచిప్ ఉత్పత్తులపై కోడ్ రక్షణ ఫీచర్ యొక్క క్రింది వివరాలను గమనించండి:
- మైక్రోచిప్ ఉత్పత్తులు వాటి నిర్దిష్ట మైక్రోచిప్ డేటా షీట్లో ఉన్న స్పెసిఫికేషన్లకు అనుగుణంగా ఉంటాయి.
- మైక్రోచిప్ దాని ఉత్పత్తుల కుటుంబాన్ని ఉద్దేశించిన పద్ధతిలో, ఆపరేటింగ్ స్పెసిఫికేషన్లలో మరియు సాధారణ పరిస్థితులలో ఉపయోగించినప్పుడు సురక్షితంగా ఉంటుందని నమ్ముతుంది.
- మైక్రోచిప్ దాని మేధో సంపత్తి హక్కులకు విలువ ఇస్తుంది మరియు దూకుడుగా రక్షిస్తుంది. మైక్రోచిప్ ఉత్పత్తి యొక్క కోడ్ రక్షణ లక్షణాలను ఉల్లంఘించే ప్రయత్నాలు ఖచ్చితంగా నిషేధించబడ్డాయి మరియు డిజిటల్ మిలీనియం కాపీరైట్ చట్టాన్ని ఉల్లంఘించవచ్చు.
- మైక్రోచిప్ లేదా ఏ ఇతర సెమీకండక్టర్ తయారీదారు దాని కోడ్ యొక్క భద్రతకు హామీ ఇవ్వలేరు. కోడ్ రక్షణ అంటే ఉత్పత్తి "అన్బ్రేకబుల్" అని మేము హామీ ఇస్తున్నామని కాదు. కోడ్ రక్షణ నిరంతరం అభివృద్ధి చెందుతోంది. మైక్రోచిప్ మా ఉత్పత్తుల యొక్క కోడ్ రక్షణ లక్షణాలను నిరంతరం మెరుగుపరచడానికి కట్టుబడి ఉంది
మీ అప్లికేషన్తో మైక్రోచిప్ ఉత్పత్తులను డిజైన్ చేయడం, పరీక్షించడం మరియు ఇంటిగ్రేట్ చేయడంతో సహా ఈ ప్రచురణ మరియు ఇక్కడ ఉన్న సమాచారం మైక్రోచిప్ ఉత్పత్తులతో మాత్రమే ఉపయోగించబడుతుంది. ఈ సమాచారాన్ని ఏదైనా ఇతర పద్ధతిలో ఉపయోగించడం ఈ నిబంధనలను ఉల్లంఘిస్తుంది. పరికర అనువర్తనాలకు సంబంధించిన సమాచారం మీ సౌలభ్యం కోసం మాత్రమే అందించబడింది మరియు నవీకరణల ద్వారా భర్తీ చేయబడవచ్చు. మీ అప్లికేషన్ మీ స్పెసిఫికేషన్లకు అనుగుణంగా ఉండేలా చూసుకోవడం మీ బాధ్యత. అదనపు మద్దతు కోసం మీ స్థానిక మైక్రోచిప్ విక్రయాల కార్యాలయాన్ని సంప్రదించండి లేదా అదనపు మద్దతును పొందండి https://www.microchip.com/en-us/support/design-help/client-supportservices.
ఈ సమాచారం మైక్రోచిప్ ద్వారా అందించబడుతుంది. MICROCHIP ఏ విధమైన ప్రాతినిధ్యాలు లేదా వారెంటీలు చేయదు, వ్యక్తీకరించినా లేదా సూచించినా, వ్రాతపూర్వకంగా లేదా మౌఖికంగా, చట్టబద్ధంగా లేదా ఇతరత్రా, దానితో పాటుగా పేర్కొన్న సమాచారంతో సంబంధం కలిగి ఉంటుంది ప్రత్యేక ప్రయోజనం కోసం ఉల్లంఘన, వ్యాపారం మరియు ఫిట్నెస్ లేదా వాటికి సంబంధించిన వారెంటీలు దాని పరిస్థితి, నాణ్యత లేదా పనితీరు. ఎట్టి పరిస్థితుల్లోనూ మైక్రోచిప్ ఏదైనా పరోక్ష, ప్రత్యేక, శిక్షాత్మక, యాదృచ్ఛిక లేదా తత్ఫలిత నష్టం, నష్టం, ఖర్చు, లేదా వాటికి సంబంధించిన ఏదైనా వ్యయానికి బాధ్యత వహించదు మైక్రోచిప్కు సలహా ఇచ్చినప్పటికీ, ఉపయోగించబడింది సంభావ్యత లేదా నష్టాలు ఊహించదగినవి. చట్టం ద్వారా అనుమతించబడిన పూర్తి స్థాయిలో, సమాచారం లేదా దాని ఉపయోగం సంబంధిత అన్ని క్లెయిమ్లపై మైక్రోచిప్ యొక్క మొత్తం బాధ్యత, ఆ మేరకు ఫీడ్ల మొత్తాన్ని మించదు. సమాచారం కోసం రోచిప్.
లైఫ్ సపోర్ట్ మరియు/లేదా సేఫ్టీ అప్లికేషన్లలో మైక్రోచిప్ పరికరాలను ఉపయోగించడం పూర్తిగా కొనుగోలుదారు యొక్క రిస్క్పై ఆధారపడి ఉంటుంది మరియు అటువంటి ఉపయోగం వల్ల కలిగే ఏదైనా మరియు అన్ని నష్టాలు, దావాలు, దావాలు లేదా ఖర్చుల నుండి హానిచేయని మైక్రోచిప్ను రక్షించడానికి, నష్టపరిహారం ఇవ్వడానికి మరియు ఉంచడానికి కొనుగోలుదారు అంగీకరిస్తాడు. ఏదైనా మైక్రోచిప్ మేధో సంపత్తి హక్కుల క్రింద పేర్కొనబడినంత వరకు ఎటువంటి లైసెన్స్లు పరోక్షంగా లేదా ఇతరత్రా తెలియజేయబడవు.
మైక్రోచిప్ యొక్క నాణ్యత నిర్వహణ వ్యవస్థలకు సంబంధించిన సమాచారం కోసం, దయచేసి సందర్శించండి www.microchip.com/qualitty.
ట్రేడ్మార్క్లు
మైక్రోచిప్ పేరు మరియు లోగో, మైక్రోచిప్ లోగో, అడాప్టెక్, ఎనీ రేట్, AVR, AVR లోగో, AVR FREAKS, BESTIME, BITCLOUD, CRYPTOMEMORY, CRYPTORF, DSPIC, FLECTPWR, HOLDO maXTouch, MediaLB, megaAVR, మైక్రోసెమి, మైక్రోసెమి లోగో, మోస్ట్, మోస్ట్ లోగో, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 లోగో, PolarFire, Prochip డిజైనర్, QTouch, SAM-BA, SFyNSTGO, SFyNSTGO, ST , Symmetricom, SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron మరియు XMEGAలు USA మరియు ఇతర దేశాలలో విలీనం చేయబడిన మైక్రోచిప్ టెక్నాలజీ యొక్క నమోదిత ట్రేడ్మార్క్లు. AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProICASIC ప్లస్, ప్రో క్యూయాసిక్ ప్లస్ SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath మరియు ZL అనేవి USAలో విలీనం చేయబడిన మైక్రోచిప్ టెక్నాలజీ యొక్క రిజిస్టర్డ్ ట్రేడ్మార్క్లు.
ప్రక్కనే ఉన్న కీ సప్రెషన్, AKS, అనలాగ్-ఫర్-ది-డిజిటల్ ఏజ్, ఏదైనా కెపాసిటర్, AnyIn, AnyOut, ఆగ్మెంటెడ్ స్విచింగ్, BlueSky, BodyCom, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, DMICDE, CryptoCompanion, DMICDEMDS , ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, ఇన్-సర్క్యూట్ సీరియల్ ప్రోగ్రామింగ్, ICSP, INICnet, ఇంటెలిజెంట్ ప్యారలలింగ్, ఇంటర్-చిప్ కనెక్టివిటీ, JitterBlocker, Knob-on-Display, maxCrypto,View, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB సర్టిఫైడ్ లోగో, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM ఎక్స్ప్రెస్, NVMe, సర్వజ్ఞుడు కోడ్ జనరేషన్, PICDEM, PICDEM.net, PICkit, PICtail, PICtail, Powersilt, Powersilt, PowerSilt, , అలల బ్లాకర్, RTAX, RTG4, SAM-ICE, సీరియల్ క్వాడ్ I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, USB ChTS ఎన్హెచ్హెచ్ఆర్సి, మొత్తం వరిసెన్స్, వెక్టర్బ్లాక్స్, వెరిఫీ, ViewSpan, WiperLock, XpressConnect మరియు ZENA USA మరియు ఇతర దేశాలలో విలీనం చేయబడిన మైక్రోచిప్ టెక్నాలజీ యొక్క ట్రేడ్మార్క్లు.
SQTP అనేది USAలో విలీనం చేయబడిన మైక్రోచిప్ టెక్నాలజీ యొక్క సేవా చిహ్నం
Adaptec లోగో, ఫ్రీక్వెన్సీ ఆన్ డిమాండ్, సిలికాన్ స్టోరేజ్ టెక్నాలజీ, Symmcom మరియు విశ్వసనీయ సమయం ఇతర దేశాలలో మైక్రోచిప్ టెక్నాలజీ Inc. యొక్క రిజిస్టర్డ్ ట్రేడ్మార్క్లు.
GestIC అనేది ఇతర దేశాలలో మైక్రోచిప్ టెక్నాలజీ ఇంక్. యొక్క అనుబంధ సంస్థ అయిన మైక్రోచిప్ టెక్నాలజీ జర్మనీ II GmbH & Co. KG యొక్క నమోదిత ట్రేడ్మార్క్.
ఇక్కడ పేర్కొన్న అన్ని ఇతర ట్రేడ్మార్క్లు వారి సంబంధిత కంపెనీల ఆస్తి.
© 2009-2021, మైక్రోచిప్ టెక్నాలజీ ఇన్కార్పొరేటెడ్ మరియు దాని అనుబంధ సంస్థలు.
సర్వ హక్కులు ప్రత్యేకించబడినవి.
ISBN: 978-1-5224-9314-3
ప్రపంచవ్యాప్త అమ్మకాలు మరియు సేవ
అమెరికా
- కార్పొరేట్ కార్యాలయం
2355 వెస్ట్ చాండ్లర్ Blvd.
చాండ్లర్, AZ 85224-6199
టెలి: 480-792-7200
ఫ్యాక్స్: 480-792-7277
సాంకేతిక మద్దతు: http://www.microchip.com/
మద్దతు Web చిరునామా: www.microchip.com - అట్లాంటా
డులుత్, GA
టెలి: 678-957-9614
ఫ్యాక్స్: 678-957-1455 - ఆస్టిన్, TX
టెలి: 512-257-3370 - బోస్టన్
వెస్ట్బరో, MA
టెలి: 774-760-0087
ఫ్యాక్స్: 774-760-0088 - చికాగో
ఇటాస్కా, IL
టెలి: 630-285-0071
ఫ్యాక్స్: 630-285-0075 - డల్లాస్
అడిసన్, TX
టెలి: 972-818-7423
ఫ్యాక్స్: 972-818-2924 - డెట్రాయిట్
నోవి, MI
టెలి: 248-848-4000 - హ్యూస్టన్, TX
టెలి: 281-894-5983 - ఇండియానాపోలిస్
నోబుల్స్విల్లే, IN
టెలి: 317-773-8323
ఫ్యాక్స్: 317-773-5453
టెలి: 317-536-2380 - లాస్ ఏంజిల్స్
మిషన్ వీజో, CA
టెలి: 949-462-9523
ఫ్యాక్స్: 949-462-9608
టెలి: 951-273-7800 - రాలీ, NC
టెలి: 919-844-7510 - న్యూయార్క్, NY
టెలి: 631-435-6000 - శాన్ జోస్, CA
టెలి: 408-735-9110
టెలి: 408-436-4270 - కెనడా - టొరంటో
టెలి: 905-695-1980
ఫ్యాక్స్: 905-695-2078
ASIA/PACIFIC
- ఆస్ట్రేలియా - సిడ్నీ
టెలి: 61-2-9868-6733 - చైనా - బీజింగ్
టెలి: 86-10-8569-7000 - చైనా - చెంగ్డు
టెలి: 86-28-8665-5511 - చైనా - చాంగ్కింగ్
టెలి: 86-23-8980-9588 - చైనా - డాంగువాన్
టెలి: 86-769-8702-9880 - చైనా - గ్వాంగ్జౌ
టెలి: 86-20-8755-8029 - చైనా - హాంగ్జౌ
టెలి: 86-571-8792-8115 - చైనా - హాంకాంగ్ SAR
టెలి: 852-2943-5100 - చైనా - నాన్జింగ్
టెలి: 86-25-8473-2460 - చైనా - కింగ్డావో
టెలి: 86-532-8502-7355 - చైనా - షాంఘై
టెలి: 86-21-3326-8000 - చైనా - షెన్యాంగ్
టెలి: 86-24-2334-2829 - చైనా - షెన్జెన్
టెలి: 86-755-8864-2200 - చైనా - సుజౌ
టెలి: 86-186-6233-1526 - చైనా - వుహాన్
టెలి: 86-27-5980-5300 - చైనా - జియాన్
టెలి: 86-29-8833-7252 - చైనా - జియామెన్
టెలి: 86-592-2388138 - చైనా - జుహై
టెలి: 86-756-3210040 - భారతదేశం - బెంగళూరు
టెలి: 91-80-3090-4444 - భారతదేశం - న్యూఢిల్లీ
టెలి: 91-11-4160-8631 - భారతదేశం - పూణే
టెలి: 91-20-4121-0141 - జపాన్ - ఒసాకా
టెలి: 81-6-6152-7160 - జపాన్ - టోక్యో
టెలి: 81-3-6880- 3770 - కొరియా - డేగు
టెలి: 82-53-744-4301 - కొరియా - సియోల్
టెలి: 82-2-554-7200 - మలేషియా - కౌలాలంపూర్
టెలి: 60-3-7651-7906 - మలేషియా - పెనాంగ్
టెలి: 60-4-227-8870 - ఫిలిప్పీన్స్ - మనీలా
టెలి: 63-2-634-9065 - సింగపూర్
టెలి: 65-6334-8870 - తైవాన్ - హ్సిన్ చు
టెలి: 886-3-577-8366 - తైవాన్ - Kaohsiung
టెలి: 886-7-213-7830 - తైవాన్ - తైపీ
టెలి: 886-2-2508-8600 - థాయిలాండ్ - బ్యాంకాక్
టెలి: 66-2-694-1351 - వియత్నాం - హో చి మిన్
టెలి: 84-28-5448-2100
యూరోప్
- ఆస్ట్రియా - వెల్స్
టెలి: 43-7242-2244-39
ఫ్యాక్స్: 43-7242-2244-393 - డెన్మార్క్ - కోపెన్హాగన్
టెలి: 45-4485-5910
ఫ్యాక్స్: 45-4485-2829 - ఫిన్లాండ్ - ఎస్పూ
టెలి: 358-9-4520-820 - ఫ్రాన్స్ - పారిస్
టెలి: 33-1-69-53-63-20
ఫ్యాక్స్: 33-1-69-30-90-79 - జర్మనీ - గార్చింగ్
టెలి: 49-8931-9700 - జర్మనీ - హాన్
టెలి: 49-2129-3766400 - జర్మనీ - హీల్బ్రోన్
టెలి: 49-7131-72400 - జర్మనీ - కార్ల్స్రూ
టెలి: 49-721-625370 - జర్మనీ - మ్యూనిచ్
టెలి: 49-89-627-144-0
ఫ్యాక్స్: 49-89-627-144-44 - జర్మనీ - రోసెన్హీమ్
టెలి: 49-8031-354-560 - ఇటలీ - మిలన్
టెలి: 39-0331-742611
ఫ్యాక్స్: 39-0331-466781 - ఇటలీ - పడోవా
టెలి: 39-049-7625286 - నెదర్లాండ్స్ - డ్రునెన్
టెలి: 31-416-690399
ఫ్యాక్స్: 31-416-690340 - నార్వే - ట్రోండ్హీమ్
టెలి: 47-7288-4388 - పోలాండ్ - వార్సా
టెలి: 48-22-3325737 - రొమేనియా - బుకారెస్ట్
టెలి: 40-21-407-87-50 - స్పెయిన్ - మాడ్రిడ్
టెలి: 34-91-708-08-90
ఫ్యాక్స్: 34-91-708-08-91 - స్వీడన్ - గోథెన్బర్గ్
టెలి: 46-31-704-60-40 - స్వీడన్ - స్టాక్హోమ్
టెలి: 46-8-5090-4654 - UK - వోకింగ్హామ్
టెలి: 44-118-921-5800
ఫ్యాక్స్: 44-118-921-5820
గమనిక:
ఈ కుటుంబ సూచన మాన్యువల్ విభాగం పరికర డేటా షీట్లకు పూరకంగా ఉపయోగపడుతుంది. పరికర వేరియంట్పై ఆధారపడి, ఈ మాన్యువల్ విభాగం అన్ని dsPIC33/PIC24 పరికరాలకు వర్తించకపోవచ్చు. మీరు ఉపయోగిస్తున్న పరికరానికి ఈ పత్రం మద్దతు ఇస్తుందో లేదో తనిఖీ చేయడానికి దయచేసి ప్రస్తుత పరికర డేటా షీట్లోని “ఫ్లాష్ ప్రోగ్రామ్ మెమరీ” అధ్యాయం ప్రారంభంలో ఉన్న గమనికను సంప్రదించండి.
మైక్రోచిప్ వరల్డ్వైడ్ నుండి డౌన్లోడ్ చేసుకోవడానికి పరికర డేటా షీట్లు మరియు ఫ్యామిలీ రిఫరెన్స్ మాన్యువల్ విభాగాలు అందుబాటులో ఉన్నాయి Webసైట్: http://www.microchip.com.
పత్రాలు / వనరులు
![]() |
మైక్రోచిప్ PIC24 ఫ్లాష్ ప్రోగ్రామింగ్ [pdf] యూజర్ గైడ్ PIC24 ఫ్లాష్ ప్రోగ్రామింగ్, PIC24, ఫ్లాష్ ప్రోగ్రామింగ్, ప్రోగ్రామింగ్ |
![]() |
మైక్రోచిప్ PIC24 ఫ్లాష్ ప్రోగ్రామింగ్ [pdf] యూజర్ గైడ్ PIC24 ఫ్లాష్ ప్రోగ్రామింగ్, PIC24, ఫ్లాష్ ప్రోగ్రామింగ్ |






