From bcdc5e408dadc598b1ebd335cb7aaccde229c3e9 Mon Sep 17 00:00:00 2001 From: geraldjust Date: Wed, 25 Apr 2018 23:08:17 -0700 Subject: [PATCH 1/2] Add files via upload Changed into Menu Sub-system added PSC Options --- avr/boards.txt | 249 +++++++++++++++++-------------------------------- 1 file changed, 83 insertions(+), 166 deletions(-) diff --git a/avr/boards.txt b/avr/boards.txt index d8fb3e1..f7363b9 100644 --- a/avr/boards.txt +++ b/avr/boards.txt @@ -1,166 +1,83 @@ - -# Modifed 3-3-2015 - Al Thomason - to enable ATmega32M1 and ATmega64M1 uC's -# As used on Arduino MPPT controller -# See: http://smartMPPT.blogspot.com/ -# See: https://github.com/thomasonw/ATmegaxxM1-C1 -# -# -############################################################## - - -atmega64m1_16Mhz_xtl.name=ATmega64M1 (16Mhz - Xtal - Arduino) - -atmega64m1_16Mhz_xtl.upload.tool=avrdude -atmega64m1_16Mhz_xtl.upload.protocol=arduino -atmega64m1_16Mhz_xtl.upload.maximum_size=64512 -atmega64m1_16Mhz_xtl.upload.maximum_data_size=4096 -atmega64m1_16Mhz_xtl.upload.speed=57600 - -atmega64m1_16Mhz_xtl.bootloader.tool=avrdude -atmega64m1_16Mhz_xtl.bootloader.low_fuses=0xFF -atmega64m1_16Mhz_xtl.bootloader.high_fuses=0xDE -atmega64m1_16Mhz_xtl.bootloader.extended_fuses=0x1D -atmega64m1_16Mhz_xtl.bootloader.file=optiboot/optiboot_atmega64M1_16Mhz.hex -atmega64m1_16Mhz_xtl.bootloader.unlock_bits=0x3F -atmega64m1_16Mhz_xtl.bootloader.lock_bits=0x0F - -atmega64m1_16Mhz_xtl.build.board=ATmega64M1_16xtl -atmega64m1_16Mhz_xtl.build.mcu=atmega64m1 -atmega64m1_16Mhz_xtl.build.f_cpu=16000000L -atmega64m1_16Mhz_xtl.build.core=arduino -atmega64m1_16Mhz_xtl.build.variant=ATmegaxxM1 - -############################################################## - - - -atmega64m1_8Mhz_xtl.name=ATmega64M1 (8Mhz - Xtal - Arduino) - -atmega64m1_8Mhz_xtl.upload.tool=avrdude -atmega64m1_8Mhz_xtl.upload.protocol=arduino -atmega64m1_8Mhz_xtl.upload.maximum_size=64512 -atmega64m1_8Mhz_xtl.upload.maximum_data_size=4096 -atmega64m1_8Mhz_xtl.upload.speed=57600 - - -atmega64m1_8Mhz_xtl.bootloader.tool=avrdude -atmega64m1_8Mhz_xtl.bootloader.low_fuses=0xFF -atmega64m1_8Mhz_xtl.bootloader.high_fuses=0xDE -atmega64m1_8Mhz_xtl.bootloader.extended_fuses=0x1D -atmega64m1_8Mhz_xtl.bootloader.file=optiboot/optiboot_atmega64M1_8Mhz.hex -atmega64m1_8Mhz_xtl.bootloader.unlock_bits=0x3F -atmega64m1_8Mhz_xtl.bootloader.lock_bits=0x0F - -atmega64m1_8Mhz_xtl.build.board=ATmega64M1_8xtl -atmega64m1_8Mhz_xtl.build.mcu=atmega64m1 -atmega64m1_8Mhz_xtl.build.f_cpu=8000000L -atmega64m1_8Mhz_xtl.build.core=arduino -atmega64m1_8Mhz_xtl.build.variant=ATmegaxxM1 - -############################################################## - - -atmega64m1_8Mhz_osc.name=ATmega64M1 (8Mhz - Int Osc - Arduino) - -atmega64m1_8Mhz_osc.upload.tool=avrdude -atmega64m1_8Mhz_osc.upload.protocol=arduino -atmega64m1_8Mhz_osc.upload.maximum_size=64512 -atmega64m1_8Mhz_osc.upload.maximum_data_size=4096 -atmega64m1_8Mhz_osc.upload.speed=57600 - - -atmega64m1_8Mhz_osc.bootloader.tool=avrdude -atmega64m1_8Mhz_osc.bootloader.low_fuses=0xF2 -atmega64m1_8Mhz_osc.bootloader.high_fuses=0xDE -atmega64m1_8Mhz_osc.bootloader.extended_fuses=0x1D -atmega64m1_8Mhz_osc.bootloader.file=optiboot/optiboot_atmega64M1_8Mhz.hex -atmega64m1_8Mhz_osc.bootloader.unlock_bits=0x3F -atmega64m1_8Mhz_osc.bootloader.lock_bits=0x0F - -atmega64m1_8Mhz_osc.build.board=ATmega64M1_8osc -atmega64m1_8Mhz_osc.build.mcu=atmega64m1 -atmega64m1_8Mhz_osc.build.f_cpu=8000000L -atmega64m1_8Mhz_osc.build.core=arduino -atmega64m1_8Mhz_osc.build.variant=ATmegaxxM1 - - -############################################################## - -atmega32m1_16Mhz_xtl.name=ATmega32M1 (16Mhz - Xtal - Arduino) - -atmega32m1_16Mhz_xtl.upload.tool=avrdude -atmega32m1_16Mhz_xtl.upload.protocol=arduino -atmega32m1_16Mhz_xtl.upload.maximum_size=32256 -atmega32m1_16Mhz_xtl.upload.maximum_data_size=2048 -atmega32m1_16Mhz_xtl.upload.speed=57600 - -atmega32m1_16Mhz_xtl.bootloader.tool=avrdude -atmega32m1_16Mhz_xtl.bootloader.low_fuses=0xFF -atmega32m1_16Mhz_xtl.bootloader.high_fuses=0xDE -atmega32m1_16Mhz_xtl.bootloader.extended_fuses=0x1D -atmega32m1_16Mhz_xtl.bootloader.file=optiboot/optiboot_atmega32M1_16Mhz.hex -atmega32m1_16Mhz_xtl.bootloader.unlock_bits=0x3F -atmega32m1_16Mhz_xtl.bootloader.lock_bits=0x0F - -atmega32m1_16Mhz_xtl.build.board=ATmega32M1_16xtl -atmega32m1_16Mhz_xtl.build.mcu=atmega32m1 -atmega32m1_16Mhz_xtl.build.f_cpu=16000000L -atmega32m1_16Mhz_xtl.build.core=arduino -atmega32m1_16Mhz_xtl.build.variant=ATmegaxxM1 - -############################################################## - - - -atmega32m1_8Mhz_xtl.name=ATmega32M1 (8Mhz - Xtal - Arduino) - -atmega32m1_8Mhz_xtl.upload.tool=avrdude -atmega32m1_8Mhz_xtl.upload.protocol=arduino -atmega32m1_8Mhz_xtl.upload.maximum_size=32256 -atmega32m1_8Mhz_xtl.upload.maximum_data_size=2048 -atmega32m1_8Mhz_xtl.upload.speed=57600 - - -atmega32m1_8Mhz_xtl.bootloader.tool=avrdude -atmega32m1_8Mhz_xtl.bootloader.low_fuses=0xFF -atmega32m1_8Mhz_xtl.bootloader.high_fuses=0xDE -atmega32m1_8Mhz_xtl.bootloader.extended_fuses=0x1D -atmega32m1_8Mhz_xtl.bootloader.file=optiboot/optiboot_atmega32M1_8Mhz.hex -atmega32m1_8Mhz_xtl.bootloader.unlock_bits=0x3F -atmega32m1_8Mhz_xtl.bootloader.lock_bits=0x0F - -atmega32m1_8Mhz_xtl.build.board=ATmega32M1_8xtl -atmega32m1_8Mhz_xtl.build.mcu=atmega32m1 -atmega32m1_8Mhz_xtl.build.f_cpu=8000000L -atmega32m1_8Mhz_xtl.build.core=arduino -atmega32m1_8Mhz_xtl.build.variant=ATmegaxxM1 - -############################################################## - - -atmega32m1_8Mhz_osc.name=ATmega32M1 (8Mhz - Int Osc - Arduino) - -atmega32m1_8Mhz_osc.upload.tool=avrdude -atmega32m1_8Mhz_osc.upload.protocol=arduino -atmega32m1_8Mhz_osc.upload.maximum_size=32256 -atmega32m1_8Mhz_osc.upload.maximum_data_size=2048 -atmega32m1_8Mhz_osc.upload.speed=57600 - - -atmega32m1_8Mhz_osc.bootloader.tool=avrdude -atmega32m1_8Mhz_osc.bootloader.low_fuses=0xF2 -atmega32m1_8Mhz_osc.bootloader.high_fuses=0xDE -atmega32m1_8Mhz_osc.bootloader.extended_fuses=0x1D -atmega32m1_8Mhz_osc.bootloader.file=optiboot/optiboot_atmega32M1_8Mhz.hex -atmega32m1_8Mhz_osc.bootloader.unlock_bits=0x3F -atmega32m1_8Mhz_osc.bootloader.lock_bits=0x0F - -atmega32m1_8Mhz_osc.build.board=ATmega32M1_8osc -atmega32m1_8Mhz_osc.build.mcu=atmega32m1 -atmega32m1_8Mhz_osc.build.f_cpu=8000000L -atmega32m1_8Mhz_osc.build.core=arduino -atmega32m1_8Mhz_osc.build.variant=ATmegaxxM1 - - -############################################################## - + +# Modifed 4-25-2018 - Al Thomason - to enable ATmega32M1 and ATmega64M1 uC's +# As used on Arduino MPPT controller +# See: http://smartMPPT.blogspot.com/ +# See: https://github.com/thomasonw/ATmegaxxM1-C1 +# +# +# +############################################################## + + +menu.clock=Clock +menu.PSC=PSC +menu.variant=Variant + +############################################################ + +AtmegaX1.name=ATmegaX1 +AtmegaX1.upload.tool=avrdude +AtmegaX1.upload.protocol=arduino +AtmegaX1.build.variant=ATmegaxxM1 +AtmegaX1.build.core=arduino + +AtmegaX1.bootloader.tool=avrdude +AtmegaX1.bootloader.unlock_bits=0x3F +AtmegaX1.bootloader.lock_bits=0x0F + +AtmegaX1.menu.variant.64m1=ATmega64m1 +AtmegaX1.menu.variant.64m1.build.mcu=atmega64m1 +AtmegaX1.menu.variant.64m1.build.board=ATmega64M1 +AtmegaX1.menu.variant.64m1.build.name2=atmega64M1 +AtmegaX1.menu.variant.64m1.upload.maximum_size=64512 +AtmegaX1.menu.variant.64m1.upload.maximum_data_size=4096 + +AtmegaX1.menu.variant.32m1=ATmega32m1 +AtmegaX1.menu.variant.32m1.build.mcu=atmega32m1 +AtmegaX1.menu.variant.32m1.build.board=ATmega32M1_16xtl +AtmegaX1.menu.variant.32m1.build.name2=atmega32M1 +AtmegaX1.menu.variant.32m1.upload.maximum_size=32256 +AtmegaX1.menu.variant.32m1.upload.maximum_data_size=2048 + +AtmegaX1.menu.PSC.OFF=OFF +AtmegaX1.menu.PSC.OFF.bootloader.extended_fuses=0x3D +AtmegaX1.menu.PSC.LOW=LOW +AtmegaX1.menu.PSC.LOW.bootloader.extended_fuses=0x1D +AtmegaX1.menu.PSC.HGH=HIGH +AtmegaX1.menu.PSC.HIGH.bootloader.extended_fuses=0x05 + +############################################################## + +#make atmegaXXm1 AVR_FREQ=16000000L BAUD_RATE=57600 +AtmegaX1.menu.clock.16MHz_external.build.core=arduino +AtmegaX1.menu.clock.16MHz_external.build.f_cpu=16000000L +AtmegaX1.menu.clock.16MHz_external=16MHz External +AtmegaX1.menu.clock.16MHz_external.upload.speed=57600 +AtmegaX1.menu.clock.16MHz_external.bootloader.low_fuses=0xFF +AtmegaX1.menu.clock.16MHz_external.bootloader.high_fuses=0xDE +AtmegaX1.menu.clock.16MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_16Mhz.hex + + + +#make atmegaXXm1 AVR_FREQ=16000000L BAUD_RATE=57600 +AtmegaX1.menu.clock.8MHz_external.build.core=arduino +AtmegaX1.menu.clock.8MHz_external.build.f_cpu=8000000L +AtmegaX1.menu.clock.8MHz_external=8MHz External +AtmegaX1.menu.clock.8MHz_external.upload.speed=57600 +AtmegaX1.menu.clock.8MHz_external.bootloader.low_fuses=0xFF +AtmegaX1.menu.clock.8MHz_external.bootloader.high_fuses=0xDE +AtmegaX1.menu.clock.8MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_8Mhz.hex + + +#make atmegaXXm1 AVR_FREQ=8000000L BAUD_RATE=57600 +AtmegaX1.menu.clock.8MHz_internal.build.core=arduino +AtmegaX1.menu.clock.8MHz_internal.build.f_cpu=8000000L +AtmegaX1.menu.clock.8MHz_internal=8MHz Internal +AtmegaX1.menu.clock.8MHz_internal.upload.speed=57600 +AtmegaX1.menu.clock.8MHz_internal.bootloader.low_fuses=0xF2 +AtmegaX1.menu.clock.8MHz_internal.bootloader.high_fuses=0xDE +AtmegaX1.menu.clock.8MHz_internal.bootloader.file=optiboot/optiboot_{build.name2}_8MHz.hex + + +############################################################ + From 9e811c55a74c9ddf9821f95cb3c131d7df353a8b Mon Sep 17 00:00:00 2001 From: geraldjust Date: Thu, 26 Apr 2018 15:11:54 -0700 Subject: [PATCH 2/2] Updated Credits Finished the menu system, corrected the Credits --- avr/boards.txt | 109 +++++++++++++++++++++++++------------------------ 1 file changed, 56 insertions(+), 53 deletions(-) diff --git a/avr/boards.txt b/avr/boards.txt index f7363b9..626f126 100644 --- a/avr/boards.txt +++ b/avr/boards.txt @@ -1,9 +1,12 @@ - -# Modifed 4-25-2018 - Al Thomason - to enable ATmega32M1 and ATmega64M1 uC's +# Modifed 3-3-2015 - Al Thomason - to enable ATmega32M1 and ATmega64M1 uC's # As used on Arduino MPPT controller # See: http://smartMPPT.blogspot.com/ # See: https://github.com/thomasonw/ATmegaxxM1-C1 # +# Modified by: GeraldJust - 4/26/18 +# Notes: Added Menu sub-variant for uC type. +# Added options to turn PCS ON, all PCS LOW or HIGH +# Added support for AtmegaxC1 # # ############################################################## @@ -15,68 +18,68 @@ menu.variant=Variant ############################################################ -AtmegaX1.name=ATmegaX1 -AtmegaX1.upload.tool=avrdude -AtmegaX1.upload.protocol=arduino -AtmegaX1.build.variant=ATmegaxxM1 -AtmegaX1.build.core=arduino - -AtmegaX1.bootloader.tool=avrdude -AtmegaX1.bootloader.unlock_bits=0x3F -AtmegaX1.bootloader.lock_bits=0x0F - -AtmegaX1.menu.variant.64m1=ATmega64m1 -AtmegaX1.menu.variant.64m1.build.mcu=atmega64m1 -AtmegaX1.menu.variant.64m1.build.board=ATmega64M1 -AtmegaX1.menu.variant.64m1.build.name2=atmega64M1 -AtmegaX1.menu.variant.64m1.upload.maximum_size=64512 -AtmegaX1.menu.variant.64m1.upload.maximum_data_size=4096 - -AtmegaX1.menu.variant.32m1=ATmega32m1 -AtmegaX1.menu.variant.32m1.build.mcu=atmega32m1 -AtmegaX1.menu.variant.32m1.build.board=ATmega32M1_16xtl -AtmegaX1.menu.variant.32m1.build.name2=atmega32M1 -AtmegaX1.menu.variant.32m1.upload.maximum_size=32256 -AtmegaX1.menu.variant.32m1.upload.maximum_data_size=2048 - -AtmegaX1.menu.PSC.OFF=OFF -AtmegaX1.menu.PSC.OFF.bootloader.extended_fuses=0x3D -AtmegaX1.menu.PSC.LOW=LOW -AtmegaX1.menu.PSC.LOW.bootloader.extended_fuses=0x1D -AtmegaX1.menu.PSC.HGH=HIGH -AtmegaX1.menu.PSC.HIGH.bootloader.extended_fuses=0x05 +ATmegaxxM1/C1.name=ATmegaxxM1/C1 +ATmegaxxM1/C1.upload.tool=avrdude +ATmegaxxM1/C1.upload.protocol=arduino +ATmegaxxM1/C1.build.variant=ATmegaxxM1 +ATmegaxxM1/C1.build.core=arduino + +ATmegaxxM1/C1.bootloader.tool=avrdude +ATmegaxxM1/C1.bootloader.unlock_bits=0x3F +ATmegaxxM1/C1.bootloader.lock_bits=0x0F + +ATmegaxxM1/C1.menu.variant.64m1=ATmega64m1 +ATmegaxxM1/C1.menu.variant.64m1.build.mcu=atmega64m1 +ATmegaxxM1/C1.menu.variant.64m1.build.board=ATmega64M1 +ATmegaxxM1/C1.menu.variant.64m1.build.name2=atmega64M1 +ATmegaxxM1/C1.menu.variant.64m1.upload.maximum_size=64512 +ATmegaxxM1/C1.menu.variant.64m1.upload.maximum_data_size=4096 + +ATmegaxxM1/C1.menu.variant.32m1=ATmega32m1 +ATmegaxxM1/C1.menu.variant.32m1.build.mcu=atmega32m1 +ATmegaxxM1/C1.menu.variant.32m1.build.board=ATmega32M1_16xtl +ATmegaxxM1/C1.menu.variant.32m1.build.name2=atmega32M1 +ATmegaxxM1/C1.menu.variant.32m1.upload.maximum_size=32256 +ATmegaxxM1/C1.menu.variant.32m1.upload.maximum_data_size=2048 + +ATmegaxxM1/C1.menu.PSC.OFF=OFF +ATmegaxxM1/C1.menu.PSC.OFF.bootloader.extended_fuses=0x3D +ATmegaxxM1/C1.menu.PSC.LOW=LOW +ATmegaxxM1/C1.menu.PSC.LOW.bootloader.extended_fuses=0x1D +ATmegaxxM1/C1.menu.PSC.HGH=HIGH +ATmegaxxM1/C1.menu.PSC.HIGH.bootloader.extended_fuses=0x05 ############################################################## #make atmegaXXm1 AVR_FREQ=16000000L BAUD_RATE=57600 -AtmegaX1.menu.clock.16MHz_external.build.core=arduino -AtmegaX1.menu.clock.16MHz_external.build.f_cpu=16000000L -AtmegaX1.menu.clock.16MHz_external=16MHz External -AtmegaX1.menu.clock.16MHz_external.upload.speed=57600 -AtmegaX1.menu.clock.16MHz_external.bootloader.low_fuses=0xFF -AtmegaX1.menu.clock.16MHz_external.bootloader.high_fuses=0xDE -AtmegaX1.menu.clock.16MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_16Mhz.hex +ATmegaxxM1/C1.menu.clock.16MHz_external.build.core=arduino +ATmegaxxM1/C1.menu.clock.16MHz_external.build.f_cpu=16000000L +ATmegaxxM1/C1.menu.clock.16MHz_external=16MHz External +ATmegaxxM1/C1.menu.clock.16MHz_external.upload.speed=57600 +ATmegaxxM1/C1.menu.clock.16MHz_external.bootloader.low_fuses=0xFF +ATmegaxxM1/C1.menu.clock.16MHz_external.bootloader.high_fuses=0xDE +ATmegaxxM1/C1.menu.clock.16MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_16Mhz.hex #make atmegaXXm1 AVR_FREQ=16000000L BAUD_RATE=57600 -AtmegaX1.menu.clock.8MHz_external.build.core=arduino -AtmegaX1.menu.clock.8MHz_external.build.f_cpu=8000000L -AtmegaX1.menu.clock.8MHz_external=8MHz External -AtmegaX1.menu.clock.8MHz_external.upload.speed=57600 -AtmegaX1.menu.clock.8MHz_external.bootloader.low_fuses=0xFF -AtmegaX1.menu.clock.8MHz_external.bootloader.high_fuses=0xDE -AtmegaX1.menu.clock.8MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_8Mhz.hex +ATmegaxxM1/C1.menu.clock.8MHz_external.build.core=arduino +ATmegaxxM1/C1.menu.clock.8MHz_external.build.f_cpu=8000000L +ATmegaxxM1/C1.menu.clock.8MHz_external=8MHz External +ATmegaxxM1/C1.menu.clock.8MHz_external.upload.speed=57600 +ATmegaxxM1/C1.menu.clock.8MHz_external.bootloader.low_fuses=0xFF +ATmegaxxM1/C1.menu.clock.8MHz_external.bootloader.high_fuses=0xDE +ATmegaxxM1/C1.menu.clock.8MHz_external.bootloader.file=optiboot/optiboot_{build.name2}_8Mhz.hex #make atmegaXXm1 AVR_FREQ=8000000L BAUD_RATE=57600 -AtmegaX1.menu.clock.8MHz_internal.build.core=arduino -AtmegaX1.menu.clock.8MHz_internal.build.f_cpu=8000000L -AtmegaX1.menu.clock.8MHz_internal=8MHz Internal -AtmegaX1.menu.clock.8MHz_internal.upload.speed=57600 -AtmegaX1.menu.clock.8MHz_internal.bootloader.low_fuses=0xF2 -AtmegaX1.menu.clock.8MHz_internal.bootloader.high_fuses=0xDE -AtmegaX1.menu.clock.8MHz_internal.bootloader.file=optiboot/optiboot_{build.name2}_8MHz.hex +ATmegaxxM1/C1.menu.clock.8MHz_internal.build.core=arduino +ATmegaxxM1/C1.menu.clock.8MHz_internal.build.f_cpu=8000000L +ATmegaxxM1/C1.menu.clock.8MHz_internal=8MHz Internal +ATmegaxxM1/C1.menu.clock.8MHz_internal.upload.speed=57600 +ATmegaxxM1/C1.menu.clock.8MHz_internal.bootloader.low_fuses=0xF2 +ATmegaxxM1/C1.menu.clock.8MHz_internal.bootloader.high_fuses=0xDE +ATmegaxxM1/C1.menu.clock.8MHz_internal.bootloader.file=optiboot/optiboot_{build.name2}_8MHz.hex ############################################################