Benutzer-Werkzeuge

Webseiten-Werkzeuge


attiny85

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
attiny85 [2021/03/15 13:00] varnholtattiny85 [2021/03/15 19:16] (aktuell) varnholt
Zeile 29: Zeile 29:
  
 Dokumentation zum Chip findet man in der [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2586-AVR-8-bit-Microcontroller-ATtiny25-ATtiny45-ATtiny85_Datasheet.pdf|Atmel 8-bit AVR Microcontroller with 2/4/8K Bytes In-System Programmable Flash]] Dokumentation zum Chip findet man in der [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2586-AVR-8-bit-Microcontroller-ATtiny25-ATtiny45-ATtiny85_Datasheet.pdf|Atmel 8-bit AVR Microcontroller with 2/4/8K Bytes In-System Programmable Flash]]
 +
 +=== ATTINY85 - FUSE ===
  
 FUSE das hat mich konfuse gemacht - sind: Einstellungsbits, mit denenman z.B. die Taktfrequenz von 8MHz auf 1MHz umstellen kann. [[https://hackaday.com/2012/08/30/avr-fuse-bits-explained/|Hackaday]] erklärt hier Grundlegendes und hier geht [[https://embedderslife.wordpress.com/2012/08/20/fuse-bits-arent-that-scary/|embedderslife]] ins Details. Lock und Suse Settings sind jeweils bei 0 aktiv, nicht wie gewohnt bei 1 **seufz** Im Link zu den Details steht, wie man berechnet, was man bei avrdude.exe angeben muss - im Beispiel für einen ATmega, nicht für einen ATTINY. FUSE das hat mich konfuse gemacht - sind: Einstellungsbits, mit denenman z.B. die Taktfrequenz von 8MHz auf 1MHz umstellen kann. [[https://hackaday.com/2012/08/30/avr-fuse-bits-explained/|Hackaday]] erklärt hier Grundlegendes und hier geht [[https://embedderslife.wordpress.com/2012/08/20/fuse-bits-arent-that-scary/|embedderslife]] ins Details. Lock und Suse Settings sind jeweils bei 0 aktiv, nicht wie gewohnt bei 1 **seufz** Im Link zu den Details steht, wie man berechnet, was man bei avrdude.exe angeben muss - im Beispiel für einen ATmega, nicht für einen ATTINY.
  
-Da der Entwickler, von dem ich das erste Beispiel habe, beim ATTINY85 "-U lfuse:w:0x62:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m" drin hat, sollte das als Referenz dienen - ich lese aber noch mal die Doku ;-)+Da der Entwickler, von dem ich das erste Beispiel habe, beim ATTINY85 "-U lfuse:w:0x62:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m" drin hat, sollte das als Referenz dienen. Die angegebenen Werte sind die im Datenblatt als default eingestellten Werte. Man müsste Bit 7 auf 1 setzen, wenn man statt 1GHz die 8GHz haben wollte, also statt 0x62 dann 0xe2. 
 + 
 +Mehr Beispiele [[https://embeddedthoughts.com/2016/05/27/attiny85-blinking-without-clock-cycles/#more-1339|Blinken mit Timer-Interrupt]][[https://embeddedthoughts.com/2016/05/25/getting-started-with-the-attiny85/#more-1173|Getting Started mit ATTINY85]] und den Fuse-Einstellungen; [[https://embeddedthoughts.com/2016/06/10/attiny85-debounce-your-pushbuttons/#more-2060|Debounce Push-Button]] da wartet er immer 200 Microsekunden, bevor er den Button als gedrückt oder nicht 'erkennt'
 + 
 +[[http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny85|AVRFuseCalc]] 
 + 
 +Es war wohl doch keine so gute Idee, den Digispark-ATtiny85 zu bestellen. Da der RESET-Pin durch den eingebauten Bootloader deaktiviert ist, kann man die fuse nicht so einfach setzen. Geht nur kompliziert - siehe in der Digispark [[http://digistump.com/wiki/digispark/tutorials/programming?s[]=fuse|Dokumentation]]. 
 + 
 +=== ATTINY85 - DIGISPARK - FUSE setzen, um pilight lowpass Filter zu nutzen === 
 + 
 +Weiteres Vorgehen: 
 +    * versuchen, mit dem Raspberry zu programmieren (geht wahrscheinlich nicht) 
 +    * mit dieser [[https://www.instructables.com/How-to-unlock-Digispark-ATtiny85-and-convert-it-to/|Anleitung]] über einen Arduino das ganze probieren 
 + 
 +Von der Anleitung für V3 NICHT avrdude installiert, sondern mit "sudo apt-get install avrdude", da es bei den dpkg Abhängigkeitsverhältnis-Probleme gab. 
 + 
 +Wenn das Makefile mit spaces formatiert ist, kommt auch ein Fehler. Irgendwas mit 'End'. Man muss zum einrücken tabs benutzen. Das beisst sich mit meinen nano Einstellungen, die aus Tabs Spaces machen - für Python3 **seufz** 
 + 
 +Nachdem ich GPIO10_MOSI_Pin19; GPIO9_MISO_Pin21 GPIO11_SCLK_Pin23 und GPIO13_RESET_Pin33 angeschlossen hatte, habe ich die Datei .avrduderc (falsch) angepasst. Dann kam immer der Fehler: 
 +  gpio/direction: No such file or directory 
 +Mit folgender Datei **unter root** angelegt(!) geht es: 
 +<code> 
 +default_programmer = "mit_gpio"; 
 + 
 +programmer 
 +  id    = "mit_gpio"; 
 +  desc  = "Use sysfs interface to bitbang GPIO lines"; 
 +  type  = gpio; 
 +  reset = 13; 
 +  sck   = 19; 
 +  mosi  = 10; 
 +  miso  = 9; 
 +
 +</code>
  
 +Problem mit dem Makefile gab es auch noch. Er mag die Doppelpunkte im Pfad nicht. Also statt
 +  geht nicht:
 +  sudo $(AVRDUDE) -p $(AVRDUDEMCU) -P gpio -c gpio -b 10000 -U flash:w:$(TARGET)_$(AVRDUDEMCU).hex
 +  geht:
 +  sudo $(AVRDUDE) -p $(AVRDUDEMCU) -P gpio -b 10000 -U $(TARGET)_$(AVRDUDEMCU).hex
 +  
 +Und bei erase statt:
 +  ist wohl für anderen attiny:
 +  $(AVRDUDE) -p $(AVRDUDEMCU) -P gpio -c gpio -e -U lfuse:w:0xe1:m -U hfuse:w:0xdf:m
 +  besser für attiny85:
 +  $(AVRDUDE) -p $(AVRDUDEMCU) -vvv -P gpio -e -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m
 +  
 +Wenn ich jetzt die fuses lese:
 +  sudo avrdude -P gpio -p t85 -U lfuse:r:-:h -U hfuse:r:-:h
 +  lfuse: 0xe2
 +  hfuse: 0xdf
 +sollte es geht ... **geht aber nicht** !?
attiny85.1615813221.txt.gz · Zuletzt geändert: 2021/03/15 13:00 von varnholt