မိုက်ခရိုချီ-လိုဂို

MICROCHIP PIC24 Flash ပရိုဂရမ်ရေးဆွဲခြင်း။

MICROCHIP-PIC24-Flash-Programming-PRO

ထုတ်ကုန်အချက်အလက်

Flash Programming
စက်များ၏ dsPIC33/PIC24 မိသားစုများတွင် သုံးစွဲသူကုဒ်ကို လုပ်ဆောင်ရန်အတွက် အတွင်းပိုင်း ပရိုဂရမ်ထုတ်နိုင်သော Flash ပရိုဂရမ်မှတ်ဉာဏ်တစ်ခု ရှိသည်။ ဤမှတ်ဉာဏ်ကို ပရိုဂရမ်ပြုလုပ်ရန် နည်းလမ်းသုံးမျိုးအထိ ရှိပါသည်။

  • ဇယား ညွှန်ကြားချက် လုပ်ဆောင်ချက်
  • In-Circuit Serial Programming (ICSP)
  • In-Application Programming (IAP)

ဇယားလမ်းညွှန်ချက်များသည် Flash ပရိုဂရမ်မှတ်ဉာဏ်နေရာနှင့် dsPIC33/PIC24 စက်ပစ္စည်းများ၏ ဒေတာမှတ်ဉာဏ်နေရာအကြား ဒေတာလွှဲပြောင်းခြင်းနည်းလမ်းကို ပေးပါသည်။ TBLRDL ညွှန်ကြားချက်ကို ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[15:0] မှ ဖတ်ရန် အသုံးပြုသည်။ TBLWTL ညွှန်ကြားချက်ကို Flash ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[15:0] သို့ရေးရန် အသုံးပြုသည်။ TBLRDL နှင့် TBLWTL သည် Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို Word မုဒ် သို့မဟုတ် Byte မုဒ်တွင် အသုံးပြုနိုင်သည်။

Flash ပရိုဂရမ်မမ်မိုရီလိပ်စာအပြင်၊ ဇယားလမ်းညွှန်တွင် W register (သို့မဟုတ် W Register Pointer to a memory location) ကိုသတ်မှတ်ပေးသည် memory ဖတ်တယ်။

ဤအပိုင်းသည် Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ပရိုဂရမ်ရေးဆွဲခြင်းနည်းပညာကို ဖော်ပြသည်။ စက်များ၏ dsPIC33/ PIC24 မိသားစုများတွင် သုံးစွဲသူကုဒ်ကို လုပ်ဆောင်ရန်အတွက် အတွင်းပိုင်း ပရိုဂရမ်ထုတ်နိုင်သော Flash ပရိုဂရမ်မှတ်ဉာဏ်တစ်ခု ရှိသည်။ ဤမှတ်ဉာဏ်ကို ပရိုဂရမ်ပြုလုပ်ရန် နည်းလမ်းသုံးမျိုးအထိ ရှိပါသည်။

  • Run-Time Self-Programming (RTSP)
  • In-Circuit Serial Programming™ (ICSP™)
  • ပိုမိုကောင်းမွန်သော ပတ်လမ်းအတွင်း အမှတ်စဉ် ပရိုဂရမ်ရေးဆွဲခြင်း (EICSP)

RTSP ကို ​​လုပ်ဆောင်နေစဉ်အတွင်း အပလီကေးရှင်းဆော့ဖ်ဝဲက လုပ်ဆောင်နေပြီး ICSP နှင့် EICSP တို့ကို စက်ပစ္စည်းနှင့် နံပါတ်စဉ်ဒေတာချိတ်ဆက်မှုအား အသုံးပြုကာ ပြင်ပပရိုဂရမ်မာတစ်ဦးမှ လုပ်ဆောင်သည်။ ICSP နှင့် EICSP သည် RTSP ထက် ပရိုဂရမ်ရေးဆွဲချိန် ပိုမိုမြန်ဆန်စေသည်။ RTSP နည်းပညာများကို အပိုင်း 4.0 “Run-Time Self-Programming (RTSP)” တွင် ဖော်ပြထားပါသည်။ ICSP နှင့် EICSP ပရိုတိုကောများကို Microchip မှဒေါင်းလုဒ်လုပ်နိုင်သော သက်ဆိုင်ရာစက်ပစ္စည်းများအတွက် Programming Specification စာရွက်စာတမ်းများတွင် သတ်မှတ်ထားပါသည်။ webဆိုဒ် (http://www.microchip.com) C language ဖြင့် ပရိုဂရမ်ရေးဆွဲသည့်အခါ Flash ပရိုဂရမ်းမင်းကို လွယ်ကူချောမွေ့စေမည့် ပါ၀င်သည့်လုပ်ဆောင်ချက်များစွာကို ရရှိနိုင်သည်။ Built-in လုပ်ဆောင်ချက်များနှင့်ပတ်သက်သော အသေးစိတ်အချက်အလက်များအတွက် “MPLAB® XC16 C Compiler User's Guide” (DS50002071) ကို ကြည့်ပါ။

ထုတ်ကုန်အသုံးပြုမှု ညွှန်ကြားချက်များ

Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ပရိုဂရမ်ပြုလုပ်ရန်၊ အောက်ပါအဆင့်များကို လိုက်နာပါ-

  1. မိသားစုကိုးကားချက်လက်စွဲအပိုင်းသည် သင်အသုံးပြုနေသည့်စက်ပစ္စည်းကို ထောက်ခံမှုရှိမရှိ စစ်ဆေးရန် စက်ဒေတာစာရွက်ကို ကိုးကားပါ။
  2. စက်ပစ္စည်းဒေတာစာရွက်နှင့် မိသားစုကိုးကားချက်လက်စွဲကဏ္ဍများကို Microchip Worldwide မှ ဒေါင်းလုဒ်လုပ်ပါ။ Webဆိုက်- http://www.microchip.com.
  3. မမ်မိုရီကို အစီအစဉ်ဆွဲရန် နည်းလမ်းသုံးမျိုးထဲမှ တစ်ခုကို ရွေးပါ (Table Instruction Operation၊ In-Circuit Serial Programming (ICSP)၊ In-Application Programming (IAP)))။
  4. Table Instruction Operation ကိုအသုံးပြုပါက၊ ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[15:0] မှဖတ်ရန် TBLRDL ညွှန်ကြားချက်ကို အသုံးပြု၍ Flash ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits [15:0] သို့ရေးရန် TBLWTL ညွှန်ကြားချက်ကို အသုံးပြုပါ။
  5. Flash ပရိုဂရမ်မှတ်ဉာဏ်ဒေတာ၏အရင်းအမြစ်အဖြစ် W မှတ်ပုံတင်ခြင်း (သို့မဟုတ် W Register Pointer ကိုမှတ်ဉာဏ်တည်နေရာသို့) သတ်မှတ်ရန်သေချာစေပါ။

Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ပရိုဂရမ်ပြုလုပ်ခြင်းဆိုင်ရာ နောက်ထပ်အချက်အလက်များနှင့် အသေးစိတ်အချက်အလက်များအတွက်၊ dsPIC33/PIC24 မိသားစု ကိုးကားချက်လက်စွဲကို ကိုးကားပါ။

ဇယားလမ်းညွှန်ချက် လည်ပတ်မှု

ဇယားလမ်းညွှန်ချက်များသည် Flash ပရိုဂရမ်မှတ်ဉာဏ်နေရာနှင့် dsPIC33/PIC24 စက်ပစ္စည်းများ၏ ဒေတာမှတ်ဉာဏ်နေရာအကြား ဒေတာလွှဲပြောင်းခြင်းနည်းလမ်းကို ပေးပါသည်။ ဤအပိုင်းသည် Flash ပရိုဂရမ်မမ်မိုရီ၏ ပရိုဂရမ်ရေးဆွဲစဉ်အသုံးပြုသည့် ဇယားလမ်းညွှန်ချက်အကျဉ်းကို ပေးသည်။ အခြေခံဇယား ညွှန်ကြားချက်လေးခု ရှိပါတယ်

  • TBLRDL- ဇယားဖတ်နည်း
  • TBLRDH- ဇယားဖတ်ပါ။
  • TBLWTL- Table ကို Low ရေးပါ။
  • TBLWTH- ဇယားမြင့်ရေးပါ။

TBLRDL ညွှန်ကြားချက်ကို ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[15:0] မှ ဖတ်ရန်အသုံးပြုသည်။ TBLWTL ညွှန်ကြားချက်ကို Flash ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[15:0] သို့ရေးရန် အသုံးပြုသည်။ TBLRDL နှင့် TBLWTL သည် Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို Word မုဒ် သို့မဟုတ် Byte မုဒ်တွင် အသုံးပြုနိုင်သည်။

TBLRDH နှင့် TBLWTH ညွှန်ကြားချက်များကို ပရိုဂရမ်မှတ်ဉာဏ်နေရာ၏ bits[23:16] တွင် ဖတ်ရန် သို့မဟုတ် စာရေးရန် အသုံးပြုသည်။ TBLRDH နှင့် TBLWTH သည် Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို Word သို့မဟုတ် Byte မုဒ်တွင် အသုံးပြုနိုင်သည်။ Flash ပရိုဂရမ်မှတ်ဉာဏ်သည် 24 ဘစ်သာ ကျယ်သောကြောင့်၊ TBLRDH နှင့် TBLWTH လမ်းညွှန်ချက်များသည် မရှိသော Flash ပရိုဂရမ်မှတ်ဉာဏ်၏ အထက်ဘိုက်ကို ကိုင်တွယ်ဖြေရှင်းနိုင်ပါသည်။ ဤ byte ကို "phantom byte" ဟုခေါ်သည်။ phantom byte ၏ဖတ်ရှုမှုတိုင်းသည် 0x00 ပြန်တက်လာလိမ့်မည်။ phantom byte သို့ စာရေးခြင်းသည် အကျိုးသက်ရောက်မှု မရှိပါ။ 24-bit Flash ပရိုဂရမ်မမ်မိုရီကို 16-ဘစ်နေရာများ ဘေးချင်းကပ်လျက် နှစ်ခုအဖြစ် မှတ်ယူနိုင်ပြီး နေရာတစ်ခုစီသည် တူညီသောလိပ်စာအပိုင်းအခြားကို မျှဝေထားသည်။ ထို့ကြောင့်၊ TBLRDL နှင့် TBLWTL ညွှန်ကြားချက်များသည် “နိမ့်သော” ပရိုဂရမ်မှတ်ဉာဏ်နေရာ (PM[15:0]) သို့ ဝင်ရောက်သည်။ TBLRDH နှင့် TBLWTH ညွှန်ကြားချက်များသည် “မြင့်မားသော” ပရိုဂရမ်မှတ်ဉာဏ်နေရာ (PM[31:16]) ကို ဝင်ရောက်ကြည့်ရှုသည်။ PM[31:24] သို့ ဖတ်ခြင်း သို့မဟုတ် စာရေးမည်ဆိုပါက phantom (အသုံးမပြုထားသော) byte ကို အသုံးပြုပါမည်။ ဇယားလမ်းညွှန်ချက်များအားလုံးကို Byte မုဒ်တွင်အသုံးပြုသောအခါ၊ ဇယားလိပ်စာ၏အနည်းဆုံးသိသာထင်ရှားသည့်ဘစ် (LSb) ကို byte ရွေးချယ်သောဘစ်အဖြစ် အသုံးပြုမည်ဖြစ်သည်။ LSb သည် မြင့်မားသော သို့မဟုတ် နိမ့်သော ပရိုဂရမ်မှတ်ဉာဏ်နေရာရှိ မည်သည့်ဘိုက်ကို ဝင်ရောက်ထားသည်ကို ဆုံးဖြတ်သည်။

ပုံ 2-1 သည် ဇယားညွှန်ကြားချက်များကို အသုံးပြု၍ Flash ပရိုဂရမ်မှတ်ဉာဏ်အား မည်သို့ကိုင်တွယ်ဖြေရှင်းသည်ကို ဖော်ပြသည်။ 24-bit ပရိုဂရမ်မှတ်ဉာဏ်လိပ်စာကို TBLPAG မှတ်ပုံတင်ခြင်း၏ bits[7:0] နှင့် ဇယားညွှန်ကြားချက်တွင် သတ်မှတ်ထားသည့် W မှတ်ပုံတင်မှ ထိရောက်သောလိပ်စာ (EA) ကို အသုံးပြု၍ ဖွဲ့စည်းထားသည်။ 24-bit ပရိုဂရမ်ကောင်တာ (PC) ကို ကိုးကားရန်အတွက် ပုံ 2-1 တွင် သရုပ်ဖော်ထားသည်။ Flash ပရိုဂရမ်မှတ်ဉာဏ်တည်နေရာကိုရွေးချယ်ရန် EA ၏အထက် 23 bits ကိုအသုံးပြုသည်။

