From 0f2c0aa2858be1d2c94dac3b88174f3fa163a102 Mon Sep 17 00:00:00 2001 From: Michael Buesch Date: Sun, 6 Oct 2013 21:19:51 +0200 Subject: pic: Add sip6 variants Signed-off-by: Michael Buesch --- libtoprammer/chips/microchip8/__init__.py | 43 +++++- libtoprammer/chips/microchip8/pic10f200sip6.py | 71 +++++++++ libtoprammer/chips/microchip8/pic10f202sip6.py | 71 +++++++++ libtoprammer/chips/microchip8/pic10f320sip6.py | 71 +++++++++ libtoprammer/chips/microchip8/pic10f322sip6.py | 71 +++++++++ libtoprammer/chips/microchip8/pic12f1822sip6.py | 91 ++++++++++++ libtoprammer/chips/microchip8/pic12f508sip6.py | 67 +++++++++ libtoprammer/chips/microchip8/pic12f629sip6.py | 81 ++++++++++ libtoprammer/chips/microchip8/pic16f1824sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1825sip6.py | 88 +++++++++++ libtoprammer/chips/microchip8/pic16f1826sip6.py | 88 +++++++++++ libtoprammer/chips/microchip8/pic16f1827sip6.py | 88 +++++++++++ libtoprammer/chips/microchip8/pic16f1828sip6.py | 88 +++++++++++ libtoprammer/chips/microchip8/pic16f1829sip6.py | 88 +++++++++++ libtoprammer/chips/microchip8/pic16f1933sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1934sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1936sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1937sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1938sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f1939sip6.py | 90 ++++++++++++ libtoprammer/chips/microchip8/pic16f59sip6.py | 70 +++++++++ libtoprammer/chips/microchip8/pic16f630sip6.py | 81 ++++++++++ libtoprammer/chips/microchip8/pic16f84asip6.py | 97 ++++++++++++ libtoprammer/chips/microchip8/pic16lf1902sip6.py | 87 +++++++++++ libtoprammer/chips/microchip8/pic16lf1903sip6.py | 87 +++++++++++ libtoprammer/chips/microchip8/pic16lf1904sip6.py | 87 +++++++++++ libtoprammer/chips/microchip8/pic16lf1906sip6.py | 87 +++++++++++ libtoprammer/chips/microchip8/pic16lf1907sip6.py | 87 +++++++++++ libtoprammer/chips/microchip8/pic18f1220sip6.py | 179 +++++++++++++++++++++++ libtoprammer/chips/microchip8/pic18f2320sip6.py | 179 +++++++++++++++++++++++ libtoprammer/chips/microchip8/pic18f2321sip6.py | 179 +++++++++++++++++++++++ 31 files changed, 2849 insertions(+), 7 deletions(-) create mode 100644 libtoprammer/chips/microchip8/pic10f200sip6.py create mode 100644 libtoprammer/chips/microchip8/pic10f202sip6.py create mode 100644 libtoprammer/chips/microchip8/pic10f320sip6.py create mode 100644 libtoprammer/chips/microchip8/pic10f322sip6.py create mode 100644 libtoprammer/chips/microchip8/pic12f1822sip6.py create mode 100644 libtoprammer/chips/microchip8/pic12f508sip6.py create mode 100644 libtoprammer/chips/microchip8/pic12f629sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1824sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1825sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1826sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1827sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1828sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1829sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1933sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1934sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1936sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1937sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1938sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f1939sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f59sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f630sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16f84asip6.py create mode 100644 libtoprammer/chips/microchip8/pic16lf1902sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16lf1903sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16lf1904sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16lf1906sip6.py create mode 100644 libtoprammer/chips/microchip8/pic16lf1907sip6.py create mode 100644 libtoprammer/chips/microchip8/pic18f1220sip6.py create mode 100644 libtoprammer/chips/microchip8/pic18f2320sip6.py create mode 100644 libtoprammer/chips/microchip8/pic18f2321sip6.py diff --git a/libtoprammer/chips/microchip8/__init__.py b/libtoprammer/chips/microchip8/__init__.py index dabb5cb..6c3c582 100644 --- a/libtoprammer/chips/microchip8/__init__.py +++ b/libtoprammer/chips/microchip8/__init__.py @@ -1,32 +1,61 @@ from pic10f200dip8 import * +from pic10f200sip6 import * from pic10f202dip8 import * +from pic10f202sip6 import * from pic10f320dip8 import * +from pic10f320sip6 import * from pic10f322dip8 import * +from pic10f322sip6 import * from pic12f1822dip8 import * +from pic12f1822sip6 import * from pic12f508dip8 import * +from pic12f508sip6 import * from pic12f629dip8 import * -from pic16f630dip14 import * +from pic12f629sip6 import * from pic16f1824dip14 import * +from pic16f1824sip6 import * from pic16f1825dip14 import * +from pic16f1825sip6 import * from pic16f1826dip18 import * +from pic16f1826sip6 import * from pic16f1827dip18 import * +from pic16f1827sip6 import * from pic16f1828dip20 import * +from pic16f1828sip6 import * from pic16f1829dip20 import * -from pic16lf1902dip28 import * -from pic16lf1903dip28 import * -from pic16lf1904dip40 import * -from pic16lf1906dip28 import * -from pic16lf1907dip40 import * +from pic16f1829sip6 import * from pic16f1933dip28 import * +from pic16f1933sip6 import * from pic16f1934dip40 import * +from pic16f1934sip6 import * from pic16f1936dip28 import * +from pic16f1936sip6 import * from pic16f1937dip40 import * +from pic16f1937sip6 import * from pic16f1938dip28 import * +from pic16f1938sip6 import * from pic16f1939dip40 import * +from pic16f1939sip6 import * from pic16f59dip40 import * +from pic16f59sip6 import * +from pic16f630dip14 import * +from pic16f630sip6 import * from pic16f84adip18 import * +from pic16f84asip6 import * +from pic16lf1902dip28 import * +from pic16lf1902sip6 import * +from pic16lf1903dip28 import * +from pic16lf1903sip6 import * +from pic16lf1904dip40 import * +from pic16lf1904sip6 import * +from pic16lf1906dip28 import * +from pic16lf1906sip6 import * +from pic16lf1907dip40 import * +from pic16lf1907sip6 import * from pic18f1220dip18 import * +from pic18f1220sip6 import * from pic18f2320dip28 import * +from pic18f2320sip6 import * from pic18f2321dip28 import * +from pic18f2321sip6 import * #from pic18f67j60sip6 import * -#do not edit the text below this line diff --git a/libtoprammer/chips/microchip8/pic10f200sip6.py b/libtoprammer/chips/microchip8/pic10f200sip6.py new file mode 100644 index 0000000..169803d --- /dev/null +++ b/libtoprammer/chips/microchip8/pic10f200sip6.py @@ -0,0 +1,71 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC10F200, PIC10F204 and PIC10f220 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_singlePMarea import * + +class Chip_Pic10F200sip6(microchip8_singlePMarea): + + # CONFIGURATION WORD FOR PIC10F200/202/204/206 + # X X X X X X X MCLRE /CP WDT X X + logicalFlashSize = 0x200 + + def __init__(self): + microchip8_singlePMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x09\x18\x24\x35", + flashPageSize=0x100, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + + +fuseDesc = ( + BitDescription(0, "Unused"), + BitDescription(1, "Unused"), + BitDescription(2, "WDTE"), + BitDescription(3, "!CP"), + BitDescription(4, "MCLRE"), + BitDescription(5, "Unused"), + BitDescription(6, "Unused"), + BitDescription(7, "Unused"), + BitDescription(8, "Unused"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), +) + +ChipDescription( + Chip_Pic10F200sip6, + bitfile = "microchip01sip6", + chipID="pic10f200sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC10F200, PIC10F204, PIC10F220 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic10f202sip6.py b/libtoprammer/chips/microchip8/pic10f202sip6.py new file mode 100644 index 0000000..c7d2fb1 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic10f202sip6.py @@ -0,0 +1,71 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC10F202, PIC10F206 and PIC10f222 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_singlePMarea import * + +class Chip_Pic10F202sip6(microchip8_singlePMarea): + + # CONFIGURATION WORD FOR PIC10F200/202/204/206 + # X X X X X X X MCLRE /CP WDT X X + logicalFlashSize = 0x400 + + def __init__(self): + microchip8_singlePMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x09\x18\x24\x35", + flashPageSize=0x200, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + + +fuseDesc = ( + BitDescription(0, "Unused"), + BitDescription(1, "Unused"), + BitDescription(2, "WDTE"), + BitDescription(3, "!CP"), + BitDescription(4, "MCLRE"), + BitDescription(5, "Unused"), + BitDescription(6, "Unused"), + BitDescription(7, "Unused"), + BitDescription(8, "Unused"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), +) + +ChipDescription( + Chip_Pic10F202sip6, + bitfile = "microchip01sip6", + chipID="pic10f202sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC10F202, PIC10F206, PIC10F222 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic10f320sip6.py b/libtoprammer/chips/microchip8/pic10f320sip6.py new file mode 100644 index 0000000..c72c1d8 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic10f320sip6.py @@ -0,0 +1,71 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC10F320 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic10F320sip6(microchip8_splittedPMarea_hasResetPC): + + logicalFlashProgramMemorySize = 0x2000 + logicalFlashConfigurationMemorySize = 0x2000 + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\xA1\x29", + flashPageSize=0x100, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + +fuseDesc = ( + BitDescription(0, "FOSC, 1=CLKIN, 0=internal"), + BitDescription(1, "BOREN[0]"), + BitDescription(2, "BOREN[1]"), + BitDescription(3, "WDTE[0]"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=RA3 is nMCLR, weak pull-up enabled"), + BitDescription(7, "nCP"), + BitDescription(8, "LVP"), + BitDescription(9, "LPBOREN"), + BitDescription(10, "BORV"), + BitDescription(11, "WRT[0]"), + BitDescription(12, "WRT[1] 11=write protection off"), + BitDescription(13, "Unused"), +) + +ChipDescription( + Chip_Pic10F320sip6, + bitfile = "microchip01sip6", + chipID="pic10f320sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC10F320, PIC10LF320 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic10f322sip6.py b/libtoprammer/chips/microchip8/pic10f322sip6.py new file mode 100644 index 0000000..e82316c --- /dev/null +++ b/libtoprammer/chips/microchip8/pic10f322sip6.py @@ -0,0 +1,71 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC10F322 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic10F322sip6(microchip8_splittedPMarea_hasResetPC): + + logicalFlashProgramMemorySize = 0x2000 + logicalFlashConfigurationMemorySize = 0x2000 + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x82\x29", + flashPageSize=0x200, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + +fuseDesc = ( + BitDescription(0, "FOSC, 1=CLKIN, 0=internal"), + BitDescription(1, "BOREN[0]"), + BitDescription(2, "BOREN[1]"), + BitDescription(3, "WDTE[0]"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=RA3 is nMCLR, weak pull-up enabled"), + BitDescription(7, "nCP"), + BitDescription(8, "LVP"), + BitDescription(9, "LPBOREN"), + BitDescription(10, "BORV"), + BitDescription(11, "WRT[0]"), + BitDescription(12, "WRT[1] 11=write protection off"), + BitDescription(13, "Unused"), +) + +ChipDescription( + Chip_Pic10F322sip6, + bitfile = "microchip01sip6", + chipID="pic10f322sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC10F322, PIC10LF322 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic12f1822sip6.py b/libtoprammer/chips/microchip8/pic12f1822sip6.py new file mode 100644 index 0000000..71c83e2 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic12f1822sip6.py @@ -0,0 +1,91 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC12F1822 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic12F1822sip6(microchip8_splittedPMarea_hasResetPC): + + rowSize = 16 + nLatches = 16 + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x08\x27", + flashPageSize=0x800, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic12F1822sip6, + bitfile = "microchip01sip6", + chipID="pic12f1822sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC12F1822, PIC12LF1822 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic12f508sip6.py b/libtoprammer/chips/microchip8/pic12f508sip6.py new file mode 100644 index 0000000..57ece49 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic12f508sip6.py @@ -0,0 +1,67 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC12F508 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_singlePMarea import * + +class Chip_Pic12F508sip6(microchip8_singlePMarea): + + logicalFlashSize = 0x400 + + def __init__(self): + microchip8_singlePMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="", + flashPageSize=0x200, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0] 00=LP, 01=XT, 10=INTOSC, 11=EXTRC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "WDTE"), + BitDescription(3, "!CP"), + BitDescription(4, "MCLRE"), + BitDescription(5, "Unused"), + BitDescription(6, "Unused"), + BitDescription(7, "Unused"), + BitDescription(8, "Unused"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), +) +ChipDescription( + Chip_Pic12F508sip6, + bitfile = "microchip01sip6", + chipID="pic12f508sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC12F508 - ICD", + fuseDesc=fuseDesc, + packages = (("DIP10", ""), ), + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic12f629sip6.py b/libtoprammer/chips/microchip8/pic12f629sip6.py new file mode 100644 index 0000000..2777449 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic12f629sip6.py @@ -0,0 +1,81 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC12F629 DIP8 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea import * + +class Chip_Pic12F629sip6(microchip8_splittedPMarea): + voltageVDD = 5 + voltageVPP = 9 + + userIDLocationSize = 4 + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + CMD_BEGIN_INTERNALLY_TIMED_PROGRAMMING = 0x08 + delayTinternalProgPM = 0.002 + delayTinternalProgDM = 0.005 + + def __init__(self): + microchip8_splittedPMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\xCB\x0F", + flashPageSize=0x400, # 1024 words + flashPages=1, + eepromPageSize=128, + eepromPages=1, + fuseBytes=2 + ) + self.configWordAddr = 0x2007 + self.osccalAddr = self.flashPageSize - 1 + # self.configWordByteAddressRange = self.configWordByteAddressRange.append((2*0xFFF, 2*0xFFF+1)) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE, 0=WDT disabled, 1=WDT enabled"), + BitDescription(4, "nPWRTE"), + BitDescription(5, "MCLRE"), + BitDescription(6, "BODEN, 0=BOD disabled"), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), + BitDescription(12, "BG[0], Band Gap Calibration bits, 00 = Lowest band gap voltage"), + BitDescription(13, "BG[1]"), +) + +ChipDescription( + Chip_Pic12F629sip6, + bitfile = "microchip01sip6", + chipID="pic12F629sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC12F629, PIC12F675 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1824sip6.py b/libtoprammer/chips/microchip8/pic16f1824sip6.py new file mode 100644 index 0000000..9fa6776 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1824sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1824 DIP14 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1824sip6(microchip8_splittedPMarea_hasResetPC): + + nLatches = 32 + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic16F1824sip6, + bitfile = "microchip01sip6", + chipID="pic16f1824sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1824, PIC16LF1824 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1825sip6.py b/libtoprammer/chips/microchip8/pic16f1825sip6.py new file mode 100644 index 0000000..97c660c --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1825sip6.py @@ -0,0 +1,88 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1825 DIP14 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1825sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic16F1825sip6, + bitfile = "microchip01sip6", + chipID="pic16f1825sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1825, PIC16LF1825 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1826sip6.py b/libtoprammer/chips/microchip8/pic16f1826sip6.py new file mode 100644 index 0000000..6a634a7 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1826sip6.py @@ -0,0 +1,88 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1826 DIP18 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_PIC16F1826sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x800, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_PIC16F1826sip6, + bitfile = "microchip01sip6", + chipID="PIC16F1826sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1826, PIC16LF1826 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1827sip6.py b/libtoprammer/chips/microchip8/pic16f1827sip6.py new file mode 100644 index 0000000..86b59e5 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1827sip6.py @@ -0,0 +1,88 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1827 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1827sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x1000, # 4kWords + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic16F1827sip6, + bitfile = "microchip01sip6", + chipID="pic16f1827sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1827, PIC16LF1827 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1828sip6.py b/libtoprammer/chips/microchip8/pic16f1828sip6.py new file mode 100644 index 0000000..c274b10 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1828sip6.py @@ -0,0 +1,88 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1828 DIP20 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1828dip14(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic16F1828dip14, + bitfile = "microchip01sip6", + chipID="pic16f1828dip14", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1828, PIC16LF1828 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1829sip6.py b/libtoprammer/chips/microchip8/pic16f1829sip6.py new file mode 100644 index 0000000..baef69e --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1829sip6.py @@ -0,0 +1,88 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1829 DIP14 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1829dip14(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x43\x27", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), +) + +ChipDescription( + Chip_Pic16F1829dip14, + bitfile = "microchip01sip6", + chipID="pic16f1829sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1829, PIC16LF1829 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1933sip6.py b/libtoprammer/chips/microchip8/pic16f1933sip6.py new file mode 100644 index 0000000..afa7f1b --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1933sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1933 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1933sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1933sip6, + bitfile = "microchip01sip6", + chipID="pic16f1933sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1933 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1934sip6.py b/libtoprammer/chips/microchip8/pic16f1934sip6.py new file mode 100644 index 0000000..b772133 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1934sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1934 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1934sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1934sip6, + bitfile = "microchip01sip6", + chipID="pic16f1934sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1934 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1936sip6.py b/libtoprammer/chips/microchip8/pic16f1936sip6.py new file mode 100644 index 0000000..3301646 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1936sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1936 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1936sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1936sip6, + bitfile = "microchip01sip6", + chipID="pic16f1936sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1936 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1937sip6.py b/libtoprammer/chips/microchip8/pic16f1937sip6.py new file mode 100644 index 0000000..2ccaa72 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1937sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1937 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1937sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1937sip6, + bitfile = "microchip01sip6", + chipID="pic16f1937sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1937 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1938sip6.py b/libtoprammer/chips/microchip8/pic16f1938sip6.py new file mode 100644 index 0000000..0d689e3 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1938sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1938 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1938sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x4000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1938sip6, + bitfile = "microchip01sip6", + chipID="pic16f1938sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1938 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f1939sip6.py b/libtoprammer/chips/microchip8/pic16f1939sip6.py new file mode 100644 index 0000000..60dac02 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f1939sip6.py @@ -0,0 +1,90 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F1939 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16F1939sip6(microchip8_splittedPMarea_hasResetPC): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x68\x23", + flashPageSize=0x4000, + flashPages=1, + eepromPageSize=256, + eepromPages=1, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 000=LP, 001=XT, 010=HS, 011=EXTRC"), + BitDescription(1, "FOSC[1], 100=INTOSC, 101=ECL - Low power mode"), + BitDescription(2, "FOSC[2], 110=ECM - Medium power mode, 111=ECH - High power mode"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "IESO, 0=Internal/External Switchover mode is disabled"), + BitDescription(13, "FCMEM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "VCAPEN[0] - only for PIC16F193x, 00=Vcap enabled on RA0"), + BitDescription(21, "VCAPEN[1], 01=Vcap enabled on RA5, 10=Vcap enabled on RA6, 11=disabled "), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "PLLEN, 0=4xPLL disabled"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV, 1=Brown-out Reset voltage set to 1.9V"), + BitDescription(27, "Unused"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16F1939sip6, + bitfile = "microchip01sip6", + chipID="pic16f1939sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F1939 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f59sip6.py b/libtoprammer/chips/microchip8/pic16f59sip6.py new file mode 100644 index 0000000..66b98d2 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f59sip6.py @@ -0,0 +1,70 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F59 SIP6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_singlePMarea import * + + +class Chip_Pic16F59sip6(microchip8_singlePMarea): + + logicalFlashSize = 0x1000 + + + def __init__(self): + microchip8_singlePMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="", + flashPageSize=0x200, + flashPages=4, + eepromPageSize=0, + eepromPages=0, + fuseBytes=2 + ) + +fuseDesc = ( + BitDescription(0, "FOSC0"), + BitDescription(1, "FOSC1 - 00=LP, 01=XT, 10=HS, 11=RC"), + BitDescription(2, "WDTE"), + BitDescription(3, "!CP"), + BitDescription(4, "Unused"), + BitDescription(5, "Unused"), + BitDescription(6, "Unused"), + BitDescription(7, "Unused"), + BitDescription(8, "Unused"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), +) + +ChipDescription( + Chip_Pic16F59sip6, + bitfile = "microchip01sip6", + chipID="pic16f59sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F59 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f630sip6.py b/libtoprammer/chips/microchip8/pic16f630sip6.py new file mode 100644 index 0000000..47d0c84 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f630sip6.py @@ -0,0 +1,81 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F630 DIP14 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea import * + +class Chip_Pic16F630sip6(microchip8_splittedPMarea): + voltageVDD = 5 + voltageVPP = 9 + + userIDLocationSize = 4 + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + CMD_BEGIN_INTERNALLY_TIMED_PROGRAMMING = 0x08 + delayTinternalProgPM = 0.002 + delayTinternalProgDM = 0.005 + + def __init__(self): + microchip8_splittedPMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x08\x27", + flashPageSize=0x400, # 1024 words + flashPages=1, + eepromPageSize=128, + eepromPages=1, + fuseBytes=2 + ) + self.configWordAddr = 0x2007 + self.osccalAddr = self.flashPageSize - 1 + # self.configWordByteAddressRange = self.configWordByteAddressRange.append((2*0xFFF, 2*0xFFF+1)) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "FOSC[2]"), + BitDescription(3, "WDTE, 0=WDT disabled, 1=WDT enabled"), + BitDescription(4, "nPWRTE"), + BitDescription(5, "MCLRE"), + BitDescription(6, "BODEN, 0=BOD disabled"), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "nCPD, 1=data memory code protection is disabled"), + BitDescription(9, "Unused"), + BitDescription(10, "Unused"), + BitDescription(11, "Unused"), + BitDescription(12, "BG[0], Band Gap Calibration bits, 00 = Lowest band gap voltage"), + BitDescription(13, "BG[1]"), +) + +ChipDescription( + Chip_Pic16F630sip6, + bitfile = "microchip01sip6", + chipID="pic16F630sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F630, PIC16F676 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16f84asip6.py b/libtoprammer/chips/microchip8/pic16f84asip6.py new file mode 100644 index 0000000..902ff67 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16f84asip6.py @@ -0,0 +1,97 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16F84 DIP18 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea import * + +class Chip_Pic16F84asip6(microchip8_splittedPMarea): + CMD_BEGIN_ERASE_PROGRAMMING_CYCLE = 0x8 + CMD_BEGIN_PROGRAMMING_ONLY_CYCLE = 0x18 + + voltageVDD = 5 + voltageVPP = 13 + + delayTinternalProgPM = 0.004 + + userIDLocationSize = 4 + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + def __init__(self): + microchip8_splittedPMarea.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x60\x05", + flashPageSize=0x200, + flashPages=1, + eepromPageSize=64, + eepromPages=1, + fuseBytes=2 + ) + + def sendWriteFlashInstr(self): + ''' + ''' + self.sendCommand(0, 0, 0, self.CMD_BEGIN_PROGRAMMING_ONLY_CYCLE) + self.top.cmdDelay(self.delayTinternalProgDM) + + def sendWriteFlashInstrDM(self): + self.sendWriteFlashInstr() + + def bulkErasePGM(self): + self.sendCommand(0, 0, 0, self.CMD_BULK_ERASE_PGM) + self.sendCommand(0, 0, 0, self.CMD_BEGIN_PROGRAMMING_ONLY_CYCLE) + self.top.cmdDelay(self.delayTera) # Tera + + def bulkEraseDM(self): + self.sendCommand(0, 0, 0, self.CMD_BULK_ERASE_DM) + self.sendCommand(0, 0, 0, self.CMD_BEGIN_PROGRAMMING_ONLY_CYCLE) + self.top.cmdDelay(self.delayTera) # Tera +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=LP osc, 01=XT osc"), + BitDescription(1, "FOSC[1], 10=HS osc, 11=RC osc"), + BitDescription(2, "WDTEN, 1=WDT enabled"), + BitDescription(3, "nPWRT"), + BitDescription(4, "nCP"), + BitDescription(5, "nCP"), + BitDescription(6, "nCP"), + BitDescription(7, "nCP"), + BitDescription(8, "nCP"), + BitDescription(9, "nCP"), + BitDescription(10, "nCP"), + BitDescription(11, "nCP"), + BitDescription(12, "nCP"), + BitDescription(13, "nCP"), +) + +ChipDescription( + Chip_Pic16F84asip6, + bitfile = "microchip01sip6", + chipID="pic16f84asip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16F84A, PIC16LF84A - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16lf1902sip6.py b/libtoprammer/chips/microchip8/pic16lf1902sip6.py new file mode 100644 index 0000000..08f7300 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16lf1902sip6.py @@ -0,0 +1,87 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16LF1902 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16LF1902sip6(microchip8_splittedPMarea_hasResetPC): + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x22\x2c", + flashPageSize=0x800, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=INTOSC, 11=ECH - High power mode"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "Unused"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "Unused"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "Unused"), + BitDescription(13, "Unused"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "Unused"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "nULPBOR, 1= Ultra low-power BOR is disabled"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16LF1902sip6, + bitfile = "microchip01sip6", + chipID="pic16lf1902sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16LF1902 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16lf1903sip6.py b/libtoprammer/chips/microchip8/pic16lf1903sip6.py new file mode 100644 index 0000000..d22babd --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16lf1903sip6.py @@ -0,0 +1,87 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16LF1903 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16LF1903sip6(microchip8_splittedPMarea_hasResetPC): + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x22\x2c", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=INTOSC, 11=ECH - High power mode"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "Unused"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "Unused"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "Unused"), + BitDescription(13, "Unused"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "Unused"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "nULPBOR, 1= Ultra low-power BOR is disabled"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16LF1903sip6, + bitfile = "microchip01sip6", + chipID="pic16lf1903sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16LF1903 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16lf1904sip6.py b/libtoprammer/chips/microchip8/pic16lf1904sip6.py new file mode 100644 index 0000000..fc17211 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16lf1904sip6.py @@ -0,0 +1,87 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16LF1904 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16LF1904sip6(microchip8_splittedPMarea_hasResetPC): + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x81\x2c", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=INTOSC, 11=ECH - High power mode"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "Unused"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "Unused"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "Unused"), + BitDescription(13, "Unused"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "Unused"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "nULPBOR, 1= Ultra low-power BOR is disabled"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16LF1904sip6, + bitfile = "microchip01sip6", + chipID="pic16lf1904sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16LF1904 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16lf1906sip6.py b/libtoprammer/chips/microchip8/pic16lf1906sip6.py new file mode 100644 index 0000000..209ab19 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16lf1906sip6.py @@ -0,0 +1,87 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16LF1906 sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16LF1906sip6(microchip8_splittedPMarea_hasResetPC): + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x22\x2c", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=INTOSC, 11=ECH - High power mode"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "Unused"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "Unused"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "Unused"), + BitDescription(13, "Unused"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "Unused"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "nULPBOR, 1= Ultra low-power BOR is disabled"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16LF1906sip6, + bitfile = "microchip01sip6", + chipID="pic16lf1906sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16LF1906 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic16lf1907sip6.py b/libtoprammer/chips/microchip8/pic16lf1907sip6.py new file mode 100644 index 0000000..d67e64f --- /dev/null +++ b/libtoprammer/chips/microchip8/pic16lf1907sip6.py @@ -0,0 +1,87 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC16LF1907sip6 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_splittedPMarea_hasResetPC import * + +class Chip_Pic16LF1907sip6(microchip8_splittedPMarea_hasResetPC): + + def __init__(self): + microchip8_splittedPMarea_hasResetPC.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x81\x2c", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=0, + eepromPages=0, + fuseBytes=4 + ) + +fuseDesc = ( + BitDescription(0, "FOSC[0], 00=INTOSC, 11=ECH - High power mode"), + BitDescription(1, "FOSC[1]"), + BitDescription(2, "Unused"), + BitDescription(3, "WDTE[0], 00=WDT disabled, 11=WDT enabled"), + BitDescription(4, "WDTE[1]"), + BitDescription(5, "nPWRTE"), + BitDescription(6, "MCLRE, 1=nMCLR/Vpp pin is nMCLR, weak pull-up enabled, ignored if LVP=1 "), + BitDescription(7, "nCP 1=program memory code protection is disabled"), + BitDescription(8, "Unused"), + BitDescription(9, "BOREN[0], 00=BOR disabled"), + BitDescription(10, "BOREN[1]"), + BitDescription(11, "nCLKOUTEN, 0=CLKOUT is enabled on CLKOUT pin"), + BitDescription(12, "Unused"), + BitDescription(13, "Unused"), + BitDescription(14, "NA"), + BitDescription(15, "NA"), + + BitDescription(16, "WRT[0], 11=Write protection off"), + BitDescription(17, "WRT[1]"), + BitDescription(18, "Unused"), + BitDescription(19, "Unused"), + BitDescription(20, "Unused"), + BitDescription(21, "Unused"), + BitDescription(22, "Unused"), + BitDescription(23, "Unused"), + BitDescription(24, "Unused"), + BitDescription(25, "STVREN, 1=Stack overflow or underflow will cause a reset"), + BitDescription(26, "BORV"), + BitDescription(27, "nULPBOR, 1= Ultra low-power BOR is disabled"), + BitDescription(28, "nDEBUG, 0=ICSPCLK and ICSPDAT are dedicated to the debugger"), + BitDescription(29, "LVP 1=Low-voltage programming enabled"), + BitDescription(30, "NA"), + BitDescription(31, "NA"), +) + +ChipDescription( + Chip_Pic16LF1907sip6, + bitfile = "microchip01sip6", + chipID="pic16lf1907sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC16LF1907 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic18f1220sip6.py b/libtoprammer/chips/microchip8/pic18f1220sip6.py new file mode 100644 index 0000000..8855f61 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic18f1220sip6.py @@ -0,0 +1,179 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC18F1220 DIP18 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_18f1220family import * + +class Chip_PIC18F1220sip6(microchip8_18f1220family): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + writeBufferSize = 8 + eraseBufferSize = 64 + + def __init__(self): + microchip8_18f1220family.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\xE7\x07", + flashPageSize=0x1000, + flashPages=1, + eepromPageSize=0x100, + eepromPages=1, + fuseBytes=14 + ) + + +fuseDesc = ( + BitDescription(0o00, "NA"), + BitDescription(0o01, "NA"), + BitDescription(0o02, "NA"), + BitDescription(0o03, "NA"), + BitDescription(0o04, "NA"), + BitDescription(0o05, "NA"), + BitDescription(0o06, "NA"), + BitDescription(0o07, "NA"), + BitDescription(0o10, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(0o11, "FOSC[1]"), + BitDescription(0o12, "FOSC[2]"), + BitDescription(0o13, "FOSC[3]"), + BitDescription(0o14, "NA"), + BitDescription(0o15, "NA"), + BitDescription(0o16, "FSCM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(0o17, "IESO, 0=Internal/External Switchover mode is disabled"), + + BitDescription(0o20, "nPWRT"), + BitDescription(0o21, "BOR"), + BitDescription(0o22, "BORV[0]"), + BitDescription(0o23, "BORV[1]"), + BitDescription(0o24, "NA"), + BitDescription(0o25, "NA"), + BitDescription(0o26, "NA"), + BitDescription(0o27, "NA"), + BitDescription(0o30, "WDT, 0=WDT disabled, 1=WDT enabled"), + BitDescription(0o31, "WDTPS[0]"), + BitDescription(0o32, "WDTPS[1]"), + BitDescription(0o33, "WDTPS[2]"), + BitDescription(0o34, "WDTPS[3]"), + BitDescription(0o35, "NA"), + BitDescription(0o36, "NA"), + BitDescription(0o37, "NA"), + + BitDescription(0o40, "NA"), + BitDescription(0o41, "NA"), + BitDescription(0o42, "NA"), + BitDescription(0o43, "NA"), + BitDescription(0o44, "NA"), + BitDescription(0o45, "NA"), + BitDescription(0o46, "NA"), + BitDescription(0o47, "NA"), + BitDescription(0o50, "NA"), + BitDescription(0o51, "NA"), + BitDescription(0o52, "NA"), + BitDescription(0o53, "NA"), + BitDescription(0o54, "NA"), + BitDescription(0o55, "NA"), + BitDescription(0o56, "NA"), + BitDescription(0o57, "MCLRE"), + + BitDescription(0o60, "STVR"), + BitDescription(0o61, "NA"), + BitDescription(0o62, "LVP"), + BitDescription(0o63, "NA"), + BitDescription(0o64, "NA"), + BitDescription(0o65, "NA"), + BitDescription(0o66, "NA"), + BitDescription(0o67, "nDEBUG"), + BitDescription(0o70, "NA"), + BitDescription(0o71, "NA"), + BitDescription(0o72, "NA"), + BitDescription(0o73, "NA"), + BitDescription(0o74, "NA"), + BitDescription(0o75, "NA"), + BitDescription(0o76, "NA"), + BitDescription(0o77, "NA"), + + BitDescription(0o100, "CP[0]"), + BitDescription(0o101, "CP[1]"), + BitDescription(0o102, "NA"), + BitDescription(0o103, "NA"), + BitDescription(0o104, "NA"), + BitDescription(0o105, "NA"), + BitDescription(0o106, "NA"), + BitDescription(0o107, "NA"), + BitDescription(0o110, "NA"), + BitDescription(0o111, "NA"), + BitDescription(0o112, "NA"), + BitDescription(0o113, "NA"), + BitDescription(0o114, "NA"), + BitDescription(0o115, "NA"), + BitDescription(0o116, "CPB"), + BitDescription(0o117, "CPD"), + + BitDescription(0o120, "WRT[0]"), + BitDescription(0o121, "WRT[1]"), + BitDescription(0o122, "NA"), + BitDescription(0o123, "NA"), + BitDescription(0o124, "NA"), + BitDescription(0o125, "NA"), + BitDescription(0o126, "NA"), + BitDescription(0o127, "NA"), + BitDescription(0o130, "NA"), + BitDescription(0o131, "NA"), + BitDescription(0o132, "NA"), + BitDescription(0o133, "NA"), + BitDescription(0o134, "NA"), + BitDescription(0o135, "WRTC"), + BitDescription(0o136, "WRTB"), + BitDescription(0o137, "WRTD"), + + BitDescription(0o140, "EBTR[0]"), + BitDescription(0o141, "EBTR[1]"), + BitDescription(0o142, "NA"), + BitDescription(0o143, "NA"), + BitDescription(0o144, "NA"), + BitDescription(0o145, "NA"), + BitDescription(0o146, "NA"), + BitDescription(0o147, "NA"), + BitDescription(0o150, "NA"), + BitDescription(0o151, "NA"), + BitDescription(0o152, "NA"), + BitDescription(0o153, "NA"), + BitDescription(0o154, "NA"), + BitDescription(0o155, "NA"), + BitDescription(0o156, "EBTRB"), + BitDescription(0o157, "NA"), +) + +ChipDescription( + Chip_PIC18F1220sip6, + bitfile = "microchip01sip6", + chipID="PIC18F1220sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC18F1220 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic18f2320sip6.py b/libtoprammer/chips/microchip8/pic18f2320sip6.py new file mode 100644 index 0000000..b38a0b5 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic18f2320sip6.py @@ -0,0 +1,179 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC18F2320 DIP18 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_18f1220family import * + +class Chip_PIC18F2320sip6(microchip8_18f1220family): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + writeBufferSize = 8 + eraseBufferSize = 64 + + def __init__(self): + microchip8_18f1220family.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x80\x05", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=0x100, + eepromPages=1, + fuseBytes=14 + ) + + +fuseDesc = ( + BitDescription(0o00, "NA"), + BitDescription(0o01, "NA"), + BitDescription(0o02, "NA"), + BitDescription(0o03, "NA"), + BitDescription(0o04, "NA"), + BitDescription(0o05, "NA"), + BitDescription(0o06, "NA"), + BitDescription(0o07, "NA"), + BitDescription(0o10, "FOSC[0], 0=LP, 100=INTOSC"), + BitDescription(0o11, "FOSC[1]"), + BitDescription(0o12, "FOSC[2]"), + BitDescription(0o13, "FOSC[3]"), + BitDescription(0o14, "NA"), + BitDescription(0o15, "NA"), + BitDescription(0o16, "FSCM, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(0o17, "IESO, 0=Internal/External Switchover mode is disabled"), + + BitDescription(0o20, "nPWRT"), + BitDescription(0o21, "BOR"), + BitDescription(0o22, "BORV[0]"), + BitDescription(0o23, "BORV[1]"), + BitDescription(0o24, "NA"), + BitDescription(0o25, "NA"), + BitDescription(0o26, "NA"), + BitDescription(0o27, "NA"), + BitDescription(0o30, "WDT, 0=WDT disabled, 1=WDT enabled"), + BitDescription(0o31, "WDTPS[0]"), + BitDescription(0o32, "WDTPS[1]"), + BitDescription(0o33, "WDTPS[2]"), + BitDescription(0o34, "WDTPS[3]"), + BitDescription(0o35, "NA"), + BitDescription(0o36, "NA"), + BitDescription(0o37, "NA"), + + BitDescription(0o40, "NA"), + BitDescription(0o41, "NA"), + BitDescription(0o42, "NA"), + BitDescription(0o43, "NA"), + BitDescription(0o44, "NA"), + BitDescription(0o45, "NA"), + BitDescription(0o46, "NA"), + BitDescription(0o47, "NA"), + BitDescription(0o50, "NA"), + BitDescription(0o51, "NA"), + BitDescription(0o52, "NA"), + BitDescription(0o53, "NA"), + BitDescription(0o54, "NA"), + BitDescription(0o55, "NA"), + BitDescription(0o56, "NA"), + BitDescription(0o57, "MCLRE"), + + BitDescription(0o60, "STVR"), + BitDescription(0o61, "NA"), + BitDescription(0o62, "LVP"), + BitDescription(0o63, "NA"), + BitDescription(0o64, "NA"), + BitDescription(0o65, "NA"), + BitDescription(0o66, "NA"), + BitDescription(0o67, "nDEBUG"), + BitDescription(0o70, "NA"), + BitDescription(0o71, "NA"), + BitDescription(0o72, "NA"), + BitDescription(0o73, "NA"), + BitDescription(0o74, "NA"), + BitDescription(0o75, "NA"), + BitDescription(0o76, "NA"), + BitDescription(0o77, "NA"), + + BitDescription(0o100, "CP[0]"), + BitDescription(0o101, "CP[1]"), + BitDescription(0o102, "CP[2]"), + BitDescription(0o103, "CP[3]"), + BitDescription(0o104, "NA"), + BitDescription(0o105, "NA"), + BitDescription(0o106, "NA"), + BitDescription(0o107, "NA"), + BitDescription(0o110, "NA"), + BitDescription(0o111, "NA"), + BitDescription(0o112, "NA"), + BitDescription(0o113, "NA"), + BitDescription(0o114, "NA"), + BitDescription(0o115, "NA"), + BitDescription(0o116, "CPB"), + BitDescription(0o117, "CPD"), + + BitDescription(0o120, "WRT[0]"), + BitDescription(0o121, "WRT[1]"), + BitDescription(0o122, "NA"), + BitDescription(0o123, "NA"), + BitDescription(0o124, "NA"), + BitDescription(0o125, "NA"), + BitDescription(0o126, "NA"), + BitDescription(0o127, "NA"), + BitDescription(0o130, "NA"), + BitDescription(0o131, "NA"), + BitDescription(0o132, "NA"), + BitDescription(0o133, "NA"), + BitDescription(0o134, "NA"), + BitDescription(0o135, "WRTC"), + BitDescription(0o136, "WRTB"), + BitDescription(0o137, "WRTD"), + + BitDescription(0o140, "EBTR[0]"), + BitDescription(0o141, "EBTR[1]"), + BitDescription(0o142, "NA"), + BitDescription(0o143, "NA"), + BitDescription(0o144, "NA"), + BitDescription(0o145, "NA"), + BitDescription(0o146, "NA"), + BitDescription(0o147, "NA"), + BitDescription(0o150, "NA"), + BitDescription(0o151, "NA"), + BitDescription(0o152, "NA"), + BitDescription(0o153, "NA"), + BitDescription(0o154, "NA"), + BitDescription(0o155, "NA"), + BitDescription(0o156, "EBTRB"), + BitDescription(0o157, "NA"), +) + +ChipDescription( + Chip_PIC18F2320sip6, + bitfile = "microchip01sip6", + chipID="PIC18F2320sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC18F2320 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) diff --git a/libtoprammer/chips/microchip8/pic18f2321sip6.py b/libtoprammer/chips/microchip8/pic18f2321sip6.py new file mode 100644 index 0000000..7a4f214 --- /dev/null +++ b/libtoprammer/chips/microchip8/pic18f2321sip6.py @@ -0,0 +1,179 @@ +""" +# TOP2049 Open Source programming suite +# +# Microchip PIC18F2320 DIP18 +# +# Copyright (c) 2013 Pavel Stemberk +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +""" + +from microchip8_18f2221family import * + +class Chip_PIC18F2321sip6(microchip8_18f2221family): + + SUPPORT_EEPROMREAD = (1 << 4) + SUPPORT_EEPROMWRITE = (1 << 5) + + writeBufferSize = 8 + eraseBufferSize = 64 + + def __init__(self): + microchip8_18f2221family.__init__(self, + chipPackage = "DIP10", + chipPinVCC = 9, + chipPinsVPP = 10, + chipPinGND = 8, + signature="\x22\x21", + flashPageSize=0x2000, + flashPages=1, + eepromPageSize=0x100, + eepromPages=1, + fuseBytes=14 + ) + + +fuseDesc = ( + BitDescription(0o00, "NA"), + BitDescription(0o01, "NA"), + BitDescription(0o02, "NA"), + BitDescription(0o03, "NA"), + BitDescription(0o04, "NA"), + BitDescription(0o05, "NA"), + BitDescription(0o06, "NA"), + BitDescription(0o07, "NA"), + BitDescription(0o10, "FOSC[0], 0000=LP, 1000=internal RC oscillator, RA6=CLKO"), + BitDescription(0o11, "FOSC[1]"), + BitDescription(0o12, "FOSC[2]"), + BitDescription(0o13, "FOSC[3]"), + BitDescription(0o14, "NA"), + BitDescription(0o15, "NA"), + BitDescription(0o16, "FCMEN, 0=Fail-Safe Clock Monitor is disabled"), + BitDescription(0o17, "IESO, 0=Internal/External Switchover mode is disabled"), + + BitDescription(0o20, "nPWRTEN"), + BitDescription(0o21, "BOREN[0]"), + BitDescription(0o22, "BOREN[1]"), + BitDescription(0o23, "BORV[0]"), + BitDescription(0o24, "BORV[1]"), + BitDescription(0o25, "NA"), + BitDescription(0o26, "NA"), + BitDescription(0o27, "NA"), + BitDescription(0o30, "WDTEN, 0=WDT disabled, 1=WDT enabled"), + BitDescription(0o31, "WDTPS[0]"), + BitDescription(0o32, "WDTPS[1]"), + BitDescription(0o33, "WDTPS[2]"), + BitDescription(0o34, "WDTPS[3]"), + BitDescription(0o35, "NA"), + BitDescription(0o36, "NA"), + BitDescription(0o37, "NA"), + + BitDescription(0o40, "NA"), + BitDescription(0o41, "NA"), + BitDescription(0o42, "NA"), + BitDescription(0o43, "NA"), + BitDescription(0o44, "NA"), + BitDescription(0o45, "NA"), + BitDescription(0o46, "NA"), + BitDescription(0o47, "NA"), + BitDescription(0o50, "NA"), + BitDescription(0o51, "PBADEN"), + BitDescription(0o52, "LPT1OSC"), + BitDescription(0o53, "NA"), + BitDescription(0o54, "NA"), + BitDescription(0o55, "NA"), + BitDescription(0o56, "NA"), + BitDescription(0o57, "MCLRE"), + + BitDescription(0o60, "STVREN"), + BitDescription(0o61, "NA"), + BitDescription(0o62, "LVP"), + BitDescription(0o63, "NA"), + BitDescription(0o64, "BBSIZ[0]"), + BitDescription(0o65, "BBSIZ[1]"), + BitDescription(0o66, "XINST"), + BitDescription(0o67, "nDEBUG"), + BitDescription(0o70, "NA"), + BitDescription(0o71, "NA"), + BitDescription(0o72, "NA"), + BitDescription(0o73, "NA"), + BitDescription(0o74, "NA"), + BitDescription(0o75, "NA"), + BitDescription(0o76, "NA"), + BitDescription(0o77, "NA"), + + BitDescription(0o100, "CP[0]"), + BitDescription(0o101, "CP[1]"), + BitDescription(0o102, "CP[2]/NA"), + BitDescription(0o103, "CP[3]/NA"), + BitDescription(0o104, "CP[4]/NA"), + BitDescription(0o105, "CP[5]/NA"), + BitDescription(0o106, "NA"), + BitDescription(0o107, "NA"), + BitDescription(0o110, "NA"), + BitDescription(0o111, "NA"), + BitDescription(0o112, "NA"), + BitDescription(0o113, "NA"), + BitDescription(0o114, "NA"), + BitDescription(0o115, "NA"), + BitDescription(0o116, "CPB"), + BitDescription(0o117, "CPD"), + + BitDescription(0o120, "WRT[0]"), + BitDescription(0o121, "WRT[1]"), + BitDescription(0o122, "WRT[2]/NA"), + BitDescription(0o123, "WRT[3]/NA"), + BitDescription(0o124, "WRT[4]/NA"), + BitDescription(0o125, "WRT[5]/NA"), + BitDescription(0o126, "NA"), + BitDescription(0o127, "NA"), + BitDescription(0o130, "NA"), + BitDescription(0o131, "NA"), + BitDescription(0o132, "NA"), + BitDescription(0o133, "NA"), + BitDescription(0o134, "NA"), + BitDescription(0o135, "WRTC"), + BitDescription(0o136, "WRTB"), + BitDescription(0o137, "WRTD"), + + BitDescription(0o140, "EBTR[0]"), + BitDescription(0o141, "EBTR[1]"), + BitDescription(0o142, "EBTR[2]/NA"), + BitDescription(0o143, "EBTR[3]/NA"), + BitDescription(0o144, "EBTR[4]/NA"), + BitDescription(0o145, "EBTR[5]/NA"), + BitDescription(0o146, "NA"), + BitDescription(0o147, "NA"), + BitDescription(0o150, "NA"), + BitDescription(0o151, "NA"), + BitDescription(0o152, "NA"), + BitDescription(0o153, "NA"), + BitDescription(0o154, "NA"), + BitDescription(0o155, "NA"), + BitDescription(0o156, "EBTRB"), + BitDescription(0o157, "NA"), +) + +ChipDescription( + Chip_PIC18F2321sip6, + bitfile = "microchip01sip6", + chipID="PIC18F2321sip6", + runtimeID = (0xDE05, 0x01), + chipVendors="Microchip", + description = "PIC18F2321 - ICD", + packages = (("DIP10", ""), ), + fuseDesc=fuseDesc, + maintainer="Pavel Stemberk ", +) -- cgit v1.2.3