Forum: Mikrocontroller und Digitale Elektronik [AVR] Device Signature Imprint Table auslesen / Produktions-Code


von Thorsten S. (thorsten_s77)


Lesenswert?

tach,

wer kann mir weiter helfen?
Ich hätte gerne für eine unique Device-ID den "Device Signature Imprint 
Table" meines ATtiny841 ausgelesen, der an definierten Stellen die 
Lot-Nummer, Wafer, X und Y bereit hält.
Bekommen tue ich aber nur 0xFF an den Stellen und die Signature Bytes an 
Stellen, wo das Datenblatt sie gar nicht definiert.

Datenblatt: 
http://www.atmel.com/Images/Atmel-8495-8-bit-AVR-Microcontrollers-ATtiny441-ATtiny841_Datasheet.pdf

Ich brauche die Tabelle auf Seite 221 und lese sie aus wie beschrieben 
auf Seite 223,
1
#include <avr/pgmspace.h>
2
for(uint8_t i=0; i<0x1F; i++) {
3
  cli();
4
  SPMCSR = 0x21;
5
  tmp = __LPM_enhanced__(tmp); // --> LPM reg, Z
6
  sei();
7
  // output tmp via UART
8
}
bzw.
1
#include <avr/boot.h>
2
for(uint8_t i=0; i<0x1F; i++) {
3
  cli();
4
  tmp = boot_signature_byte_get(tmp);
5
  sei();
6
  // output tmp via UART
7
}

Ich weiß, Teil-/Pseudocode ist nicht beliebt, aber beide Wege führen zu 
gleichem Ergebnis:
1
0000: 1E 4E 93 21 15 80 FF 81 FF 51 FF FF FF 69 FF FF
2
0010: FF FF FF FF FF FF FF FF 17 01 12 02 13 02 FF FF

Laut Tabelle im Datenblatt sollte ich meine Daten von 0x0E bis 0x17 
finden ... offensichtlich nicht.

Benutzt wird Atmels aktuelle GCC-Tool-Chain mit avr-libc 
(avr8-gnu-toolchain-3.4.3.1072-linux.any.x86_64).

Danke für Tipps.

von Michael R. (mr-action)


Lesenswert?

Hi Thorsten,

hast du den Fehler gefunden? Ich habe grade genau das gleiche Problem - 
auch mit ATTiny841...

Viele Grüße,
Michael

von Thorsten S. (Gast)


Lesenswert?

Nein, hab's aufgegeben.
Wir generieren eine ID beim flashen, Datenbankbasiert, und schreiben das 
dann an das Ende vom Flash. das ist dann auch garantiert unique, da ich 
nur 6 Bytes von der ID verwende.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.