This article applies only if the bootloader is damaged and buys a domestic "no-drive usbasp download Line" that causes the Arduino IDE to fail to recognize and not burn the write. is a slightly non-mainstream mode of operation.
Because the Arduino IDE does not support this free-drive usbasp line, it will prompt for errors.
The whole thing is like this:
1. Symptoms
With the Arduino control servo inadvertently play off, plugged into the computer, in the "Device Manager" does not have a serial prompt, with the Arduino IDE can not download the program to the board, prompted to find the COM port. And the computer can not find the serial port. It is estimated that bootloader is damaged and ready to be re-burned with the usbasp download line.
2. Prepare to resolve
Before the standard usbasp download line sent to cousin, had to buy another. Bought a "domestic-free Drive" Download line, it is the installation of the driver. After plugging into the computer, the serial number is not generated and is only recognized for a usb-hid device.
The normal usbasp line has 10 pins, and Arduino has only 6. But as long as the pin is connected, it can be adapted. Connect the following pins with the DuPont line 22: Mosi,vcc,rst,sck,miso,gnd.
Unfortunately, due to the Arduino IDE's "high-end Air international", it does not recognize this modified firmware of the "Chinese characteristics" usbasp download line, the conventional method can not be burned at all, display the error "could not find USB device" usbasp "" "Avrdude:stk500_getsync (): Not in sync:resp=0x00", unable to connect.
3. Dispel
In the final analysis, Arduino is not a Atmega 328P microcontroller and peripheral circuit, bootloader is also a single-chip flash file, why rely on the Arduino IDE! (that is to say, it was a bit scary when I couldn't write ...) Calm down, calm down. Since there is a download line, we will follow the single-chip play, directly download the compiled Flash files. But which is the Arduino uno flash? What if I don't have a supported downloader in the official list?
This kind of domestic free-drive download line, you can use progisp this software. (AVR fighter seems to work, but the number of supported chip types does not seem to be progisp much)
The download software is selected, but how to set up a bunch of parameters in the software? There is already a description in the Arduino folder. In my case, the "E:\arduino-1.0.5-r2\hardware\arduino" folder in the Boards.txt contains the various models of the Arduino parameters, my is Arduino UNO, the corresponding record parameters in the file are as follows:
##############################################################
Uno.name=arduino Uno
Uno.upload.protocol=arduino
uno.upload.maximum_size=32256
uno.upload.speed=115200
Uno.bootloader.low_fuses=0xff
Uno.bootloader.high_fuses=0xde
uno.bootloader.extended_fuses=0x05
Uno.bootloader.path=optiboot
Uno.bootloader.file=optiboot_atmega328.hex
uno.bootloader.unlock_bits=0x3f
uno.bootloader.lock_bits=0x0f
uno.build.mcu=atmega328p
uno.build.f_cpu=16000000l
Uno.build.core=arduino
Uno.build.variant=standard
##############################################################
This is not exactly remembered, setting a few key values:
1. Use the DuPont line to connect the following pins of the Arduino and usbasp download lines: Mosi,vcc,rst,sck,miso,gnd.
Download line into the computer, open the Progisp software, Flash file Select "E:\arduino-1.0.5-r2\hardware\arduino\bootloaders\optiboot" folder "Optiboot_ Atmega328.hex ".
2. The above list of low_fuses=0xff (low fuse bit), high_fuses=0xde (high fuse bit), extended_fuses=0x05 (expansion fuse bit) These three should be set in the Progisp.
3. Click the Software "Automatic", that is, start the automatic erase, reset, burn write, set the fuse bit and so on a series of operations. More than 10 seconds after the prompt is complete.
Then unplug the download line, connect the USB cable to the computer and the Arduino, is it possible to recognize the new hardware and happily write the program?
Non-standard usbasp download line programming Arduino bootloader parameter settings