Byte မုဒ်ဇယားလမ်းညွှန်ချက်များအတွက်၊ W register EA ၏ LSb ကို 16-bit Flash ပရိုဂရမ်မှတ်ဉာဏ်စကားလုံး၏ မည်သည့် byte ကိုရွေးချယ်ရန် အသုံးပြုသည်၊ '1' သည် bits[15:8] ကို ရွေးပြီး '0' သည် bits[7:0] ကို ရွေးသည်။ W register EA ၏ LSb ကို Word မုဒ်တွင် ဇယားညွှန်ကြားချက်အတွက် လျစ်လျူရှုထားသည်။ Flash ပရိုဂရမ်မမ်မိုရီလိပ်စာအပြင်၊ ဇယားလမ်းညွှန်တွင် W register (သို့မဟုတ် W Register Pointer to a memory location) ကိုသတ်မှတ်ပေးသည် memory ဖတ်တယ်။ Byte မုဒ်တွင် ဇယားရေးသားခြင်း လုပ်ဆောင်ချက်အတွက်၊ အလုပ်လုပ်သည့် မှတ်ပုံတင်ခြင်း အရင်းအမြစ်၏ bits[15:8] ကို လျစ်လျူရှုထားသည်။MICROCHIP-PIC24-Flash-Programming- (၁)

Table Read Instructions ကိုအသုံးပြုခြင်း။
ဇယားဖတ်ရန် အဆင့်နှစ်ဆင့် လိုအပ်သည်-

  1. လိပ်စာညွှန်ပြချက်ကို TBLPAG မှတ်ပုံတင်ခြင်းနှင့် W မှတ်ပုံတင်ခြင်းတစ်ခုတို့ကို အသုံးပြု၍ တည်ဆောက်ထားသည်။
  2. Flash ပရိုဂရမ်သည် လိပ်စာတည်နေရာရှိ မန်မိုရီအကြောင်းအရာများကို ဖတ်နိုင်သည်။

 

  1. စကားလုံးမုဒ်ကိုဖတ်ပါ။
    Ex မှာပြထားတဲ့ကုဒ်ample 2-1 နှင့် Example 2-2 သည် Word မုဒ်တွင် ဇယားညွှန်ကြားချက်များကို အသုံးပြု၍ Flash ပရိုဂရမ်မှတ်ဉာဏ်၏ စကားလုံးတစ်လုံးကို မည်သို့ဖတ်ရမည်ကို ပြသသည်။MICROCHIP-PIC24-Flash-Programming- (၁) MICROCHIP-PIC24-Flash-Programming- (၁)
  2. BYTE MODE ကိုဖတ်ပါ။
    Ex မှာပြထားတဲ့ကုဒ်ample 2-3 သည် low byte ၏ read တွင် post-increment operator ကိုပြသသည်၊ ၎င်းသည် Working register ရှိလိပ်စာကို တစ်ခုပြီးတစ်ခုတိုးလာစေပါသည်။ ၎င်းသည် EA[0] ကို တတိယစာရေးနည်းညွှန်ကြားချက်တွင် အလယ်ဘိုက်သို့ ဝင်ရောက်ရန်အတွက် '1' အဖြစ် သတ်မှတ်သည်။ နောက်ဆုံးတိုးနှုန်းသည် W0 ကို တူညီသောလိပ်စာသို့ ပြန်သတ်မှတ်ပေးကာ နောက် Flash ပရိုဂရမ်မှတ်ဉာဏ်တည်နေရာကို ညွှန်ပြသည်။MICROCHIP-PIC24-Flash-Programming- (၁)
  3. Table WRITE LATCHES
    ဇယားရေးရန် ညွှန်ကြားချက်များသည် nonvolatile program memory သို့ တိုက်ရိုက်မရေးပါ။ ယင်းအစား၊ ဇယားရေးရန် ညွှန်ကြားချက်များသည် စာရေးဒေတာကို သိမ်းဆည်းသည့် စာရေးလက်ဆွဲများကို တင်ပါ။ NVM လိပ်စာစာရင်းသွင်းမှုများကို latched data များရေးသားသင့်သည့် ပထမဆုံးလိပ်စာဖြင့် တင်ရပါမည်။ write latches များအားလုံးကို တင်ပြီးသောအခါ၊ အထူးညွှန်ကြားချက်များကို လုပ်ဆောင်ခြင်းဖြင့် အမှန်တကယ် memory programming လုပ်ဆောင်မှုကို စတင်ပါသည်။ ပရိုဂရမ်ရေးဆွဲစဉ်တွင်၊ ဟာ့ဒ်ဝဲသည် စာရေးလက်တင်များအတွင်းရှိ ဒေတာများကို Flash မှတ်ဉာဏ်သို့ လွှဲပြောင်းပေးသည်။ write latches များသည် လိပ်စာ 0xFA0000 တွင် အမြဲစတင်ပြီး စကားလုံးပရိုဂရမ်အတွက် 0xFA0002 မှတဆင့် သို့မဟုတ် row programming ရှိသော စက်များအတွက် 0xFA00FE မှတဆင့် ချဲ့ထွင်ပါသည်။

မှတ်ချက် - စာရေးလက်ဆွဲများ အရေအတွက်သည် စက်အလိုက် ကွဲပြားသည်။ ရရှိနိုင်သော စာရေးလက်ကွက်အရေအတွက်အတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “Flash Program Memory” အခန်းကို ကိုးကားပါ။

ထိန်းချုပ်ရေး မှတ်ပုံတင်များ

အထူးလုပ်ဆောင်ချက် မှတ်ပုံတင်ခြင်း (SFRs) အများအပြားကို Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ဖျက်ပစ်ပြီး ရေးရန် လုပ်ဆောင်ချက်များကို အစီအစဉ်ဆွဲရန် အသုံးပြုသည်- NVMCON၊ NVMKEY၊ နှင့် NVM လိပ်စာ မှတ်ပုံတင်များ၊ NVMADR နှင့် NVMADRU။

NVMCON မှတ်ပုံတင်ပါ။
NVMCON မှတ်ပုံတင်ခြင်းသည် Flash နှင့် ပရိုဂရမ်/ဖျက်ခြင်း လုပ်ဆောင်ချက်များအတွက် အဓိက ထိန်းချုပ်မှု မှတ်ပုံတင်ခြင်း ဖြစ်သည်။ ဤစာရင်းသွင်းမှုသည် ဖျက်ခြင်း သို့မဟုတ် ပရိုဂရမ်လုပ်ဆောင်ချက်ကို လုပ်ဆောင်မည်ဆိုသည်ကို ရွေးချယ်ပြီး ပရိုဂရမ်ကို စတင်နိုင်သည် သို့မဟုတ် ဖျက်ပစ်ခြင်းသံသရာကို စတင်နိုင်သည်။ NVMCON မှတ်ပုံတင်ခြင်းကို Register 3-1 တွင်ပြသထားသည်။ NVMCON ၏ အောက်ဘိုက်သည် လုပ်ဆောင်မည့် NVM လည်ပတ်မှု အမျိုးအစားကို သတ်မှတ်ပေးသည်။

NVMKEY မှတ်ပုံတင်ပါ။
NVMKEY မှတ်ပုံတင်ခြင်း (မှတ်ပုံတင်ခြင်း 3-4 ကိုကြည့်ပါ) သည် Flash memory ကိုပျက်စီးစေနိုင်သော NVMCON ၏မတော်တဆရေးသားမှုများကိုတားဆီးရန်အတွက်အသုံးပြုသောစာရေးသီးသန့်မှတ်ပုံတင်တစ်ခုဖြစ်သည်။ လော့ခ်ဖွင့်ပြီးသည်နှင့် NVMCON သို့ စာရေးခြင်းသည် WR ဘစ်အား ဖျက်ပစ်ခြင်း သို့မဟုတ် ပရိုဂရမ်လုပ်ရိုးလုပ်စဉ်ကို ခေါ်ဆိုရန် သတ်မှတ်နိုင်သည့် ညွှန်ကြားချက်စက်ဝန်းတစ်ခုအတွက် ခွင့်ပြုထားသည်။ အချိန် သတ်မှတ်ချက်များအရ အနှောင့်အယှက်များကို ပိတ်ရန် လိုအပ်ပါသည်။
ဖျက်ပစ်ခြင်း သို့မဟုတ် ပရိုဂရမ်ရေးဆွဲခြင်း အစီအစဉ်ကို စတင်ရန် အောက်ပါအဆင့်များကို လုပ်ဆောင်ပါ။

  1. အနှောင့်အယှက်များကို ပိတ်ပါ။
  2. 0x55 ကို NVMKEY သို့ ရေးပါ။
  3. 0xAA ကို NVMKEY သို့ရေးပါ။
  4. WR ဘစ် (NVMCON[15]) ကို သတ်မှတ်ခြင်းဖြင့် ပရိုဂရမ်ရေးသားခြင်း စက်ဝိုင်းကို စတင်ပါ။
  5. NOP ညွှန်ကြားချက်နှစ်ခုကို လုပ်ဆောင်ပါ။
  6. အနှောင့်အယှက်များကို ပြန်လည်ရယူပါ။

MICROCHIP-PIC24-Flash-Programming- (၁)

အနှောင့်အယှက်များကို ပိတ်ထားခြင်း။
အောင်မြင်သောရလဒ်ကိုသေချာစေရန် Flash လုပ်ဆောင်ချက်အားလုံးအတွက် ကြားဖြတ်မှုများကို ပိတ်ထားရန် လိုအပ်ပါသည်။ NVMKEY လော့ခ်ဖွင့်သည့် အစီအစဉ်အတွင်း အနှောင့်အယှက်တစ်ခု ဖြစ်ပေါ်ပါက၊ ၎င်းသည် WR bit သို့ စာရေးခြင်းကို ပိတ်ဆို့နိုင်သည်။ အပိုင်း 3.2 “NVMKEY မှတ်ပုံတင်ခြင်း” တွင် ဆွေးနွေးထားသည့်အတိုင်း NVMKEY လော့ခ်ဖွင့်ခြင်း အစီအစဉ်ကို အနှောင့်အယှက်မရှိဘဲ လုပ်ဆောင်ရပါမည်။

Global Interrupt Enable (GIE bit) ကို ပိတ်ခြင်းဖြင့် သို့မဟုတ် DISI ညွှန်ကြားချက်ကို အသုံးပြုခြင်းဖြင့် ကြားဖြတ်မှုများကို နည်းလမ်းနှစ်ခုထဲမှ တစ်ခုဖြင့် ပိတ်နိုင်သည်။ ဦးစားပေး 6 သို့မဟုတ် အောက်ရှိ အနှောင့်အယှက်များကိုသာ ပိတ်ထားသောကြောင့် DISI ညွှန်ကြားချက်ကို မထောက်ခံပါ။ ထို့ကြောင့်၊ Global Interrupt Enable နည်းလမ်းကို အသုံးပြုသင့်သည်။

CPU သည် ကုဒ်စီးဆင်းမှုကို မထိခိုက်စေမီ ညွှန်ကြားချက်နှစ်ခုကို GIE သို့ စာရေးသည်။ နောက်ပိုင်းတွင် NOP ညွှန်ကြားချက်နှစ်ခု လိုအပ်သည်၊ သို့မဟုတ် NVMKEY ကိုဖွင့်ခြင်းကဲ့သို့သော အခြားအသုံးဝင်သော အလုပ်ညွှန်ကြားချက်များဖြင့် အစားထိုးနိုင်သည်။ ၎င်းသည် သတ်မှတ်မှု နှင့် ရှင်းလင်းသော လုပ်ဆောင်မှုများ နှစ်ခုလုံးအတွက် သက်ဆိုင်သည်။ နှောင့်ယှက်မှုများကို ပြန်လည်ဖွင့်သည့်အခါတွင် ဂရုစိုက်သင့်သည် ၎င်းကို Assembly တွင်ဖြေရှင်းရန်၊ GIE bit ၏အခြေအနေကိုထိန်းသိမ်းရန် stack push နှင့် pop ကိုသုံးနိုင်သည်။ C တွင်၊ GIE ကိုရှင်းလင်းခြင်းမပြုမီ INTCON2 ကိုသိမ်းဆည်းရန် RAM ရှိ ကိန်းရှင်တစ်ခုကို အသုံးပြုနိုင်သည်။ အနှောင့်အယှက်များကို ပိတ်ရန် အောက်ပါ အစီအစဉ်ကို အသုံးပြုပါ

  1. INTCON2 ကို stack ပေါ်သို့ တွန်းလိုက်ပါ။
  2. GIE ကိုရှင်းလင်းပါ။
  3. NOP နှစ်ခု သို့မဟုတ် NVMKEY သို့ စာရေးပါ။
  4. WR ဘစ် (NVMCON[15]) ကို သတ်မှတ်ခြင်းဖြင့် ပရိုဂရမ်းမင်းစက်ဝန်းကို စတင်ပါ။
  5. INTCON2 ၏ POP ဖြင့် GIE အခြေအနေကို ပြန်လည်ရယူပါ။MICROCHIP-PIC24-Flash-Programming- (၁)

NVM လိပ်စာ မှတ်ပုံတင်များ
NVM လိပ်စာ မှတ်ပုံတင်ခြင်း နှစ်ခုဖြစ်သည့် NVMADRU နှင့် NVMADR တို့ကို ပေါင်းစပ်လိုက်သောအခါ၊ ပရိုဂရမ်းမင်းလုပ်ဆောင်မှုများအတွက် ရွေးချယ်ထားသော အတန်း သို့မဟုတ် စကားလုံး၏ 24-bit EA ကို ဖွဲ့စည်းပါ။ NVMADRU မှတ်ပုံတင်ခြင်းကို EA ၏အထက် ရှစ်ဘစ်များကို ကိုင်ဆောင်ထားရန် အသုံးပြုပြီး NVMADR မှတ်ပုံတင်ခြင်းကို EA ၏ အောက် 16 ဘစ်များကို ထိန်းသိမ်းရန်အတွက် အသုံးပြုသည်။ အချို့သောစက်ပစ္စည်းများသည် NVMADRL နှင့် NVMADRH ကဲ့သို့တူညီသောစာရင်းအင်းများကိုရည်ညွှန်းနိုင်သည်။ NVM လိပ်စာ မှတ်ပုံတင်များသည် ညွှန်ကြားချက်နှစ်ထပ် စကားလုံး ပရိုဂရမ်းမင်း လုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည့်အခါ၊ အတန်း ပရိုဂရမ် လုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည့်အခါ သို့မဟုတ် စာမျက်နှာ ဖျက်ခြင်း လုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည့်အခါ စာမျက်နှာ နယ်နိမိတ်ကို အမြဲတမ်း ညွှန်ပြသင့်သည်။

