Go Down

Topic: 2561...bad guy (Read 328 times) previous topic - next topic

UNikolai


Hello. I just can not flash atm 2561..the pinout is the same as atm 169, with it I did it all ... I program through usbasp the programmer and the microcontroller is not even detected ... 0 signature. Contacts are all soldered well, everyone called a multimeter. Even dialed a multimeter matching sck miso mosi from the programmer to the feet of the microcontroller, it all converges. But still not determined. Very much I ask to help

pert

Do you have a clock source connected? If you have the fuses set for an external clock source and none is provided then the chip will seem to be "bricked". Even if you're only trying to set the fuses to use the internal oscillator you still need that external clock source to change the fuses. I believe the factory fuses are always set to use the internal oscillator but they may have been changed since then.

UNikolai

So I also think that it should work from an internal generator ... do you think this is the only reason why the microcontroller may not work?

pert

So I also think that it should work from an internal generator
...but only if the fuses are set for it. A common cause of people "bricking" chips is they hook up their programmer, hit Tools > Burn Bootloader, without noticing that the board configuration they have selected is for an external clock but they don't have one connected. They can change the fuses from internal oscillator to external because the chip comes with the fuses set for the internal oscillator but then they can't set the fuses back from external to internal until they connect an external clock source.

do you think this is the only reason why the microcontroller may not work?
Definitely not.

UNikolai

#4
Mar 20, 2018, 02:07 pm Last Edit: Mar 20, 2018, 02:15 pm by UNikolai
I repeat, I have been patching many atmeg microcontrollers. and I rarely use arduino for firmware. A bootloader is written only after the normal operation of the microcontroller.I soldered an external clock generator, but, unfortunately, it did not work ...

pert

Well since you're posting on the Arduino forum it was reasonable for me to assume that you're using the Arduino IDE.

In the Arduino IDE there is no command to only set fuses. Tools > Burn Bootloader first sets fuses, then flashes the bootloader to the microcontroller. So even if you're not going to use the bootloader that's still the standard practice. Some 3rd party hardware packages don't have a bootloader or give you the option to not use a bootloader but you will still use Tools > Burn Bootloader to set fuses, even though the name of the command is a bit misleading in that case.

Of course these processes are done via avrdude commands generated by the Arduino IDE so there's no difference from you just running those same commands manually.

UNikolai

I do not use arduino to change fuzes

hansibull

#7
Mar 20, 2018, 04:32 pm Last Edit: Mar 20, 2018, 04:32 pm by hansibull
If you don't use Arduino IDE, nor any "Arduino functionality" you should rather post this over at the AVR freaks forum. This subforum is all about using microcontrollers with the Arduino framework.

Even if ATmega169 and ATmega2561 have kinda similar pinout, they have different programming pins. ATmega2561 uses PE0/PDI and PE1/PDI, not MOSI and MISO.

See minimal setup setup schematic at the bottom of the readme;
https://github.com/MCUdude/MegaCore
MightyCore -  ATmega1284, mega644, mega324, mega164, mega32, mega16, mega8535
Github.com/MCUdude/MightyCore

MiniCore - ATmega8, mega48, mega88, mega168, mega328
Github.com/MCUdude/MiniCore

UNikolai

what? Of course, I may be wrong, but initially programming goes on miso mosi sck, they are in both microcontrollers, like tx dx, is not it?

hansibull

#9
Mar 20, 2018, 10:40 pm Last Edit: Mar 20, 2018, 10:40 pm by hansibull
Read the datasheet. The ATmega64/128/1281/2561 is different. I've designed a development board for these chips, so I know this is correct. I suggest you give it a try  :)
MightyCore -  ATmega1284, mega644, mega324, mega164, mega32, mega16, mega8535
Github.com/MCUdude/MightyCore

MiniCore - ATmega8, mega48, mega88, mega168, mega328
Github.com/MCUdude/MiniCore

UNikolai

if so, then this is a very well, as I completely understood what to do. prompt, as it to program the chip? through tx dx,? through ttl converter? and why do have a ports sck miso mosi?

hansibull

Just look at the minimal setup at the bottom of the page I linked to in post #8.

Even though ISP programming shares the same pin as UART0 (RX, TX) doesn't mean it uses the UART interface when uploading using ISP.

Use a dedicated programmer/ISP to set fuses and upload bootloader/hex files. This may be an Arduino as ISP, USBasp or any other programmer you might prefer. You connect this to the AVR ISP header in the schematic.

Lets say you're using Arduino IDE, and you've just burned the bootloader + fuses using the programmer. Now you may use the bootloader to upload new code to the microcontroller. You can do so by using a USB to serial adapter (often called FTDI adapter). You connect the serial adapter to the UART header in the schematic.

Just because the physical MISO and MOSI pins aren't use for programming doesn't mean they can't be used for SPI. MISO, MOSI and SCK works just like any other AVR with SPI, the only difference is that you can't program the microcontroller itself with these pins.
MightyCore -  ATmega1284, mega644, mega324, mega164, mega32, mega16, mega8535
Github.com/MCUdude/MightyCore

MiniCore - ATmega8, mega48, mega88, mega168, mega328
Github.com/MCUdude/MiniCore

UNikolai

oh my god ... I tell you one thing, you tell me about something else then what it was necessary to write at all, that in 2561, that 169 contacts are identical - miso mosi ck tx rks ... in general, all right, all the best

Go Up