Transistortester GM328

Transistortester GM328

ESR meter, frequency counter, square wave generator

ATMega328P chip, 8MHz external crystal,
12864 LCD screen for low power backlight screen about 2mA,
9V voltage, stable operating current of about 20mA.

USBasp USB ISP 3,3 V/5 V AVR Programmer (AliExpress)

USBasp driver : http://www.fischl.de/usbasp/

For Windows 8 to 10 version, you need to disable the Digital Signature
-Press and Hold Shit key and Click on Restart.
-Click Troubleshoot
-Click Advanced Option
-Click Start up Settings
-Click Restart
-Select the Option Disable Driver signature enforcement (Pressing F7)
-Reboot
-Device manager, Open “Other devices” and right click on Usbasp and select Update driver software

SVN-Repositories: USBasp USB ISP (Burn FLASH and EEPROM)https://www.mikrocontroller.net/svn/list
Directories: https://www.mikrocontroller.net/svnbrowser/transistortester/

Upgrade firmware: SVN svn://mikrocontroller.net/transistortester

svn checkout --depth empty
svn://www.mikrocontroller.net/transistortester/Software
svn update --set-depth files Software/trunk/
svn update --set-depth infinity Software/trunk/mega328_GM328

Burn FLASH and EEPROM:We use an Arduino UNO to program our microcontroller.

Connect the USBasp to PC.
Connect SPI programming pins of USBasp to the Arduino UNO.
MOSI, MISO, SCK, RESET and GND pins. Now put the atmega328 controller for programming into UNO board.

r       read the data device memory and write to the specified file
w      read the data file and write it to the device memory

The upper bits of the fuse are not used in the ATmega328.
The unused bits are read back as ‘1’ values.
However, some programming software masks out the unused bits. For example, with the mask 0x07, 0xfc becomes 0xf04.

For writing only flash and EEPROM:

avrdude –c usbasp –p m328p –u -U flash:w:TransistorTester.hex:a -U eeprom:w:TransistorTester.eep:a

For writing only fuses (L=F7, H=D9, E=04):

avrdude -c usbasp -p m328p -U lfuse:w:0xF7:m -U hfuse:w:0xD9:m -U efuse:w:0x04:

Erase chip:

avrdude -p m328p -c usbasp -e -u

Backup Flash:

Read flash memory to a file “flash_read.hex“:

avrdude -c usbasp -p m328p -U flash:r:flash_read.hex:i

Read eeprom memory to a file “eeprom_read.hex“:

avrdude -c usbasp -p m328p -U eeprom:r:flash_read.hex:i

Test purpose:

avrdude -p m328p -P usb -c usbasp -U flash:w:Blink.hex

Arduino bootloader

Tools->Board->Arduino UNO (or whatever Arduino board you are programming)
Tools->Programmer->USBasp
Tools->Burn Bootloader

or

The bootloader is:

c:\myAVR\Arduino-1.8.1\hardware\arduino\avr\bootloaders\optiboot\

uno.name=Arduino Uno
uno.bootloader.path=optiboot
uno.bootloader.file=optiboot_atmega328.hex
uno.build.core=arduino
avrdude -c usbasp -p m328p -u -U flash:w:optiboot_atmega328.hex:a

Leave a Reply

Your email address will not be published. Required fields are marked *

*