3-1 မှတ်ပုံတင်ပါ- NVMCON- Flash Memory Control မှတ်ပုံတင်ပါ။MICROCHIP-PIC24-Flash-Programming- (၁) MICROCHIP-PIC24-Flash-Programming- (၁)

မှတ်ချက်

  1. Power-on Reset (POR) တွင် ဤဘစ်အား ပြန်လည်သတ်မှတ်နိုင်သည် (ဆိုလိုသည်မှာ ရှင်းလင်းထားသည်)။
  2. Idle မုဒ်မှ ထွက်သည့်အခါ၊ Flash ပရိုဂရမ်မှတ်ဉာဏ် မလည်ပတ်မီ ပါဝါတက်နှောင့်နှေးမှု (TVREG) ရှိနေပါသည်။ နောက်ထပ်အချက်အလက်များအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “လျှပ်စစ်လက္ခဏာများ” အခန်းကို ကိုးကားပါ။
  3. NVMOP[3:0] ၏ အခြားပေါင်းစပ်မှုများအားလုံးကို အကောင်အထည်မဖော်ပါ။
  4. ဤလုပ်ဆောင်ချက်ကို စက်အားလုံးတွင် မရရှိနိုင်ပါ။ ရရှိနိုင်သောလုပ်ဆောင်ချက်များအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ရှိ “Flash Program Memory” အခန်းကို ကိုးကားပါ။
  5. PWRSAV ညွှန်ကြားချက်ကို လုပ်ဆောင်ပြီးနောက် ပါဝါချွေတာသည့်မုဒ်သို့ ဝင်ရောက်ခြင်းသည် ဆိုင်းငံ့နေသော NVM လုပ်ဆောင်ချက်များအားလုံး ပြီးမြောက်ခြင်းအပေါ် မူတည်သည်။
  6. ဤဘစ်သည် RAM buffered row programming ကို ပံ့ပိုးသည့် စက်များတွင်သာ ရနိုင်သည်။ ရရှိနိုင်မှုအတွက် စက်၏ သီးခြားဒေတာစာရွက်ကို ကိုးကားပါ။

MICROCHIP-PIC24-Flash-Programming- (၁)

မှတ်ချက်

  1. Power-on Reset (POR) တွင် ဤဘစ်အား ပြန်လည်သတ်မှတ်နိုင်သည် (ဆိုလိုသည်မှာ ရှင်းလင်းထားသည်)။
  2. Idle မုဒ်မှ ထွက်သည့်အခါ၊ Flash ပရိုဂရမ်မှတ်ဉာဏ် မလည်ပတ်မီ ပါဝါတက်နှောင့်နှေးမှု (TVREG) ရှိနေပါသည်။ နောက်ထပ်အချက်အလက်များအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “လျှပ်စစ်လက္ခဏာများ” အခန်းကို ကိုးကားပါ။
  3. NVMOP[3:0] ၏ အခြားပေါင်းစပ်မှုများအားလုံးကို အကောင်အထည်မဖော်ပါ။
  4. ဤလုပ်ဆောင်ချက်ကို စက်အားလုံးတွင် မရရှိနိုင်ပါ။ ရရှိနိုင်သောလုပ်ဆောင်ချက်များအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ရှိ “Flash Program Memory” အခန်းကို ကိုးကားပါ။
  5. PWRSAV ညွှန်ကြားချက်ကို လုပ်ဆောင်ပြီးနောက် ပါဝါချွေတာသည့်မုဒ်သို့ ဝင်ရောက်ခြင်းသည် ဆိုင်းငံ့နေသော NVM လုပ်ဆောင်ချက်များအားလုံး ပြီးမြောက်ခြင်းအပေါ် မူတည်သည်။
  6. ဤဘစ်သည် RAM buffered row programming ကို ပံ့ပိုးသည့် စက်များတွင်သာ ရနိုင်သည်။ ရရှိနိုင်မှုအတွက် စက်၏ သီးခြားဒေတာစာရွက်ကို ကိုးကားပါ။

3-2 မှတ်ပုံတင်ခြင်း- NVMADRU- Nonvolatile Memory အထက်လိပ်စာ မှတ်ပုံတင်ပါ။

MICROCHIP-PIC24-Flash-Programming- (၁)

3-3 မှတ်ပုံတင်ခြင်း- NVMADR- Nonvolatile Memory လိပ်စာ မှတ်ပုံတင်ပါ။

MICROCHIP-PIC24-Flash-Programming- (၁)

3-4 မှတ်ပုံတင်ခြင်း- NVMKEY- Nonvolatile Memory Key မှတ်ပုံတင်ပါ။

MICROCHIP-PIC24-Flash-Programming- (၁)

အချိန်-မိမိဘာသာ အစီအစဉ်ဆွဲခြင်း (RTSP)

RTSP သည် အသုံးပြုသူအပလီကေးရှင်းအား Flash ပရိုဂရမ်မှတ်ဉာဏ်အကြောင်းအရာများကို မွမ်းမံပြင်ဆင်ခွင့်ပြုသည်။ RTSP သည် TBLRD (Table Read) နှင့် TBLWT (Table Write) လမ်းညွှန်ချက်များ၊ TBLPAG မှတ်ပုံတင်ခြင်းနှင့် NVM ထိန်းချုပ်ရေး မှတ်ပုံတင်ချက်များကို အသုံးပြု၍ ပြီးမြောက်သည်။ RTSP ဖြင့်၊ သုံးစွဲသူအပလီကေးရှင်းသည် Flash memory ၏စာမျက်နှာတစ်ခုတည်းနှင့် ပရိုဂရမ်အား ညွှန်ကြားချက်စကားလုံးနှစ်လုံး သို့မဟုတ် အချို့စက်ပစ္စည်းများတွင် ညွှန်ကြားချက်စကားလုံး 128 လုံးအထိ ဖျက်နိုင်သည်။

RTSP လုပ်ဆောင်ချက်
dsPIC33/PIC24 Flash ပရိုဂရမ်မမ်မိုရီအခင်းအကျင်းကို ညွှန်ကြားချက် 1024 အထိပါရှိသော ဖျက်ပစ်သည့်စာမျက်နှာများအဖြစ် ဖွဲ့စည်းထားသည်။ dsPIC33/PIC24 မိသားစုများရှိ စက်များအားလုံးတွင် စကားလုံးနှစ်လုံးပါသော ပရိုဂရမ်ရေးခြင်း ရွေးချယ်ခွင့်ကို ရနိုင်ပါသည်။ ထို့အပြင်၊ အချို့သောစက်ပစ္စည်းများတွင် အတန်းလိုက် ပရိုဂရမ်ရေးသားခြင်းစွမ်းရည်ပါရှိပြီး တစ်ကြိမ်လျှင် ညွှန်ကြားချက်စကားလုံး 128 လုံးအထိ ပရိုဂရမ်ရေးဆွဲနိုင်စေပါသည်။ ပရိုဂရမ်ရေးဆွဲခြင်းနှင့် ဖျက်ခြင်းလုပ်ဆောင်မှုများသည် ပရိုဂရမ်းမင်းစကားလုံးနှစ်ထပ်၊ အတန်း သို့မဟုတ် စာမျက်နှာနယ်နိမိတ်များတွင် အမြဲဖြစ်ပေါ်ပါသည်။ ပရိုဂရမ်းမင်းအတန်း၏ ရရှိနိုင်မှုနှင့် အရွယ်အစားများနှင့် ဖျက်ရန်အတွက် စာမျက်နှာအရွယ်အစားအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “Flash Program Memory” အခန်းကို ကိုးကားပါ။ Flash ပရိုဂရမ်မမ်မိုရီသည် စက်ပေါ် မူတည်၍ ပရိုဂရမ်ဒေတာ 128 ခုအထိပါ၀င်သော write latches ဟုခေါ်သော buffers များကို ကိုင်ဆောင်ထားပေးပါသည်။ ပရိုဂရမ်းမင်း၏ လက်တွေ့လုပ်ဆောင်မှုမလုပ်ဆောင်မီ၊ ရေးဒေတာကို write latches ထဲသို့ ထည့်သွင်းရပါမည်။ RTSP အတွက် အခြေခံ sequence သည် Table Pointer၊ TBLPAG မှတ်ပုံတင်ခြင်းကို စနစ်ထည့်သွင်းရန်ဖြစ်ပြီး၊ ထို့နောက် write latches ကိုတင်ရန် TBLWT ညွှန်ကြားချက်များ ဆက်တိုက်လုပ်ဆောင်ရန်ဖြစ်သည်။ NVMCON မှတ်ပုံတင်ခြင်းရှိ ထိန်းချုပ်မှုဘစ်များကို သတ်မှတ်ခြင်းဖြင့် ပရိုဂရမ်ကို လုပ်ဆောင်သည်။ write latches ကိုတင်ရန် လိုအပ်သော TBLWTL နှင့် TBLWTH ညွှန်ကြားချက်အရေအတွက်သည် ရေးသားရမည့် ပရိုဂရမ်စကားလုံးအရေအတွက်နှင့် ညီမျှသည်။

မှတ်ချက် - ပြုပြင်မွမ်းမံပြီး အသုံးပြုပြီးနောက် ပြန်လည်ရယူခြင်းမပြုမီ TBLPAG မှတ်ပုံတင်ခြင်းကို သိမ်းဆည်းရန် အကြံပြုအပ်ပါသည်။

သတိထားပါ။
အချို့သောစက်ပစ္စည်းများတွင်၊ "Flash Configuration Bytes" ဟုခေါ်သည့်အပိုင်းရှိ Flash အသုံးပြုသူမှတ်ဉာဏ်နေရာကို ပရိုဂရမ်၏နောက်ဆုံးစာမျက်နှာတွင် စုစည်းမှုဘစ်များကို သိမ်းဆည်းထားသည်။ ဤစက်ပစ္စည်းများဖြင့်၊ ပရိုဂရမ်မှတ်ဉာဏ်၏နောက်ဆုံးစာမျက်နှာရှိ စာမျက်နှာဖျက်ခြင်းလုပ်ဆောင်ချက်ကို လုပ်ဆောင်ခြင်းဖြင့် ကုဒ်ကိုကာကွယ်ပေးသည့် Flash Configuration bytes ကို ဖျက်ပစ်ပါသည်။ ထို့ကြောင့်၊ အသုံးပြုသူများသည် ပရိုဂရမ်မှတ်ဉာဏ်၏ နောက်ဆုံးစာမျက်နှာတွင် စာမျက်နှာဖျက်ခြင်း လုပ်ဆောင်ချက်များကို မလုပ်ဆောင်သင့်ပါ။ "Device Configuration Registers" ဟုခေါ်သည့် ကဏ္ဍရှိ Configuration memory space တွင် Configuration bits များကို သိမ်းဆည်းသည့်အခါ ၎င်းသည် စိုးရိမ်စရာမဟုတ်ပါ။ Configuration bits တည်နေရာကို ဆုံးဖြတ်ရန် သတ်မှတ်ထားသော စက်ဒေတာစာရွက်၏ "မှတ်ဉာဏ်အဖွဲ့အစည်း" အခန်းရှိ ပရိုဂရမ်မှတ်ဉာဏ်မြေပုံကို ကိုးကားပါ။

