Difference between revisions of "AVR Drivers"

755 bytes added ,  06:09, 30 September 2015
m
USBASP details is obsolete - no longer applicable for the V2.0 version commonly available
m (nlite upload via avrdude)
m (USBASP details is obsolete - no longer applicable for the V2.0 version commonly available)
 
(2 intermediate revisions by one other user not shown)
Line 41: Line 41:
'''[http://www.nongnu.org/avrdude/ AVRDUDE]''' - It is a command line interface (DOS). If you use Tido's programs then you don't need to compile anything: those programs are ready to be loaded. If you install MHV AVR Tools/WinAVR, AVRDUDE will be included. Does not support ATtiny13A, have to use a workaround and pretend it's ATtiny13.
'''[http://www.nongnu.org/avrdude/ AVRDUDE]''' - It is a command line interface (DOS). If you use Tido's programs then you don't need to compile anything: those programs are ready to be loaded. If you install MHV AVR Tools/WinAVR, AVRDUDE will be included. Does not support ATtiny13A, have to use a workaround and pretend it's ATtiny13.


[http://extremeelectronics.co.in/avr-tutorials/gui-software-for-usbasp-based-usb-avr-programmers/ '''eXtreme Burner - AVR'''] - Or if you do not like AVRDUDE and want something with GUI, you can try eXtreme Burner - AVR, download latest version at the bottom of the page under release. It can read/write (download/upload) and it also has the required driver for USBasp in the installation. If you only want to write a new firmware (already compiled Tido's, DrJones's, ...) this should be all you need. Does support ATtiny13A.
[http://extremeelectronics.co.in/avr-tutorials/gui-software-for-usbasp-based-usb-avr-programmers/ '''eXtreme Burner - AVR'''] - Or if you do not like AVRDUDE and want something with GUI, you can try eXtreme Burner - AVR, download latest version at the bottom of the page under release. It can read/write (download/upload) and it also has the required driver for USBasp in the installation. If you only want to write a new firmware (already compiled Tido's, DrJones's, ...) this should be all you need. Does support ATtiny13A. Does not seem to write correctly nlite driver though. Either does not understand the hex format or ATtiny13A write support is bad. It reads and erases fine.


==== USBasp Driver ====
==== USBasp Driver ====
Line 99: Line 99:
|}
|}


The programmer is 10 pins however which are set up this way:
The programmer is 10 pins however which are set up one of two ways.
 
Old Style:


{|class="wikitable" style="text-align: center; width: 400px;"
{|class="wikitable" style="text-align: center; width: 400px;"
Line 117: Line 119:
|}
|}


[[File:Ribbon.jpg|thumb|The ribbon port at the end is disassembled and wire 8 is moved over to the 9th position]]So Wire 1 (MOSI) of the ribbon cable from the programmer must attach to Pin 5 of the Atmel. Make sure you mark which side of the clip attaches to the top of the Atmel or everything will be misaligned next time you use it. Line up RST and SCK with their appropriate wires. But notice that MISO on the programmer is Wire number 9 and the ribbon only has 8 wires. You will need to disassemble the end of the ribbon cable at the controller end and move wire 8 over to the 9 position so that MISO lines up correctly.
New Style, for the USBASP V2.0:
 
{|class="wikitable" style="text-align: center; width: 400px;"
|+ AVR Programmer ribbon wires
|-
!Pin  !!    Function  !!  Function  !!  Pin   
|-
|1  ||  '''MOSI'''  ||  VCC  || 2   
|-
|3  ||  xxx    ||  TXD  || 4   
|-
|5  ||  '''RST'''  ||  RXD  || 6   
|-
|7  ||  '''SCK'''  ||  GND  || 8       
|-
|9  ||  '''MISO'''  ||  '''GND'''  || 10 
|}
 
 
[[File:Ribbon.jpg|thumb|Old Style: The ribbon port at the end is disassembled and wire 8 is moved over to the 9th position]]Old Style: So Wire 1 (MOSI) of the ribbon cable from the programmer must attach to Pin 5 of the Atmel. Make sure you mark which side of the clip attaches to the top of the Atmel or everything will be misaligned next time you use it. Line up RST and SCK with their appropriate wires. But notice that MISO on the programmer is Wire number 9 and the ribbon only has 8 wires. You will need to disassemble the end of the ribbon cable at the controller end and move wire 8 over to the 9 position so that MISO lines up correctly.


Communication with the Atmel chip is via Serial Peripheral Interface (SPI, see [http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus Wikipedia article]) with the ISP programmer a Master and the Atmel on the driver board a Slave. SCK is Serial Clock so they are in sync. The ISP programmer talks on the MOSI line (Master Ouput, Slave Input) while the Atmel talks back on the MISO (Master Input, Slave Output) line. RST is reset.
Communication with the Atmel chip is via Serial Peripheral Interface (SPI, see [http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus Wikipedia article]) with the ISP programmer a Master and the Atmel on the driver board a Slave. SCK is Serial Clock so they are in sync. The ISP programmer talks on the MOSI line (Master Ouput, Slave Input) while the Atmel talks back on the MISO (Master Input, Slave Output) line. RST is reset.
Line 189: Line 210:
nlite runs 4.8MHz clock, start up 14CK + 4ms, fast PWM at around 18kHz.
nlite runs 4.8MHz clock, start up 14CK + 4ms, fast PWM at around 18kHz.
BLF-VLD uses phase correct PWM at 9kHz by default.
BLF-VLD uses phase correct PWM at 9kHz by default.
eXtreme burner maybe does not understand nlite.hex file and verification fails, or it can't write correctly ATtiny13A at all. Use AVRdude instead.


==Compile your own code==
==Compile your own code==
confirmed
1

edit