22-12-2018, 14:43
CH340 nie rozwiąże problemu bootoadera. Nadal program będzie startował z opóźnieniem.
Fuses możesz zmienić programatorem ISP. W przypadku "małych" AVR masz SPI (DebugWire owszem ale najpierw przez SPI trzeba włączyć DebugWire ). W większych AVR jest JTAG, w najnowszych PDI czy jak tam się zwie.
Teoretycznie, odpowiedni bootloader może modyfikować fuses. Z sekcji bootloadera można robic prawie wszystko to co i z programatora. Są pewne ograniczenia, np eeprom można zapisywać tylko po bajcie a nie stronami. Niektóre operacje to bilet w jedna stronę, np wyłączenie bootloadera. Ale nie martw się, Arduinowy bootloader niewiele potrafi, właściwie to nic poza kasowaniem pamięci i ładowaniem program (nawet nie wiem czy potrafi zapisać eeprom, ale chyba nie) no i niepotrzebnym zajmowaniem miejsca w FLASH.
Aby rozwiązać swój problem, musisz użyć ISP via SPI.
Fuses możesz zmienić programatorem ISP. W przypadku "małych" AVR masz SPI (DebugWire owszem ale najpierw przez SPI trzeba włączyć DebugWire ). W większych AVR jest JTAG, w najnowszych PDI czy jak tam się zwie.
Teoretycznie, odpowiedni bootloader może modyfikować fuses. Z sekcji bootloadera można robic prawie wszystko to co i z programatora. Są pewne ograniczenia, np eeprom można zapisywać tylko po bajcie a nie stronami. Niektóre operacje to bilet w jedna stronę, np wyłączenie bootloadera. Ale nie martw się, Arduinowy bootloader niewiele potrafi, właściwie to nic poza kasowaniem pamięci i ładowaniem program (nawet nie wiem czy potrafi zapisać eeprom, ale chyba nie) no i niepotrzebnym zajmowaniem miejsca w FLASH.
Aby rozwiązać swój problem, musisz użyć ISP via SPI.