Flash Programming လုပ်ဆောင်ချက်များ
ပရိုဂရမ်တစ်ခု သို့မဟုတ် ဖျက်ခြင်းလုပ်ဆောင်မှုသည် RTSP မုဒ်တွင် အတွင်းပိုင်း Flash ပရိုဂရမ်မှတ်ဉာဏ်အား ပရိုဂရမ်ရေးဆွဲခြင်း သို့မဟုတ် ဖျက်ခြင်းအတွက် လိုအပ်သည်။ ပရိုဂရမ် သို့မဟုတ် ဖျက်ခြင်းလုပ်ဆောင်ချက်ကို စက်က အလိုအလျောက် အချိန်သတ်မှတ်ပေးသည် (အချိန်ကိုက်အချက်အလက်အတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ကို ကိုးကားပါ)။ WR ဘစ်ကို သတ်မှတ်ခြင်း (NVMCON[15]) သည် လုပ်ဆောင်ချက်ကို စတင်သည်။ လုပ်ဆောင်ချက်ပြီးသွားသောအခါ WR ဘစ်ကို အလိုအလျောက်ရှင်းပေးပါသည်။ ပရိုဂရမ်းမင်းလုပ်ဆောင်မှု မပြီးမချင်း CPU သည် ရပ်နေပါသည်။ CPU သည် ဤကာလအတွင်း မည်သည့်ညွှန်ကြားချက်ကိုမျှ လုပ်ဆောင်မည်မဟုတ်ပါ သို့မဟုတ် အနှောင့်အယှက်များကို တုံ့ပြန်မည်မဟုတ်ပါ။ ပရိုဂရမ်းမင်းစက်ဝန်းအတွင်း အနှောင့်အယှက်တစ်စုံတစ်ရာ ဖြစ်ပေါ်ပါက၊ လည်ပတ်မှုပြီးဆုံးသည်အထိ ၎င်းတို့သည် ဆိုင်းငံ့ထားမည်ဖြစ်သည်။ အချို့သော dsPIC33/PIC24 စက်ပစ္စည်းများသည် အသုံးပြုသူ Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ဖျက်ပစ်ပြီး/သို့မဟုတ် ပရိုဂရမ်ပြုလုပ်နေချိန်တွင် အချို့သော dsPICXNUMX/PICXNUMX စက်ပစ္စည်းများသည် အရန် Flash ပရိုဂရမ်မှတ်ဉာဏ်ကို ပေးဆောင်နိုင်သည် (အသေးစိတ်အချက်အလက်များအတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ "Memory Organization" အခန်းကို ရည်ညွှန်းနိုင်သည်)၊ အပြန်အလှန်အားဖြင့်၊ အသုံးပြုသူ Flash ပရိုဂရမ်မှတ်ဉာဏ်မှ ကုဒ်ကို လုပ်ဆောင်နေသရွေ့ အရန် Flash ပရိုဂရမ်မမ်မိုရီကို CPU Stalls မပါဘဲ ပရိုဂရမ်ပြုလုပ်နိုင်ပါသည်။ ပရိုဂရမ်းမင်းလုပ်ဆောင်မှု ပြီးမြောက်ကြောင်း ညွှန်ပြရန် NVM နှောင့်ယှက်မှုကို အသုံးပြုနိုင်သည်။

မှတ်ချက်

  1. RTSP ဖျက်ခြင်း သို့မဟုတ် ပရိုဂရမ်လုပ်ဆောင်ခြင်း လုပ်ဆောင်နေချိန်တွင် POR သို့မဟုတ် BOR ဖြစ်ရပ်တစ်ခု ဖြစ်ပေါ်ပါက၊ RTSP လုပ်ဆောင်ချက်ကို ချက်ချင်း ဖျက်သိမ်းလိုက်ပါမည်။ စက်ကို ပြန်လည်သတ်မှတ်ခြင်းမှ ထွက်လာပြီးနောက် အသုံးပြုသူသည် RTSP လုပ်ဆောင်ချက်ကို ထပ်မံလုပ်ဆောင်သင့်သည်။
  2. RTSP ဖျက်ခြင်း သို့မဟုတ် ပရိုဂရမ်လုပ်ဆောင်ခြင်း လုပ်ဆောင်နေချိန်တွင် EXTR၊ SWR၊ WDTO၊ TRAPR၊ CM သို့မဟုတ် IOPUWR ပြန်လည်သတ်မှတ်ခြင်းကိစ္စ ဖြစ်ပေါ်ပါက၊ RTSP လုပ်ဆောင်ချက် ပြီးမှသာ စက်ပစ္စည်းကို ပြန်လည်သတ်မှတ်ပါမည်။

RTSP ပရိုဂရမ်မာရေး အယ်လ်ဂိုရီသမ်
ဤကဏ္ဍတွင် အဓိကလုပ်ငန်းစဉ် သုံးခုပါ၀င်သော RTSP ပရိုဂရမ်းမင်းကို ဖော်ပြထားပါသည်။

ပြုပြင်မွမ်းမံရန် ဒေတာစာမျက်နှာ၏ RAM ပုံတစ်ခု ဖန်တီးခြင်း။
ပြုပြင်ရန် ဒေတာစာမျက်နှာ၏ RAM ပုံတစ်ပုံကို ဖန်တီးရန် ဤအဆင့်နှစ်ဆင့်ကို လုပ်ဆောင်ပါ-

  1. Flash ပရိုဂရမ်မှတ်ဉာဏ်၏ စာမျက်နှာကို ဖတ်ပြီး ဒေတာ “ပုံ” အဖြစ် ဒေတာ RAM တွင် သိမ်းဆည်းပါ။ RAM ပုံအား စာမျက်နှာလိပ်စာ နယ်နိမိတ်မှ စတင်၍ ဖတ်ရပါမည်။
  2. RAM ဒေတာပုံကို လိုအပ်သလို ပြင်ဆင်ပါ။

Flash ပရိုဂရမ်မှတ်ဉာဏ်ကိုဖျက်ခြင်း။
အထက်ပါ အဆင့် 1 နှင့် 2 ကို ပြီးပါက Flash ပရိုဂရမ်မှတ်ဉာဏ်စာမျက်နှာကို ဖျက်ရန် အောက်ပါ အဆင့်လေးဆင့်ကို လုပ်ဆောင်ပါ ။

  1. အဆင့် 3 မှဖတ်ထားသော Flash ပရိုဂရမ်မှတ်ဉာဏ်စာမျက်နှာကိုဖျက်ရန် NVMOP[0:3] bits (NVMCON[0:1]) ကို သတ်မှတ်ပါ။
  2. NVMADRU နှင့် NMVADR မှတ်ပုံတင်များတွင် ဖျက်ပစ်မည့် စာမျက်နှာ၏ အစလိပ်စာကို ရေးပါ။
  3. အနှောင့်အယှက်များဖြင့် ပိတ်ထားသည်-
    • a) WR ဘစ် (NVMCON[15]) ကိုဖွင့်ရန် NVMKEY မှတ်ပုံတင်ခြင်းတွင် သော့တွဲကိုရေးပါ။
    • b) WR bit ကိုသတ်မှတ်ပါ။ ၎င်းသည် ဖျက်ခြင်းသံသရာကို စတင်မည်ဖြစ်သည်။
    • c) NOP ညွှန်ကြားချက်နှစ်ခုကို လုပ်ဆောင်ပါ။
  4. Erase Cycle ပြီးသွားသောအခါ WR ဘစ်ကို ရှင်းလင်းသည်။

Flash Memory စာမျက်နှာကို ပရိုဂရမ်ရေးဆွဲခြင်း။
လုပ်ငန်းစဉ်၏နောက်ထပ်အပိုင်းမှာ Flash memory စာမျက်နှာကို အစီအစဉ်ဆွဲရန်ဖြစ်သည်။ Flash memory စာမျက်နှာကို အဆင့် 1 တွင် ဖန်တီးထားသည့် ပုံမှဒေတာကို အသုံးပြု၍ ပရိုဂရမ်ရေးဆွဲထားသည်။ ဒေတာများကို ညွှန်ကြားချက် စကားလုံးနှစ်ထပ် သို့မဟုတ် အတန်းများအလိုက် ရေးရန်လက်ကွက်များထံ လွှဲပြောင်းပေးပါသည်။ စက်အားလုံးတွင် ညွှန်ကြားချက် နှစ်ဆ စကားလုံး ပရိုဂရမ်ရေးခြင်း စွမ်းရည် ရှိသည်။ (အတန်းပရိုဂရမ်းမင်း၏အမျိုးအစားနှင့်မည်သည့်အမျိုးအစားကိုရရှိနိုင်သည်ဆိုသည်ကိုဆုံးဖြတ်ရန် "Flash Program Memory" အခန်းကိုကိုးကားပါ။) write latches ကိုတင်ပြီးနောက်၊ ၎င်းမှဒေတာများကိုလွှဲပြောင်းပေးသည့်ပရိုဂရမ်းမင်းလည်ပတ်မှုကိုစတင်သည် Flash memory တွင် latches များကိုရေးပါ။ စာမျက်နှာတစ်ခုလုံးကို ပရိုဂရမ်မပြီးမချင်း ၎င်းကို ထပ်ခါတလဲလဲလုပ်သည်။ စာမျက်နှာတစ်ခုလုံးကို ပရိုဂရမ်မပြီးမချင်း Flash စာမျက်နှာ၏ ပထမဆုံး ညွှန်ကြားချက်စကားလုံးမှ စတင်ကာ အောက်ပါအဆင့်သုံးဆင့်ကို ပြန်လုပ်ကာ ပရိုဂရမ်နှစ်ခုလုံး သို့မဟုတ် ညွှန်ကြားချက်အတန်းများ၏ အဆင့်များအတိုင်း တိုးနေသည်-

  1. ရေးရန် လက်ဆွဲများကို တင်ပါ-
    • a) စာရေးလက်ကွက်များ၏တည်နေရာကိုညွှန်ပြရန် TBLPAG မှတ်ပုံတင်ခြင်းကိုသတ်မှတ်ပါ။
    • b) TBLWTL နှင့် TBLWTH ညွှန်ကြားချက်အတွဲများကို အသုံးပြု၍ လိုချင်သော လက်ဆွဲအရေအတွက်ကို တင်ပါ-
    • စကားလုံးနှစ်လုံး ပရိုဂရမ်ရေးဆွဲခြင်းအတွက်၊ TBLWTL နှင့် TBLWTH လမ်းညွှန်ချက် အတွဲနှစ်ခု လိုအပ်သည်။
    • အတန်းအစီအစဉ်ရေးဆွဲခြင်းအတွက်၊ ညွှန်ကြားချက်စကားလုံးအတန်းဒြပ်စင်တစ်ခုစီအတွက် TBLWTL နှင့် TBLWTH ညွှန်ကြားချက်တစ်စုံ လိုအပ်သည်
  2. ပရိုဂရမ်းမင်းလုပ်ဆောင်ချက်ကို စတင်ပါ-
    • က) NVMOP[3:0] bits (NVMCON[3:0]) ကို အလျဉ်းသင့်သလို ညွှန်ကြားချက် နှစ်ထပ် စကားလုံးများ သို့မဟုတ် ညွှန်ကြားချက်အတန်းတစ်ခုကို အစီအစဉ်ဆွဲပါ။
      b) NVMADRU နှင့် NVMADR မှတ်ပုံတင်မှုများတွင် ပရိုဂရမ်ထည့်သွင်းမည့် ညွှန်ကြားချက်နှစ်ထပ်စကားလုံး သို့မဟုတ် ညွှန်ကြားချက်အတန်း၏ ပထမဆုံးလိပ်စာကို ရေးပါ။
      ဂ) အနှောင့်အယှက်များဖြင့် ပိတ်ထားသည်-
      • WR ဘစ်ဆက်တင်ကိုဖွင့်ရန် NVMKEY မှတ်ပုံတင်ခြင်းတွင် သော့တွဲကိုရေးပါ (NVMCON[15])
      • WR ဘစ်ကို သတ်မှတ်ပါ။ ၎င်းသည် ဖျက်ခြင်းသံသရာကို စတင်မည်ဖြစ်သည်။
      • NOP ညွှန်ကြားချက်နှစ်ခုကို လုပ်ဆောင်ပါ။
  3. ပရိုဂရမ်းမင်းလည်ပတ်မှု ပြီးဆုံးသောအခါ WR ဘစ်ကို ရှင်းလင်းသည်။

အလိုရှိသော Flash ပရိုဂရမ်မမ်မိုရီပမာဏကို အစီအစဉ်ဆွဲရန် လိုအပ်သလို လုပ်ငန်းစဉ်တစ်ခုလုံးကို ပြန်လုပ်ပါ။

မှတ်ချက်

  1. RTSP ကို ​​အသုံးပြု၍ ဖျက်ပစ်နိုင်သော အနည်းဆုံး Flash ပရိုဂရမ်မှတ်ဉာဏ်ပမာဏသည် တစ်ခုတည်းသော ဖျက်ထားသော စာမျက်နှာဖြစ်ကြောင်း သုံးစွဲသူက မှတ်သားထားသင့်သည်။ ထို့ကြောင့်၊ ဖျက်ခြင်းသံသရာမစတင်မီ ယေဘူယျရည်ရွယ်ချက် RAM တွင် ဤတည်နေရာများ၏ ပုံတစ်ပုံကို သိမ်းဆည်းထားရန် အရေးကြီးပါသည်။
  2. Flash ပရိုဂရမ်မှတ်ဉာဏ်ရှိ အတန်း သို့မဟုတ် စကားလုံးတစ်လုံးကို ဖျက်မပစ်မီ နှစ်ကြိမ်ထက်ပို၍ ပရိုဂရမ်မတင်သင့်ပါ။
  3. Flash ၏ နောက်ဆုံးစာမျက်နှာတွင် သိမ်းဆည်းထားသော Configuration bytes ရှိသည့် စက်များတွင်၊ ပရိုဂရမ်မှတ်ဉာဏ်၏ နောက်ဆုံးစာမျက်နှာရှိ စာမျက်နှာဖျက်ခြင်း လုပ်ဆောင်ချက်ကို လုပ်ဆောင်ခြင်းဖြင့် ကုဒ်ကို အကာအကွယ်ပေးသည့် Configuration bytes ကို ရှင်းလင်းစေသည်။ ဤစက်ပစ္စည်းများတွင် Flash memory ၏နောက်ဆုံးစာမျက်နှာကို ဖျက်ပစ်ခြင်းမပြုသင့်ပါ။

