Fråga:
Jag fick en missignaturerad ATmega328-PU. Hur kan jag fixa det?
Ricardo
2014-02-15 04:44:35 UTC
view on stackexchange narkive permalink

Någon gång i det förflutna brände jag startladdare på ett nytt parti med fyra ATmega328-PU med Arduino IDE (märk att det inte finns någon P efter 328 - det är billigare icke-picopower-version av MCU, inte att förväxla med ATmega328P-PU med en P ), och blev förvånad över följande meddelande från avrdude:

  avrdude: Enhetssignatur = 0x1e950F avrdude: Förväntad signatur för ATMEGA328 är 1E 95 14 Dubbelkontrollchip, eller använd -F för att åsidosätta denna kontroll. 

Det betyder att avrdude trodde att chipet inte var vad dess etikett sa. Sedan ändrade jag chipstypen på min Arduino IDE till ATmega328P-PU och avrdude brände startladdaren utan klagomål. Vad det betyder är att chipet märktes som en MCU och internt svarade det som ett annat, lite annorlunda.

Vad jag skulle vilja veta är:

  • Hur sällsynt är denna händelse? Har någon haft en liknande upplevelse? ( Originalfråga, utanför ämnet )

  • Är det möjligt att åtgärda detta? Hur kan jag fixa signaturen så att avrdude känner igen chipet korrekt?

Detta är en tvärpost från EE.SE. Jag lade upp den här frågan där men väckte inte mycket uppmärksamhet, så jag ville se om någon från vårt samhälle hade en liknande upplevelse.

Det verkar som om din leverantör helt enkelt felmärkt några 328Ps (vilket är vad denna signatur representerar) som 328s.
Två svar:
TheDoctor
2014-02-15 05:31:13 UTC
view on stackexchange narkive permalink

När jag surfar på sparkfun har jag hittat flera nyhetsinlägg som visar sin kamp med felaktiga marker. Här är några:

Sparkfun hade fått en tvivelaktig sändning om IC från en ny säljare i Kina. De bestämde sig för att testa dem innan de skickades till produktion, och ingen av deras testkort fungerade. Med hjälp av salpetersyra kunde de ta bort fallet med IC: erna och fostra en metallkula som såg ut som koppar.

I en annan artikel dissekerade de några misstänkta IC från Atmel och hittade ett ON-halvledarkisel wafer inuti. Chipsen var inte funktionella ATmegas, men de hade kisel, till skillnad från de andra.

Kan du pröva detta svar lite? Att sammanfatta artiklarna du länkar till skulle vara en bra start - just nu, om sparkfun av någon anledning går ner kommer ditt svar att vara värdelöst.
@Shog9 Varför? Frågan är långt ifrån basen. Det här svaret är en sammanfattning av förekomster av personer som får felmärkta marker (* i huvudsak människor som delar erfarenheter *). Vem ska det hjälpa?
Jag kan fråga dig samma sak, @AsheeshR - varför oroa dig för ett svar när frågan är problemet? Hur som helst, tack för att du lagt till detaljerna, TheDoctor.
jippie
2014-02-15 13:35:23 UTC
view on stackexchange narkive permalink

Inte det föredragna sättet att fixa saker och verkligen inte den första lösningen att överväga, men du kan överväga att programmera signaturbyten. Innan du försöker vara helt säker på att du verkligen vill göra detta och du har undersökt vad det handlar om att ångra detta. Det kan handla om att ändra konfigurationsfiler på din dator ...

Hur som helst för att ställa in styrenhetens signaturbyte är som följer (ej testad, jag har ingen extra AVR som ligger kvar):

  avrdude -p atmega328 -c arduino -P / dev / ttyUSB003 -b 19200 -v -U signatur: w: 0x1E, 0x95,0x14: m  
Jag vet att detta är väldigt sent, men jag tycker inte att det är en bra idé att låta detta stå som det accepterade svaret obestridligt: ​​Signaturen på en atmega328 är inte skrivbar, och så vitt jag vet är signaturen inte skrivbar på NÅGON atmega eller attiny.
Av intresse försökte jag ovanstående tillvägagångssätt, som avrdude accepterade på ett visst sätt: `avrdude: skriva signatur (3 byte)` - men det gick inte att göra det: `avrdude: verification error, first mismatch at byte 0x0002: 0x14! = 0x0f '


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...