楽天市場
[無料でホームページを作成] [通報・削除依頼]

PIC18F24K42をPICKIT2で焼くTIPS その2

前ページで検討したスクリプトをPIC18F26K42で検証しました。

img_20180411-125416.jpg


新規ファミリー PIC18F MSB1st
img_20180411-125525.jpg


○PIC18F26K42の設定
img_20180411-133207.jpgimg_20180411-133220.jpgimg_20180411-133236.jpg


○新規に作成したスクリプト
322 18F_NVM_MSB_First_RdDevID1

AAF2    BB01    AAE7    BB01    AAF2    BBFE    AAF2    BBFF
AAF2    BB3F    AAE7    BB01    AAF2    BB3F    AAE7    BB01
AAEB    BB07    AAF0    AAF0    AAEB    BB01

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT               01
F2 FE    WRITE_BYTE_LITERAL    FE    //1111.1110 -> 0111.1111    7F (0x3FFFFE*2)
F2 FF    WRITE_BYTE_LITERAL    FF    //1111.1111 -> 1111.1111     FF
F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    FC
E7 01    DELAY_SHORT               01
F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    Read Data from NVM
E7 01    DELAY_SHORT               01
EB 07    READ_BITS                    07
F0    READ_BYTE_BUFFER    
F0    READ_BYTE_BUFFER    
EB 01    READ_BITS                    01

----------------------------------------------------------------------------------------
323 18F_NVM_MSB_First_ChpEraseEE10ms

AAF2    BB01    AAE7    BB01    AAF2    BB06    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB18    AAE8    BB02
AAF2    BB01    AAE7    BB01    AAF2    BB46    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB18    AAE8    BB02

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT               01
F2 06    WRITE_BYTE_LITERAL    06    //0000.0110 -> 0110.0000    60 (0x300000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 18    WRITE_BYTE_LITERAL    18    //0001.1000 -> 0001.1000    Bulk Erase Memory
E8 02    DELAY_LONG                  02
F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 46    WRITE_BYTE_LITERAL    46    //0100.0110 -> 0110.0010    62 (0x310000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 18    WRITE_BYTE_LITERAL    18    //0001.1000 -> 0001.1000    Bulk Erase Memory
E8 02    DELAY_LONG                  02

----------------------------------------------------------------------------------------
324 18F_NVM_MSB_First_EEPrep

AAF2    BB01    AAE7    BB01    AAF2    BB46    AAF2    BB00
AAF2    BB00

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 46    WRITE_BYTE_LITERAL    46    //0100.0110 -> 0110.0010    62 (0x310000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00

----------------------------------------------------------------------------------------
325 18F_NVM_MSB_First_UsrIDRd8Int

AAF2    BB01    AAE7    BB01    AAF2    BB02    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB3F    AAE7    BB01
AAEB    BB07    AAF0    AAF0    AAEB    BB01    AAE7    BB01
AAF2    BB1F    AAE9    BB10    BB07

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 02    WRITE_BYTE_LITERAL    02    //0000.0110 -> 0110.0000    40 (0x200000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    Read Data from NVM
E7 01    DELAY_SHORT                01
EB 07    READ_BITS                    07
F0    READ_BYTE_BUFFER    
F0    READ_BYTE_BUFFER    
EB 01    READ_BITS                    01
E7 01    DELAY_SHORT                01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E9 07 10LOOP                            07 10

----------------------------------------------------------------------------------------
326 18F_NVM_MSB_First_CfgRd5Int

AAF2    BB01    AAE7    BB01    AAF2    BB06    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB3F    AAE7    BB01
AAEB    BB07    AAF0    AAF0    AAEB    BB01    AAE7    BB01
AAF2    BB1F    AAE9    BB10    BB04

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 06    WRITE_BYTE_LITERAL    06    //0000.0110 -> 0110.0000    60 (0x300000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    Read Data from NVM
E7 01    DELAY_SHORT                01
EB 07    READ_BITS                    07
F0    READ_BYTE_BUFFER    
F0    READ_BYTE_BUFFER    
EB 01    READ_BITS                    01
E7 01    DELAY_SHORT               01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E9 04 10LOOP                            04 10

----------------------------------------------------------------------------------------
327 18F_NVM_MSB_First_UsrIDWr8Int

AAF2    BB01    AAE7    BB01    AAF2    BB02    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB00    AAE7    BB01
AAEE    BB07    BB00    AAF1    AAF1    AAEE    BB01    BB00
AAE7    BB01    AAF2    BB07    AAE7    008D    AAF2    BB1F
AAE9    0016    BB07                    

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 02    WRITE_BYTE_LITERAL    02    //0000.0010 -> 0100.0000    40 (0x200000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 00    WRITE_BYTE_LITERAL    00                                               Load Data for NVM
E7 01    DELAY_SHORT                01
EE 00 07WRITE_BITS_LITERAL    00 07
F1    WRITE_BYTE_BUFFER    
F1    WRITE_BYTE_BUFFER    
EE 00 01WRITE_BITS_LITERAL    00 01
E7 01    DELAY_SHORT                01
F2 07    WRITE_BYTE_LITERAL    07    //0000.0111 -> 1110.0000    Begin Program
E7 8D    DELAY_SHORT               8D
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E9 07 16LOOP                            07 16

----------------------------------------------------------------------------------------
328 18F_NVM_MSB_First_CfgWr5Int