FLASH စာမျက်နှာတစ်မျက်နှာကို ဖျက်ပစ်ခြင်း။
Ex မှာ ပြထားတဲ့ code sequenceample 4-1 ကို Flash ပရိုဂရမ်မှတ်ဉာဏ်၏ စာမျက်နှာတစ်ခုကို ဖျက်ရန် အသုံးပြုနိုင်သည်။ NVMCON မှတ်ပုံတင်ခြင်းကို ပရိုဂရမ်မှတ်ဉာဏ်၏ စာမျက်နှာတစ်မျက်နှာကို ဖျက်ရန် စီစဉ်ထားသည်။ NVMADR နှင့် NMVADRU မှတ်ပုံတင်မှုများကို ဖျက်ပစ်ရန် စာမျက်နှာ၏ အစလိပ်စာဖြင့် တင်ထားသည်။ ပရိုဂရမ်မမ်မိုရီကို "ညီ" စာမျက်နှာလိပ်စာနယ်နိမိတ်တွင် ဖျက်ရပါမည်။ Flash စာမျက်နှာ၏အရွယ်အစားကိုဆုံးဖြတ်ရန် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “Flash Program Memory” အခန်းကို ကြည့်ပါ။
WR ဘစ် (NVMCON[15]) ကို မသတ်မှတ်မီ NVMKEY မှတ်ပုံတင်ခြင်းသို့ အထူးသော့ဖွင့်ခြင်း သို့မဟုတ် သော့နံပါတ်စီကို ရေးသားခြင်းဖြင့် ဖျက်ပစ်ခြင်းလုပ်ငန်းကို စတင်သည်။ Ex တွင်ပြထားသည့်အတိုင်း သော့ဖွင့်ခြင်းအစီအစဉ်ကို အတိအကျအစီအစဥ်အတိုင်း လုပ်ဆောင်ရန် လိုအပ်သည်။ample 4-1, အနှောင့်အယှက်မရှိဘဲ; ထို့ကြောင့် အနှောင့်အယှက်များကို ပိတ်ရပါမည်။
ဖျက်ခြင်းသံသရာပြီးနောက် NOP ညွှန်ကြားချက်နှစ်ခုကို ကုဒ်တွင် ထည့်သွင်းသင့်သည်။ အချို့သော စက်ပစ္စည်းများတွင်၊ Configuration bits များကို ပရိုဂရမ် Flash ၏ နောက်ဆုံးစာမျက်နှာတွင် သိမ်းဆည်းထားသည်။ ဤစက်ပစ္စည်းများဖြင့်၊ ပရိုဂရမ်မှတ်ဉာဏ်၏နောက်ဆုံးစာမျက်နှာရှိ စာမျက်နှာဖျက်ခြင်းလုပ်ဆောင်ချက်ကို လုပ်ဆောင်ခြင်းဖြင့် Flash Configuration bytes များကို ဖျက်ပစ်ပြီး ရလဒ်အနေဖြင့် ကုဒ်အကာအကွယ်ကို ဖွင့်ပေးသည်။ အသုံးပြုသူများသည် ပရိုဂရမ်မှတ်ဉာဏ်၏ နောက်ဆုံးစာမျက်နှာတွင် စာမျက်နှာဖျက်ခြင်းဆိုင်ရာ လုပ်ဆောင်ချက်များကို မလုပ်ဆောင်သင့်ပါ။MICROCHIP-PIC24-Flash-Programming- (၁)MICROCHIP-PIC24-Flash-Programming- (၁)

ရေးရန် လက်ဆွဲများ တင်နေသည်။
write latches ကို အသုံးပြုသူ အပလီကေးရှင်း Table Writes နှင့် အမှန်တကယ် ပရိုဂရမ်းမင်း အစီအစဥ်အကြား သိုလှောင်မှု ယန္တရားအဖြစ် အသုံးပြုသည်။ ပရိုဂရမ်းမင်းလုပ်ဆောင်နေစဉ်အတွင်း၊ စက်သည် ရေးရန်လက်ကွက်များမှ ဒေတာများကို Flash memory သို့ လွှဲပြောင်းပေးမည်ဖြစ်သည်။ အတန်းပရိုဂရမ်ကို ပံ့ပိုးပေးသည့် စက်ပစ္စည်းများအတွက် Example 4-3 သည် 128 write latches (128 instruction words) ကို တင်ရန် အသုံးပြုနိုင်သည့် ညွှန်ကြားချက်များကို အတွဲလိုက်ပြသည်။ Flash ပရိုဂရမ်မမ်မိုရီအတန်းကို ပရိုဂရမ်ရေးဆွဲရန်အတွက် 128 TBLWTL နှင့် 128 TBLWTH ညွှန်ကြားချက်များ လိုအပ်ပါသည်။ သင့်စက်တွင်ရရှိနိုင်သည့် ပရိုဂရမ်ရေးလက်ချောင်းအရေအတွက်ကို ဆုံးဖြတ်ရန် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်၏ “Flash Program Memory” အခန်းကို ကိုးကားပါ။ အတန်းပရိုဂရမ်ကို မပံ့ပိုးသော စက်ပစ္စည်းများအတွက်၊ Example 4-4 သည် စာရေးလက်ကွက်နှစ်ခု (ညွှန်ကြားချက် စကားလုံးနှစ်လုံး) ကို တင်ရန် အသုံးပြုနိုင်သည့် ညွှန်ကြားချက်များ အတွဲလိုက်ကို ပြသသည်။ write latches ကိုတင်ရန် TBLWTL နှစ်ခုနှင့် TBLWTH ညွှန်ကြားချက်နှစ်ခု လိုအပ်ပါသည်။

မှတ်ချက်

  1. Load_Write_Latch_Row အတွက် ကုဒ်ကို Ex တွင် ပြထားသည်။ample 4-3 နှင့် Load_Write_Latch_Word အတွက် ကုဒ်ကို Ex တွင် ပြထားသည်။ample 4-4။ အဲဒီ နှစ်ခုလုံးမှာ ကုဒ်က examples ကို နောက်ဆက်တွဲ ex တွင်ရည်ညွှန်းသည်။amples
  2. latches အရေအတွက်အတွက် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ကို ကိုးကားပါ။MICROCHIP-PIC24-Flash-Programming- (၁)

SINGLE ROW ပရိုဂရမ် EXAMPLE
NVMCON မှတ်ပုံတင်ခြင်းကို Flash ပရိုဂရမ်မှတ်ဉာဏ်၏ အတန်းတစ်တန်းကို ပရိုဂရမ်အတွက် စီစဉ်သတ်မှတ်ထားသည်။ WR ဘစ် (NVMCON[15]) ကို မသတ်မှတ်မီ NVMKEY မှတ်ပုံတင်ခြင်းသို့ အထူးသော့ဖွင့်ခြင်း သို့မဟုတ် သော့တွဲကို ရေးသားခြင်းဖြင့် ပရိုဂရမ်လည်ပတ်မှုကို စတင်သည်။ သော့ဖွင့်ခြင်း အစီအစဥ်အား အနှောင့်အယှက်မရှိဘဲ လုပ်ဆောင်ရန် လိုအပ်ပြီး Ex တွင် ပြထားသည့်အတိုင်း အတိအကျ အစီအစဥ်အတိုင်း လုပ်ဆောင်ရပါမည်။ample 4-5။ ထို့ကြောင့်၊ အပိုင်းကိုမရေးမီ ကြားဖြတ်မှုများကို ပိတ်ထားရပါမည်။

မှတ်ချက် - စက်ပစ္စည်းအားလုံးတွင် အတန်းပရိုဂရမ်ရေးခြင်းစွမ်းရည် မရှိပါ။ ဤရွေးချယ်ခွင့်ကို ရနိုင်မလား။

ပရိုဂရမ်းမင်းစက်ဝန်းပြီးနောက် NOP ညွှန်ကြားချက်နှစ်ခုကို ကုဒ်တွင် ထည့်သွင်းသင့်သည်။MICROCHIP-PIC24-Flash-Programming- (၁) MICROCHIP-PIC24-Flash-Programming- (၁)

RAM ကြားခံကို အသုံးပြု၍ ပရိုဂရမ် အတန်း
dsPIC33 စက်ပစ္စည်းများကို ရွေးချယ်ပါက TBLWT ညွှန်ကြားချက်များဖြင့် ဒေတာလွှဲပြောင်းရန် လက်ကိုင်လက်ဆွဲများမှတဆင့် ဒေတာ RAM ရှိ ကြားခံနေရာမှ တိုက်ရိုက်လုပ်ဆောင်ရန် ခွင့်ပြုပါသည်။ RAM buffer ၏တည်နေရာကိုရေးသားရမည့်ပရိုဂရမ်ဒေတာ၏ပထမဆုံးစကားလုံးပါရှိသောဒေတာ RAM လိပ်စာနှင့်အတူတင်ထားသော NVMSRCADR မှတ်ပုံတင်(များ) မှဆုံးဖြတ်သည်။

ပရိုဂရမ် လုပ်ဆောင်ချက်ကို မလုပ်ဆောင်မီ၊ RAM အတွင်းရှိ ကြားခံနေရာလွတ်ကို ပရိုဂရမ်ရေးဆွဲမည့် ဒေတာအတန်းနှင့်အတူ တင်ဆောင်ရမည်ဖြစ်သည်။ RAM ကို ချုံ့ပြီး (ထုပ်ပိုးထားသော) သို့မဟုတ် ချုံ့မထားသော ဖော်မတ်ဖြင့် တင်နိုင်သည်။ ကပ်လျက်ပရိုဂရမ်ဒေတာ စကားလုံးနှစ်လုံး၏ သိသာထင်ရှားသော ဘိုက်များ (MSBs) များကို သိမ်းဆည်းရန် ဖိသိပ်ထားသော သိုလှောင်မှုသည် ဒေတာစကားလုံးတစ်လုံးကို အသုံးပြုသည်။ ချုံ့မထားသော ဖော်မတ်သည် ပရိုဂရမ်ဒေတာစကားလုံးတစ်ခုစီအတွက် ဒေတာစကားလုံးနှစ်လုံးကို အသုံးပြုပြီး အခြားစကားလုံးတိုင်း၏ အထက်ဘိုက်သည် 00h ဖြစ်သည်။ ချုံ့မထားသော ဖော်မတ်နှင့် နှိုင်းယှဉ်ပါက ဒေတာ RAM တွင် နေရာလွတ် 3/4 ခန့်ကို အသုံးပြုသည်။ အခြားတစ်ဖက်တွင်၊ ဖိသိပ်မထားသော ဖော်မတ်သည် 24-bit ပရိုဂရမ်ဒေတာစကားလုံး၏ တည်ဆောက်ပုံအား အတုယူကာ အထက် phantom byte နှင့် ပြည့်စုံသည်။ ဒေတာဖော်မတ်ကို RPDF ဘစ် (NVMCON[9]) ဖြင့် ရွေးချယ်ထားသည်။ ဤဖော်မတ်နှစ်ခုကို ပုံ 4-1 တွင် ပြထားသည်။

RAM ကြားခံကို တင်ပြီးသည်နှင့် Flash Address Pointers၊ NVMADR နှင့် NVMADRU တို့သည် ရေးသားရမည့် Flash အတန်း၏ 24-bit စတင်လိပ်စာနှင့်အတူ တင်ဆောင်လာသည်။ write latches ကို ပရိုဂရမ်ရေးဆွဲခြင်းကဲ့သို့ပင်၊ လုပ်ငန်းစဉ်သည် NVM လော့ခ်ဖွင့်ခြင်း အစီအစဥ်ကို ရေးသားပြီး WR ဘစ်ကို သတ်မှတ်ခြင်းဖြင့် စတင်သည်။ စတင်ပြီးသည်နှင့်၊ စက်သည် ညာဘက်လက်တင်များကို အလိုအလျောက်တင်ပြီး ဘိုက်အားလုံးကို ပရိုဂရမ်မပြီးမချင်း NVM လိပ်စာစာရင်းသွင်းမှုများကို တိုးပေးသည်။ ထွample 4-7 တွင် ex ကို ပြသည်။ample ၏လုပ်ငန်းစဉ်။ အကယ်၍ NVMSRCADR သည် ဒေတာလည်ပတ်မှုအားနည်းသော အမှားအယွင်းအခြေအနေဖြစ်ပေါ်သည့်တန်ဖိုးတစ်ခုသို့ သတ်မှတ်ပါက၊ URERR ဘစ် (NVMCON[8]) သည် အခြေအနေအား ညွှန်ပြရန် သတ်မှတ်မည်ဖြစ်သည်။
RAM ကြားခံအတန်း ပရိုဂရမ်းမင်းကို အကောင်အထည်ဖော်သည့် စက်ပစ္စည်းများသည် စာရေးလက်တင်များ တစ်ခု သို့မဟုတ် နှစ်ခုကို အကောင်အထည်ဖော်သည်။ ၎င်းတို့ကို TBLWT ညွှန်ကြားချက်များကို အသုံးပြု၍ တင်ဆောင်ပြီး စကားလုံးပရိုဂရမ်ရေးဆွဲခြင်း လုပ်ငန်းများကို လုပ်ဆောင်ရန် အသုံးပြုပါသည်။MICROCHIP-PIC24-Flash-Programming- (၁)

စကားလုံး ပရိုဂရမ်ရေးခြင်း။
NVMCON မှတ်ပုံတင်ခြင်းကို Flash ပရိုဂရမ်မမ်မိုရီ၏ ညွှန်ကြားချက်စကားလုံးနှစ်လုံးကို ပရိုဂရမ်ပြုလုပ်ရန် စီစဉ်ထားသည်။ WR ဘစ် (NVMCON[15]) ကို မသတ်မှတ်မီ NVMKEY မှတ်ပုံတင်ခြင်းသို့ အထူးသော့ဖွင့်ခြင်း သို့မဟုတ် သော့တွဲကို ရေးသားခြင်းဖြင့် ပရိုဂရမ်လည်ပတ်မှုကို စတင်သည်။ Ex တွင်ပြထားသည့်အတိုင်း သော့ဖွင့်ခြင်းအစီအစဉ်ကို အတိအကျအစီအစဥ်အတိုင်း လုပ်ဆောင်ရန် လိုအပ်သည်။ample 4-8, ပြတ်တောက်ခြင်းမရှိဘဲ။ ထို့ကြောင့်၊ အပိုင်းကိုမရေးမီ ကြားဖြတ်မှုများကို ပိတ်ထားသင့်သည်။
ပရိုဂရမ်းမင်းစက်ဝန်းပြီးနောက် NOP ညွှန်ကြားချက်နှစ်ခုကို ကုဒ်တွင် ထည့်သွင်းသင့်သည်။MICROCHIP-PIC24-Flash-Programming- (၁) MICROCHIP-PIC24-Flash-Programming- (၁)

Device Configuration Registers သို့ စာရေးခြင်း။
အချို့သော စက်ပစ္စည်းများတွင်၊ "Device Configuration Registers" ဟုခေါ်သည့် အပိုင်းရှိ ကွန်ဖရင့်မှတ်ဉာဏ်နေရာလွတ်တွင် တပ်ဆင်မှုဘစ်များကို သိမ်းဆည်းထားသည်။ အခြားစက်ပစ္စည်းများတွင်၊ "Flash Configuration Bytes" ဟုခေါ်သည့်အပိုင်းရှိ Flash အသုံးပြုသူမှတ်ဉာဏ်နေရာကို ပရိုဂရမ်၏နောက်ဆုံးစာမျက်နှာတွင် စုစည်းမှုဘစ်များကို သိမ်းဆည်းထားသည်။ ဤစက်ပစ္စည်းများဖြင့်၊ ပရိုဂရမ်မှတ်ဉာဏ်၏နောက်ဆုံးစာမျက်နှာရှိ စာမျက်နှာဖျက်ခြင်းလုပ်ဆောင်ချက်ကို လုပ်ဆောင်ခြင်းဖြင့် ကုဒ်ကိုကာကွယ်ပေးသည့် Flash Configuration bytes ကို ဖျက်ပစ်ပါသည်။ ထို့ကြောင့်၊ အသုံးပြုသူများသည် ပရိုဂရမ်မှတ်ဉာဏ်၏ နောက်ဆုံးစာမျက်နှာတွင် စာမျက်နှာဖျက်ခြင်း လုပ်ဆောင်ချက်များကို မလုပ်ဆောင်သင့်ပါ။ Configuration bits တည်နေရာကို ဆုံးဖြတ်ရန် သတ်မှတ်ထားသော စက်ဒေတာစာရွက်၏ "မှတ်ဉာဏ်အဖွဲ့အစည်း" အခန်းရှိ ပရိုဂရမ်မှတ်ဉာဏ်မြေပုံကို ကိုးကားပါ။

Configuration bits များကို configuration memory space တွင် သိမ်းဆည်းသောအခါ၊ RTSP သည် device Configuration registers များသို့ စာရေးရန်အသုံးပြုနိုင်ပြီး RTSP သည် Configuration register တစ်ခုစီကို ပထမဦးစွာ ဖျက်ပစ်သည့် cycle ကိုမလုပ်ဆောင်ဘဲ တစ်ဦးချင်းပြန်လည်ရေးသားရန် ခွင့်ပြုပါသည်။ စနစ်နာရီရင်းမြစ်၊ PLL နှင့် WDT ဖွင့်ခြင်းကဲ့သို့ အရေးကြီးသော စက်လည်ပတ်မှု ဘောင်များကို ထိန်းချုပ်ထားသောကြောင့် ဖွဲ့စည်းမှု မှတ်ပုံတင်ခြင်းကို ရေးသားသည့်အခါ သတိထားရပါမည်။

TBLWTL ညွှန်ကြားချက်များသာလိုအပ်သည်မှလွဲ၍ စက်ပစ္စည်းတစ်ခုဖွဲ့စည်းပုံမှတ်ပုံတင်ခြင်းဆိုင်ရာ ပရိုဂရမ်ရေးဆွဲခြင်းလုပ်ငန်းစဉ်သည် Flash ပရိုဂရမ်မှတ်ဉာဏ်အား ပရိုဂရမ်ရေးဆွဲခြင်းလုပ်ငန်းစဉ်နှင့် ဆင်တူသည်။ အဘယ်ကြောင့်ဆိုသော် စက်ပစ္စည်းတစ်ခုစီ၏ ဖွဲ့စည်းမှုပုံစံမှတ်ပုံတင်ခြင်းရှိ အထက်ရှစ်ဘစ်များကို အသုံးမပြုသောကြောင့်ဖြစ်သည်။ ထို့အပြင်၊ Table Write လိပ်စာ၏ bit 23 ကို Configuration registers များသို့ဝင်ရောက်ရန် သတ်မှတ်ရပါမည်။ စက်ဖွဲ့စည်းပုံ မှတ်ပုံတင်ခြင်းဆိုင်ရာ အပြည့်အစုံဖော်ပြချက်အတွက် “dsPIC70000618/PIC33 Family Reference Manual” နှင့် “Device Configuration” (DS24) ကို ကိုးကားပြီး သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ရှိ “အထူးအင်္ဂါရပ်များ” အခန်းကို ကိုးကားပါ။

မှတ်ချက်

  1. စက်ပစ္စည်းဖွဲ့စည်းပုံပြင်ဆင်ခြင်း မှတ်ပုံတင်များထံ စာရေးခြင်းသည် စက်အားလုံးတွင် မရရှိနိုင်ပါ။ စက်၏သီးသန့် NVMOP[3:0] bits ၏အဓိပ္ပါယ်ဖွင့်ဆိုချက်အရ ရရှိနိုင်သောမုဒ်များကို ဆုံးဖြတ်ရန် သီးခြားစက်ပစ္စည်းဒေတာစာရွက်ရှိ “အထူးအင်္ဂါရပ်များ” အခန်းကို ကိုးကားပါ။
  2. RTSP သည် စက်ဖွဲ့စည်းပုံပုံစံ မှတ်ပုံတင်ခြင်းများတွင် လုပ်ဆောင်နေစဉ်၊ စက်အတွင်းပိုင်း FRC Oscillator (PLL မပါဘဲ) ကို အသုံးပြု၍ လည်ပတ်နေရပါမည်။ စက်ပစ္စည်းသည် မတူညီသော နာရီရင်းမြစ်တစ်ခုမှ လည်ပတ်နေပါက၊ စက်တွင်း FRC Oscillator (NOSC[2:0] = 000) သို့ နာရီခလုတ်ကို ကိရိယာဖွဲ့စည်းပုံပုံစံ မှတ်ပုံတင်ခြင်းများတွင် RTSP လုပ်ဆောင်ချက် မလုပ်ဆောင်မီ လုပ်ဆောင်ရပါမည်။
  3. Oscillator Configuration register (FOSC) ရှိ Primary Oscillator Mode တွင် bits (POSCMD[1:0]) ကို ရွေးချယ်ပြီး value အသစ်တစ်ခုသို့ ပြန်လည်ပရိုဂရမ်ပြုလုပ်နေပါက၊ အသုံးပြုသူသည် Clocking Mode ကို bits (FCKSM[1:0]) ရှိသေချာစေရပါမည်။ FOSC မှတ်ပုံတင်ခြင်းတွင် ဤ RTSP လုပ်ဆောင်ချက်ကို မလုပ်ဆောင်မီ ကနဦး ပရိုဂရမ်တန်ဖိုး '0' ရှိသည်။

ဖွဲ့စည်းမှုမှတ်ပုံတင်ခြင်း ALGORITHM ရေးပါ။
အထွေထွေလုပ်ထုံးလုပ်နည်းမှာ အောက်ပါအတိုင်းဖြစ်သည်။

  1. TBLWTL ညွှန်ကြားချက်ကို အသုံးပြု၍ ဇယားရေးရန် လက်ချိတ်တွင် အသစ်ဖွဲ့စည်းမှုတန်ဖိုးကို ရေးပါ။
  2. Configuration register တစ်ခုအတွက် NVMCON ကို configure လုပ်ပါ (NVMCON = 0x4000)။
  3. NVMADRU နှင့် NVMADR မှတ်ပုံတင်မှုများတွင် ပရိုဂရမ်ထည့်သွင်းရန် ဖွဲ့စည်းမှုမှတ်ပုံတင်ခြင်း၏လိပ်စာကို ရေးပါ။
  4. ဖွင့်ထားလျှင် အနှောင့်အယှက်များကို ပိတ်ပါ။
  5. NVMKEY မှတ်ပုံတင်ရန်အတွက် သော့တွဲကိုရေးပါ။
  6. WR ဘစ် (NVMCON[15]) ကို သတ်မှတ်ခြင်းဖြင့် ရေးသည့် အတွဲကို စတင်ပါ။
  7. လိုအပ်ပါက ကြားဖြတ်များကို ပြန်ဖွင့်ပါ။

Example 4-10 သည် device Configuration register ကို ပြုပြင်မွမ်းမံရန် အသုံးပြုနိုင်သည့် ကုဒ် sequence ကို ပြသသည်။MICROCHIP-PIC24-Flash-Programming- (၁)

မြေပုံကို မှတ်ပုံတင်ပါ။

Flash Programming နှင့် ဆက်စပ်သော မှတ်ပုံတင်ခြင်း အကျဉ်းချုပ်ကို ဇယား 5-1 တွင် ဖော်ပြထားသည်။MICROCHIP-PIC24-Flash-Programming- (၁)

သက်ဆိုင်သော လျှောက်လွှာများ မှတ်စုများ

ဤကဏ္ဍသည် လက်စွဲစာအုပ်၏ ဤကဏ္ဍနှင့် သက်ဆိုင်သည့် အပလီကေးရှင်းမှတ်စုများကို စာရင်းပြုစုထားသည်။ ဤအပလီကေးရှင်းမှတ်စုများကို dsPIC33/PIC24 ထုတ်ကုန်မိသားစုများအတွက် အတိအကျရေးထားမည်မဟုတ်သော်လည်း သဘောတရားများသည် သက်ဆိုင်ပြီး ပြုပြင်မွမ်းမံခြင်းနှင့် ဖြစ်နိုင်သောကန့်သတ်ချက်များဖြင့် အသုံးပြုနိုင်သည်။ Flash Programming နှင့် ပတ်သက်သော လက်ရှိ အပလီကေးရှင်း မှတ်စုများမှာ-

မှတ်ချက် - Microchip ကို ဝင်ကြည့်ပါ။ webဆိုဒ် (www.microchip.com) အပိုဆောင်း အပလီကေးရှင်းမှတ်စုများနှင့် ကုဒ် exampစက်များ၏ dsPIC33/PIC24 မိသားစုများအတွက် les။

ပြန်လည်ပြင်ဆင်မှုသမိုင်း

Revision A (သြဂုတ် 2009)
ဤသည်မှာ ဤစာတမ်း၏ ကနဦးထွက်ရှိထားသောဗားရှင်းဖြစ်သည်။