AAF2    BB01    AAE7    BB01    AAF2    BB06    AAF2    BB00
AAF2    BB00    AAE7    BB01    AAF2    BB00    AAE7    BB01
AAEE    BB07    BB00    AAF1    AAF1    AAEE    BB01    BB00
AAE7    BB01    AAF2    BB07    AAE7    00FA    AAF2    BB1F
AAE9    BB16    BB04

F2 01    WRITE_BYTE_LITERAL    01    //0000.0001 -> 1000.0000    Load PC Address
E7 01    DELAY_SHORT                01
F2 06    WRITE_BYTE_LITERAL    06    //0000.0110 -> 0110.0000    60 (0x300000*2)
F2 00    WRITE_BYTE_LITERAL    00                                               00
F2 00    WRITE_BYTE_LITERAL    00                                               00
E7 01    DELAY_SHORT                01
F2 00    WRITE_BYTE_LITERAL    00                                               Load Data for NVM
E7 01    DELAY_SHORT                01
EE 00 07WRITE_BITS_LITERAL    00 07
F1    WRITE_BYTE_BUFFER    
F1    WRITE_BYTE_BUFFER    
EE 00 01WRITE_BITS_LITERAL    00 01
E7 01    DELAY_SHORT                01
F2 07    WRITE_BYTE_LITERAL    07    //0000.0111 -> 1110.0000    Begin Program
E7 FA    DELAY_SHORT                FA
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E9 04 16LOOP                            04 16

----------------------------------------------------------------------------------------
329 18F_NVM_MSB_First_ProgMemRd32Int

AAF2    BB3F    AAE7    BB01    AAEB    BB07    AAF0    AAF0
AAEB    BB01    AAE7    BB01    AAF2    BB1F    AAE7    BB01
AAE9    BB10    001F

F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    Read Data from NVM
E7 01    DELAY_SHORT               01
EB 07    READ_BITS                    07
F0    READ_BYTE_BUFFER    
F0    READ_BYTE_BUFFER    
EB 01    READ_BITS                    01
E7 01    DELAY_SHORT                01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E7 01    DELAY_SHORT                01
E9 1F 10LOOP                            1F 10

----------------------------------------------------------------------------------------
330 18F_NVM_MSB_First_PrgMemWr32Int

AAF2    BB00    AAE7    BB01    AAEE    BB07    BB00    AAF1
AAF1    AAEE    BB01    BB00    AAE7    BB01    AAF2    BB1F
AAE7    BB01    AAF2    BB00    AAE7    BB01    AAEE    BB07
BB00    AAF1    AAF1    AAEE    BB01    BB00    AAE9    BB12
001E    AAE7    BB01    AAF2    BB07    AAE7    008D    AAF2
BB1F

F2 00    WRITE_BYTE_LITERAL    00                                              Load Data for NVM
E7 01    DELAY_SHORT                01
EE 00 07WRITE_BITS_LITERAL    00 07
F1    WRITE_BYTE_BUFFER    
F1    WRITE_BYTE_BUFFER    
EE 00 01WRITE_BITS_LITERAL    00 01
E7 01    DELAY_SHORT                01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E7 01    DELAY_SHORT                01
F2 00    WRITE_BYTE_LITERAL    00                                              Load Data for NVM
E7 01    DELAY_SHORT                01
EE 00 07WRITE_BITS_LITERAL    00 07
F1    WRITE_BYTE_BUFFER    
F1    WRITE_BYTE_BUFFER    
EE 00 01WRITE_BITS_LITERAL    00 01
E9 1E 12LOOP                            1E 12
E7 01    DELAY_SHORT                01
F2 07    WRITE_BYTE_LITERAL    07    //0000.0111 -> 1110.0000    Begin Program
E7 8D    DELAY_SHORT               8D
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address

----------------------------------------------------------------------------------------
331 18F_NVM_MSB_First_EEWr1Int

AAF2    BB00    AAE7    BB01    AAEE    BB07    BB00    AAF1
AAF1    AAEE    BB01    BB00    AAE7    BB01    AAF2    BB07
AAE8    0001    AAF2    BB1F

F2 00    WRITE_BYTE_LITERAL    00                                              Load Data for NVM
E7 01    DELAY_SHORT                01
EE 00 07WRITE_BITS_LITERAL    00 07
F1    WRITE_BYTE_BUFFER    
F1    WRITE_BYTE_BUFFER    
EE 00 01WRITE_BITS_LITERAL    00 01
E7 01    DELAY_SHORT                01
F2 07    WRITE_BYTE_LITERAL    07    //0000.0111 -> 1110.0000    Begin Program
E8 01    DELAY_LONG                  01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address

----------------------------------------------------------------------------------------
332 18F_NVM_MSB_First_TstMemRd8Int

AAF2    BB3F    AAE7    BB01    AAEB    BB07    AAF0    AAF0
AAEB    BB01    AAE7    BB01    AAF2    BB1F    AAE7    BB01
AAE9    BB10    BB07

F2 3F    WRITE_BYTE_LITERAL    3F    //0011.1111 -> 1111.1100    Read Data from NVM
E7 01    DELAY_SHORT               01
EB 07    READ_BITS                    07
F0    READ_BYTE_BUFFER    
F0    READ_BYTE_BUFFER    
EB 01    READ_BITS                    01
E7 01    DELAY_SHORT               01
F2 1F    WRITE_BYTE_LITERAL    1F    //0001.1111 -> 1111.1000    Increment Address
E7 01    DELAY_SHORT               01
E9 07 10LOOP                           07 10