Revision B (ဖေဖော်ဝါရီ 2011)
ဤပြင်ဆင်ချက်တွင် အောက်ပါ အပ်ဒိတ်များ ပါဝင်သည်-

  • Examples-
    • Ex ကို ဖယ်လိုက်သည်ample 5-3 နှင့် Example 5-4
    • မွမ်းမံထားသော Example 4-1၊ ထွample 4-5 နှင့် Example 4-10
    • #WR ဆိုင်ရာ မည်သည့်ရည်ညွှန်းချက်မဆို Ex တွင် #15 သို့ အပ်ဒိတ်လုပ်ထားသည်။ample 4-1၊ ထွample 4-5 နှင့် Example 4-8
    • Ex တွင် အောက်ပါတို့ကို အပ်ဒိတ်လုပ်ထားသည်။ample 4-3:
  • “Word Programming” ခေါင်းစဉ်ကို “အတန်းပရိုဂရမ်ရေးဆွဲခြင်းအတွက် စာရေးလက်ကွက်များတင်နေသည်” သို့ အပ်ဒိတ်လုပ်ခဲ့သည်
  • #ram_image ကို ကိုးကားချက်မှန်သမျှကို #0xFA သို့ အပ်ဒိတ်လုပ်ခဲ့သည်။
    • Added Example 4-4
    • Ex တွင် ခေါင်းစဉ်ကို အပ်ဒိတ်လုပ်ထားသည်။ample 4-8
  • မှတ်စုများ-
    • အပိုင်း 4.2 “Flash Programming Operations” တွင် မှတ်စုနှစ်ခု ထည့်ထားသည်
    • အပိုင်း 4.5.2 "ရေးရန် လက်ချောင်းများ တင်နေသည်" တွင် မှတ်စုကို အပ်ဒိတ်လုပ်ထားသည်။
    • အပိုင်း 4.6 "စက်ပစ္စည်းဖွဲ့စည်းပုံဆိုင်ရာ မှတ်ပုံတင်ခြင်းသို့ စာရေးခြင်း" တွင် မှတ်စုသုံးခု ထည့်ထားသည်
    • ဇယား 1-5 တွင် မှတ်စု 1 ကို ထည့်ထားသည်။
  • မှတ်ပုံတင်များ-
    • NVMOP အတွက် ဘစ်တန်ဖိုးများကို အပ်ဒိတ်လုပ်ခဲ့သည်[3:0]- NVM လည်ပတ်မှု Flash Memory Control (NVMCON) မှတ်ပုံတင်ရှိ ဘစ်များကို ရွေးချယ်ပါ (မှတ်ပုံတင်ခြင်း 3-1 ကိုကြည့်ပါ)
  • ကဏ္ဍများ-
    • ဖယ်ရှားထားသောအပိုင်းများ 5.2.1.4 “Write Word Mode” နှင့် 5.2.1.5 “Write Byte Mode”
    • အပိုင်း 3.0 "ထိန်းချုပ်ရေး မှတ်ပုံတင်များ" ကို အပ်ဒိတ်လုပ်ထားသည်။
    • အပိုင်း 4.5.5 “Word Programming” တွင် အောက်ပါတို့ကို အပ်ဒိတ်လုပ်ထားသည်-
  • ကဏ္ဍခေါင်းစဉ် “Word of Flash Memory” ကို “Word Programming” သို့ ပြောင်းခဲ့သည်
  • ပထမအပိုဒ်ကို အပ်ဒိတ်လုပ်ထားသည်။
  • ဒုတိယအပိုဒ်တွင် “စကားလုံးတစ်လုံး” ဟူသော ဝေါဟာရများကို “စကားလုံးတစ်စုံ” သို့ ပြောင်းခဲ့သည်။
    • အဆင့် 1 အသစ်ကို အပိုင်း 4.6.1 "ဖွဲ့စည်းပုံ မှတ်ပုံတင်ခြင်း ရေးရန် အယ်လဂိုရီသမ်"
  • ဇယားများ-
    • ဇယား 5-1 ကို အပ်ဒိတ်လုပ်ထားသည်။
  • ပရိုဂရမ်မှတ်ဉာဏ်ဆိုင်ရာ ရည်ညွှန်းချက်အချို့ကို Flash ပရိုဂရမ်မှတ်ဉာဏ်သို့ အပ်ဒိတ်လုပ်ခဲ့သည်။
  • ဘာသာစကားနှင့် ဖော်မတ်ချခြင်း အပ်ဒိတ်များကဲ့သို့သော အခြားအသေးစားမွမ်းမံမှုများကို စာရွက်စာတမ်းတစ်လျှောက်တွင် ထည့်သွင်းထားသည်။

ပြင်ဆင်ချက် C (ဇွန် 2011)
ဤပြင်ဆင်ချက်တွင် အောက်ပါ အပ်ဒိတ်များ ပါဝင်သည်-

  • Examples-
    • မွမ်းမံထားသော Example 4-1
    • မွမ်းမံထားသော Example 4-8
  • မှတ်စုများ-
    • အပိုင်း 4.1 "RTSP လုပ်ဆောင်ချက်" တွင် မှတ်စုတစ်ခု ထည့်ထားသည်
    • အပိုင်း 3 “Flash Programming Operations” တွင် Note 4.2 ကို ထည့်သွင်းခဲ့သည်
    • အပိုင်း 3 “RTSP Programming Algorithm” တွင် မှတ်စု 4.2.1 ကို ထည့်သွင်းထားသည်။
    • အပိုင်း 4.5.1 “Flash တစ်မျက်နှာကို ဖျက်ပစ်ခြင်း” တွင် မှတ်စုတစ်ခု ထည့်ထားသည်
    • အပိုင်း 2 "စာရေးလက်ကွက်များတင်နေသည်" တွင် မှတ်စု 4.5.2 ကို ထည့်ထားသည်
  • မှတ်ပုံတင်များ-
    • Nonvolatile Memory Address မှတ်ပုံတင်ခြင်းတွင် bits 15-0 အတွက် bit ဖော်ပြချက်ကို အပ်ဒိတ်လုပ်ခဲ့သည် (မှတ်ပုံတင်ခြင်း 3-3 ကိုကြည့်ပါ)
  • ကဏ္ဍများ-
    • အပိုင်း 4.1 "RTSP လုပ်ဆောင်ချက်" ကို အပ်ဒိတ်လုပ်ထားသည်။
    • အပိုင်း 4.5.5 "Word Programming" ကို အပ်ဒိတ်လုပ်ထားသည်။
  • ဘာသာစကားနှင့် ဖော်မတ်ချခြင်း အပ်ဒိတ်များကဲ့သို့သော အခြားအသေးစားမွမ်းမံမှုများကို စာရွက်စာတမ်းတစ်လျှောက်တွင် ထည့်သွင်းထားသည်။

ပြင်ဆင်ချက် D (ဒီဇင်ဘာ 2011)
ဤပြင်ဆင်ချက်တွင် အောက်ပါ အပ်ဒိတ်များ ပါဝင်သည်-

  • အပိုင်း 2.1.3 "Table Write Laatches" ကို အပ်ဒိတ်လုပ်ထားသည်။
  • အပိုင်း 3.2 “NVMKEY မှတ်ပုံတင်ခြင်း” ကို အပ်ဒိတ်လုပ်ထားသည်။
  • NVMCON တွင် မှတ်စုများကို အပ်ဒိတ်လုပ်ထားသည်- Flash Memory Control Register (မှတ်ပုံတင်ခြင်း 3-1 ကိုကြည့်ပါ)
  • အပိုင်း 4.0 "Run-Time Self-Programming (RTSP)" တစ်လျှောက်လုံးတွင် ကျယ်ကျယ်ပြန့်ပြန့် မွမ်းမံမှုများ ပြုလုပ်ခဲ့သည်။
  • ဘာသာစကားနှင့် ဖော်မတ်ချခြင်း အပ်ဒိတ်များကဲ့သို့သော အခြားအသေးစားမွမ်းမံမှုများကို စာရွက်စာတမ်းတစ်လျှောက်တွင် ထည့်သွင်းထားသည်။

ပြင်ဆင်ချက် E (အောက်တိုဘာ 2018)
ဤပြင်ဆင်ချက်တွင် အောက်ပါ အပ်ဒိတ်များ ပါဝင်သည်-

  • Added Example 2-2၊ ထွample 4-2၊ ထွample 4-6 နှင့် Example 4-9
  • အပိုင်း 4.5.4 "RAM Buffer ကိုအသုံးပြုခြင်း အတန်းအစီအစဉ်ရေးဆွဲခြင်း"
  • မွမ်းမံထားသော အပိုင်း 1.0 “နိဒါန်း”၊ အပိုင်း 3.3 “NVM လိပ်စာ မှတ်ပုံတင်မှုများ”၊ အပိုင်း 4.0 “Run-Time Self-Programming (RTSP)” နှင့် အပိုင်း 4.5.3 “Single Row Programming Example”
  • မှတ်ပုံတင်ခြင်း ၃-၁ ကို အပ်ဒိတ်လုပ်ထားသည်။
  • မွမ်းမံထားသော Example 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။
မွမ်းမံထားသော အပိုင်း 3.2 “NVMKEY မှတ်ပုံတင်ခြင်း”၊ အပိုင်း 4.5.1 “Flash တစ်မျက်နှာကို ဖျက်ပစ်ခြင်း”၊ အပိုင်း 4.5.3 “အတန်းဖော် ပရိုဂရမ်းမင်း Example” နှင့် အပိုင်း 4.6.1 “Configuration Register Write Algorithm”။

Microchip ထုတ်ကုန်များတွင် ကုဒ်ကာကွယ်ရေးအင်္ဂါရပ်၏ အောက်ပါအသေးစိတ်အချက်အလက်များကို မှတ်သားထားပါ-

  • Microchip ထုတ်ကုန်များသည် ၎င်းတို့၏ သီးခြား Microchip Data Sheet တွင်ပါရှိသော သတ်မှတ်ချက်များနှင့် ကိုက်ညီပါသည်။
  • ရည်ရွယ်ထားသည့်ပုံစံ၊ လည်ပတ်မှုသတ်မှတ်ချက်များအတွင်းနှင့် ပုံမှန်အခြေအနေများတွင် အသုံးပြုသည့်အခါ ၎င်း၏ထုတ်ကုန်မိသားစုသည် လုံခြုံသည်ဟု Microchip က ယုံကြည်သည်။
  • Microchip သည် တန်ဖိုးရှိပြီး ၎င်း၏ ဉာဏမူပိုင်ခွင့်အခွင့်အရေးများကို ပြင်းပြင်းထန်ထန် ကာကွယ်ပေးသည်။ Microchip ထုတ်ကုန်၏ ကုဒ်အကာအကွယ်အင်္ဂါရပ်များကို ချိုးဖောက်ရန် ကြိုးပမ်းမှုများကို တင်းတင်းကျပ်ကျပ် တားမြစ်ထားပြီး Digital Millennium မူပိုင်ခွင့်အက်ဥပဒေကို ချိုးဖောက်နိုင်သည်။
  • Microchip နှင့် အခြား semiconductor ထုတ်လုပ်သူ နှစ်ဦးလုံးသည် ၎င်း၏ကုဒ်၏ လုံခြုံရေးကို အာမခံနိုင်မည်မဟုတ်ပေ။ ကုဒ်အကာအကွယ်သည် ကျွန်ုပ်တို့သည် ထုတ်ကုန်သည် “မပျက်စီးနိုင်သော” ဖြစ်သည်ဟု အာမခံသည်ဟု မဆိုလိုပါ။ ကုဒ်အကာအကွယ်သည် အဆက်မပြတ် ပြောင်းလဲနေသည်။ Microchip သည် ကျွန်ုပ်တို့၏ထုတ်ကုန်များ၏ ကုဒ်ကာကွယ်ရေးအင်္ဂါရပ်များကို စဉ်ဆက်မပြတ်တိုးတက်ကောင်းမွန်အောင်လုပ်ဆောင်ရန် ကတိပြုပါသည်။

ဤထုတ်ဝေမှုနှင့် ဤနေရာတွင်ရှိအချက်အလက်များကို Microchip ထုတ်ကုန်များကို ဒီဇိုင်းထုတ်ခြင်း၊ စမ်းသပ်ခြင်းနှင့် Microchip ထုတ်ကုန်များကို သင့်အက်ပ်လီကေးရှင်းနှင့် ပေါင်းစပ်ရန်အပါအဝင် Microchip ထုတ်ကုန်များနှင့်သာ အသုံးပြုနိုင်ပါသည်။ ဤအချက်အလက်ကို အခြားနည်းဖြင့် အသုံးပြုခြင်းသည် ဤစည်းကမ်းချက်များကို ချိုးဖောက်ပါသည်။ စက်ပစ္စည်းအပလီကေးရှင်းများနှင့်ပတ်သက်သည့် အချက်အလက်များကို သင့်အဆင်ပြေစေရန်အတွက်သာ ပံ့ပိုးပေးထားပြီး အပ်ဒိတ်များဖြင့် အစားထိုးနိုင်ပါသည်။ သင်၏လျှောက်လွှာသည် သင်၏သတ်မှတ်ချက်များနှင့် ကိုက်ညီကြောင်း သေချာစေရန်မှာ သင်၏တာဝန်ဖြစ်သည်။ အပိုပံ့ပိုးကူညီမှုများအတွက် သင်၏ဒေသခံ Microchip အရောင်းရုံးသို့ ဆက်သွယ်ပါ သို့မဟုတ် အပိုပံ့ပိုးကူညီမှုအား တွင် ရယူပါ။ https://www.microchip.com/en-us/support/design-help/client-supportservices.

ဤအချက်အလက်များကို Microchip "ရှိသကဲ့သို့" မှ ပံ့ပိုးပေးပါသည်။ MICROCHIP သည် မည်သည့်အမျိုးအစားကိုမျှ ကိုယ်စားပြုခြင်း သို့မဟုတ် အာမခံချက်များအား ဖော်ပြခြင်း သို့မဟုတ် အဓိပ္ပာယ်ဖွင့်ဆိုခြင်း၊ စာဖြင့်ဖြစ်စေ သို့မဟုတ် နှုတ်ဖြင့်ဖြစ်စေ၊ စည်းမျဉ်းဥပဒေ သို့မဟုတ် အခြားနည်းဖြင့်ဖြစ်စေ ဖော်ပြထားသည်ဖြစ်စေ အချက်အလက်များနှင့်ပတ်သက်သည့် ကန့်သတ်ချက်မရှိ၊ ကန့်သတ်ချက်မရှိ၊ အထူးရည်ရွယ်ချက်တစ်ခုအတွက် စွမ်းရည်၊ ကြံ့ခိုင်မှု သို့မဟုတ် အာမခံချက်များနှင့် သက်ဆိုင်သော၊ ၎င်း၏အခြေအနေ၊ အရည်အသွေး သို့မဟုတ် စွမ်းဆောင်ရည်။ သွယ်ဝိုက်သော၊ အထူး၊ ပြစ်ဒဏ်ခတ်မှု၊ မတော်တဆ သို့မဟုတ် အကျိုးဆက်ဖြစ်သော ဆုံးရှုံးမှု၊ ပျက်စီးမှု၊ ကုန်ကျစရိတ်၊ ကုန်ကျစရိတ်၊ သို့မဟုတ် စရိတ်စကတစ်မျိုးမျိုးအတွက် မိုက်ခရို Chip တွင် တာဝန်ရှိပါလိမ့်မည်၊ ၏ အကြံပြုချက်ဖြစ်ပါသည်။ ဖြစ်နိုင်ခြေ သို့မဟုတ် ပျက်စီးမှုများသည် မှန်းဆနိုင်သည်။ ဥပဒေအရ ခွင့်ပြုထားသော အတိုင်းအတာအထိ၊ သတင်းအချက်အလက်နှင့် သက်ဆိုင်သည့် မည်သည့်နည်းဖြင့်မဆို တောင်းဆိုမှုတိုင်းတွင် Microchip ၏ စုစုပေါင်းတာဝန်ဝတ္တရားမှာ သတင်းအချက်အလက် သို့မဟုတ် ၎င်း၏အသုံးပြုမှုကို သက်ဆိုင်သည်ဖြစ်စေ အခကြေးငွေပမာဏကို ကျော်လွန်မည်မဟုတ်ပါ၊ အကယ်၍ သင့်တွင်ပါရှိသော ပမာဏ၊

အသက်ကယ်ထောက်ပံ့မှုနှင့်/သို့မဟုတ် ဘေးကင်းရေးအပလီကေးရှင်းများတွင် Microchip စက်ပစ္စည်းများကို အသုံးပြုခြင်းသည် ဝယ်သူ၏အန္တရာယ်မှာ လုံးလုံးလျားလျားဖြစ်ပြီး ဝယ်ယူသူသည် ယင်းအသုံးပြုမှုမှရရှိလာသော ပျက်စီးဆုံးရှုံးမှုများ၊ အရေးဆိုမှုများ၊ လျော်ကြေးများ သို့မဟုတ် ကုန်ကျစရိတ်များမှ ကာကွယ်ရန်၊ လျော်ကြေးပေးပြီး ကိုင်ဆောင်ရန် သဘောတူပါသည်။ မည်သည့် Microchip ဉာဏပစ္စည်းမူပိုင်ခွင့်အခွင့်အရေးများအောက်တွင်၊ သွယ်ဝိုက်၍ဖြစ်စေ၊ အခြားနည်းဖြင့်ဖြစ်စေ လိုင်စင်များကို အခြားနည်းဖြင့်ဖော်ပြခြင်းမပြုဘဲ ဖြန့်ဝေခြင်းမပြုပါ။

Microchip ၏ အရည်အသွေးစီမံခန့်ခွဲမှုစနစ်များနှင့် ပတ်သက်သော အချက်အလက်များအတွက် ကျေးဇူးပြု၍ ဝင်ရောက်ကြည့်ရှုပါ။ www.microchip.com/quality.

ကုန်အမှတ်တံဆိပ်များ

Microchip အမည်နှင့် လိုဂို၊ Microchip လိုဂို၊ Adaptec၊ AnyRate၊ AVR၊ AVR လိုဂို၊ AVR Freaks၊ BesTime၊ BitCloud၊ CryptoMemory၊ CryptoRF၊ dsPIC၊ flexPWR၊ HELDO၊ IGLOO၊ JukeBlox၊ KeeLoq၊ Kleer၊ LANXeckty၊ Link၊MD၊ maXTouch၊ MediaLB၊ megaAVR၊ Microsemi၊ Microsemi လိုဂို၊ အများဆုံး၊ အများဆုံးလိုဂို၊ MPLAB၊ OptoLyzer၊ PIC၊ picoPower၊ PICSTART၊ PIC32 လိုဂို၊ PolarFire၊ Prochip ဒီဇိုင်နာ၊ QTouch၊ SAM-BA၊ SenGenuity၊ SpyNIC၊ SST၊ SuperFlash Logo ၊ Symmetricom၊ SyncServer၊ Tachyon၊ TimeSource၊ tinyAVR၊ UNI/O၊ Vectron နှင့် XMEGA တို့သည် USA နှင့် အခြားနိုင်ငံများတွင် ပေါင်းစပ်ထည့်သွင်းထားသော Microchip Technology ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များဖြစ်သည်။ AgileSwitch၊ APT၊ ClockWorks၊ The Embedded Control Solutions ကုမ္ပဏီ၊ EtherSynch၊ Flashtec၊ Hyper Speed ​​Control၊ HyperLight Load၊ IntelliMOS၊ Libero၊ motorBench၊ mTouch၊ Powermite 3၊ Precision Edge၊ ProASIC၊ ProASIC Plus၊ ProASIC Plus လိုဂို၊ Quiet-Wire၊ SmartFusion၊ SyncWorld၊ Temux၊ TimeCesium၊ TimeHub၊ TimePictra၊ TimeProvider၊ TrueTime၊ WinPath နှင့် ZL တို့သည် USA တွင်ထည့်သွင်းထားသော Microchip Technology ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များဖြစ်သည်

ကပ်လျက်သော့ ဖိနှိပ်မှု ၊ ECAN၊ Espresso T1S၊ EtherGREEN၊ GridTime၊ IdealBridge၊ In-Circuit Serial Programming၊ ICSP၊ INICnet၊ Intelligent Paralleling၊ Inter-Chip ချိတ်ဆက်မှု၊ JitterBlocker၊ Knob-on-Display၊ maxCrypto၊ အမြင့်ဆုံးView၊ memBrain၊ Mindi၊ MiWi၊ MPASM၊ MPF၊ MPLAB အသိအမှတ်ပြုလိုဂို၊ MPLIB၊ MPLINK၊ MultiTRAK၊ NetDetach၊ NVM Express၊ NVMe၊ Omniscient Code Generation၊ PICDEM၊ PICDEM.net၊ PICkit၊ PICtail၊ PowerSmart၊ PureSilicon၊ QMatrix ၊ Ripple Blocker၊ RTAX၊ RTG4၊ SAM-ICE၊ Serial Quad I/O၊ simpleMAP၊ SimpliPHY၊ SmartBuffer၊ SmartHLS၊ SMART-IS၊ storClad၊ SQI၊ SuperSwitcher၊ SuperSwitcher II၊ Switchtec၊ SynchroPHY၊ Total Endurance၊ TSHARC၊ USBCheck VariSense၊ VectorBlox၊ VeriPHY၊ ViewSpan၊ WiperLock၊ XpressConnect နှင့် ZENA တို့သည် USA နှင့် အခြားသောနိုင်ငံများရှိ Microchip Technology Incorporated ၏ ကုန်အမှတ်တံဆိပ်များဖြစ်သည်။

SQTP သည် USA တွင်ထည့်သွင်းထားသော Microchip Technology ၏ဝန်ဆောင်မှုအမှတ်အသားတစ်ခုဖြစ်သည်။
Adaptec လိုဂို၊ ဝယ်လိုအားရှိ ကြိမ်နှုန်း၊ Silicon Storage Technology၊ Symmcom နှင့် Trusted Time တို့သည် အခြားနိုင်ငံများရှိ Microchip Technology Inc. ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များဖြစ်သည်။
GestIC သည် Microchip Technology Germany II GmbH & Co. KG ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်တစ်ခုဖြစ်ပြီး အခြားနိုင်ငံများရှိ Microchip Technology Inc. ၏ လုပ်ငန်းခွဲတစ်ခုဖြစ်သည်။
ဤနေရာတွင် ဖော်ပြထားသော အခြားကုန်အမှတ်တံဆိပ်များအားလုံးသည် ၎င်းတို့၏ သက်ဆိုင်ရာကုမ္ပဏီများ၏ ပိုင်ဆိုင်မှုဖြစ်သည်။
© 2009-2021၊ Microchip Technology Incorporated နှင့် ၎င်း၏ လုပ်ငန်းခွဲများ။
မူပိုင်ခွင့်ကိုလက်ဝယ်ထားသည်။
ISBN: 978-1-5224-9314-3

ကမ္ဘာတစ်ဝှမ်း အရောင်းနှင့် ဝန်ဆောင်မှု

အမေရိကား

အာရှ/ပစိဖိတ်ဒေသ

  • သြစတြေးလျ - ဆစ်ဒနီ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ပေကျင်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ချန်ဒူး
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ချုံကင်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - Dongguan
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ကွမ်ကျိုး
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - Hangzhou
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - ဟောင်ကောင် SAR
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • တရုတ်-နန်ကျင်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - Qingdao
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ရှန်ဟိုင်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - ရှန်ယန်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ရှန်ကျန်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် - Suzhou
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ဝူဟန်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ်-ရှန်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • တရုတ် – Xiamen
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • တရုတ်-ဇူဟိုင်
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • အိန္ဒိယ-ဘန်ဂလို
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • အိန္ဒိယ - နယူးဒေလီ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • အိန္ဒိယ - ပွန်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ဂျပန်-အိုဆာကာ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ဂျပန်-တိုကျို
    ဖုန်း 81-3-6880- 3770
  • ကိုရီးယား - ဒေဂူ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ကိုရီးယား - ဆိုးလ်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • မလေးရှား - ကွာလာလမ်ပူ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • မလေးရှား-ပီနန်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ဖိလစ်ပိုင် - မနီလာ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • စင်္ကာပူ
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ထိုင်ဝမ် - ရှင်ချူး
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ထိုင်ဝမ် - ရှုံ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ထိုင်ဝမ်-တိုင်ပေ
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ထိုင်း-ဘန်ကောက်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ဗီယက်နမ် - ဟိုချီမင်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂

ဥရောပ

  • သြစတြီးယား - ဝဲလ်
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
    ဖက်စ်- ၃၃-၇၀-၀၄၀-၀၀၂
  • ဒိန်းမတ် - ကိုပင်ဟေဂင်
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
    ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄
  • ဖင်လန် - Espoo
    Tel: 358-9-4520-820
  • ပြင်သစ် - ပဲရစ်
    ဖုန်း 33-1-69-53-63-20
    ဖက်စ်- 33-1-69-30-90-79
  • ဂျာမနီ - Garching
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ဂျာမနီ – ဟာန်
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ဂျာမနီ – Heilbronn
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ဂျာမနီ – Karlsruhe
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ဂျာမနီ – မြူးနစ်
    ဖုန်း 49-89-627-144-0
    ဖက်စ်- 49-89-627-144-44
  • ဂျာမနီ – Rosenheim
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • အီတလီ – မီလန်
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
    ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄
  • အီတလီ – Padova
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • နယ်သာလန် - Drunen
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
    ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄
  • နော်ဝေး - Trondheim
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ပိုလန် - ဝါဆော
    ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄
  • ရိုမေးနီးယား - ဘူခါရက်စ်
    ဖုန်း 40-21-407-87-50
  • စပိန် – မက်ဒရစ်
    ဖုန်း 34-91-708-08-90
    ဖက်စ်- 34-91-708-08-91
  • ဆွီဒင် - Gothenberg
    ဖုန်း 46-31-704-60-40
  • ဆွီဒင် – စတော့ဟုမ်း
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
  • ယူကေ - Wokingham
    ဖုန်း ၃၃-၇၀-၀၄၀-၀၀၂
    ဖက်စ်- ၃၃-၇၀-၀၄၀-၀၀၂

မှတ်ချက် -

ဤမိသားစု ကိုးကားချက်လက်စွဲ ကဏ္ဍသည် စက်ပစ္စည်းဒေတာစာရွက်များ အတွက် ဖြည့်စွက်ချက်အဖြစ် လုပ်ဆောင်ရန် ရည်ရွယ်ပါသည်။ စက်ပစ္စည်းအမျိုးအစားပေါ်မူတည်၍ ဤလက်စွဲစာအုပ်ကဏ္ဍသည် dsPIC33/PIC24 စက်များအားလုံးနှင့် သက်ဆိုင်မည်မဟုတ်ပါ။ ဤစာရွက်စာတမ်းသည် သင်အသုံးပြုနေသည့်စက်ပစ္စည်းကို ထောက်ခံမှုရှိမရှိ စစ်ဆေးရန် လက်ရှိစက်ပစ္စည်းဒေတာစာရွက်ရှိ “Flash Program Memory” အခန်း၏အစတွင် ကျေးဇူးပြု၍ မှတ်သားထားပါ။
စက်ပစ္စည်းဒေတာစာရွက်များနှင့် မိသားစုကိုးကားချက်လက်စွဲကဏ္ဍများကို Microchip Worldwide မှ ဒေါင်းလုဒ်လုပ်ရန် ရနိုင်ပါသည်။ Webဆိုက်- http://www.microchip.com.

စာရွက်စာတမ်းများ / အရင်းအမြစ်များ

MICROCHIP PIC24 Flash ပရိုဂရမ်ရေးဆွဲခြင်း။ [pdf] အသုံးပြုသူလမ်းညွှန်
PIC24 Flash Programming၊ PIC24၊ Flash Programming၊ ပရိုဂရမ်းမင်း
MICROCHIP PIC24 Flash ပရိုဂရမ်ရေးဆွဲခြင်း။ [pdf] အသုံးပြုသူလမ်းညွှန်
PIC24 Flash Programming၊ PIC24၊ Flash Programming

ကိုးကား

မှတ်ချက်တစ်ခုချန်ထားပါ။

သင့်အီးမေးလ်လိပ်စာကို ထုတ်ပြန်မည်မဟုတ်ပါ။ လိုအပ်သောအကွက်များကို အမှတ်အသားပြုထားသည်။ *