AVR LockBits wärend Laufzeit lesen

Alex W. wrote:
> ich suche nach einer Möglichkeit die LockBits des AVR ...

Falls Du es noch nicht gemerkt haben solltest, Atmel stellt nicht nur 
einen AVR her.

Z.B. der ATtiny26 ist ein AVR und bei dem kann man die Lockbits nur mit 
einem Programmer auslesen.


Peter
Alex W. wrote:
> Ich würde es für ATMega8, ATMega32 und ATMega128 brauchen!
>
> Laut Datasheet kann man die LockBits LB1 und LB2 auslesen, aber ich hab
> keine Ahnung wie!

für den Mega32, Zitat aus Datenblatt:

It is possible to read both the Fuse and Lock bits from software. To 
read the Lock bits, load the Z-pointer with $0001 and set the BLBSET and 
SPMEN bits in SPMCR. When an LPM instruction is executed within three 
CPU cycles after the BLBSET and SPMEN bits are set in SPMCR, the value 
of the Lock bits will be loaded in the destination register. The BLBSET 
and SPMEN bits will auto-clear upon completion of reading the Lock bits 
or if no LPM instruction is executed within three CPU cycles or no SPM 
instruction is executed within four CPU cycles. When BLBSET and SPMEN 
are cleared, LPM will work as described in the Instruction set Manual.

sowas meinst du doch?
Moderator Persönliche Seite
Alex W. wrote:
> Ich würde es für ATMega8, ATMega32 und ATMega128 brauchen!

Die können es alle.

> Laut Datasheet kann man die LockBits LB1 und LB2 auslesen, aber ich hab
> keine Ahnung wie!

Steht doch im Datenblatt, unter "Self-Programming the Flash" ->
"Reading the Fuse and Lock Bits from Software".  Was genau verstehst
du daran nicht?
OP
Justus Skorps wrote:
> Alex W. wrote:
>> Ich würde es für ATMega8, ATMega32 und ATMega128 brauchen!
>>
>> Laut Datasheet kann man die LockBits LB1 und LB2 auslesen, aber ich hab
>> keine Ahnung wie!
>
> für den Mega32, Zitat aus Datenblatt:
>
> It is possible to read both the Fuse and Lock bits from software. To
> ...
>
> sowas meinst du doch?

Genau! Nur muss ich ja diesen z-Pointer in ein Register laden (glaub ich 
zumindest) um ihn zu vergleichen mit ist/soll! Nur habe ich keine Ahnung 
wie der ASM-Befehl dazu heist (ich glaub nicht das Bascom einen Befehl 
direkt dafür hat) und hab deshalb nach nem codeschnipsel in asm gefragt.
Gast
ASM ist etwas mehr als ein Codeschnipsel. So hat's keinen Sinn. Und ASM 
mit ner anderen Sprache mischen ist auch so eine Sache. Dazu sollte man 
das Manula zu dieser Sprache konsultieren. Nennt sich Inline Assembler. 
Zuerst sollte man sich allerding das ASM Instruction Code Manual der AVR 
zufuehren. Es sit unter den Dokumenten zu finden, nicht unter 
Datenblaettern.
Moderator Persönliche Seite
Wenn du nicht einmal weißt, was der Z-Zeiger bei einem AVR ist, dann
bist du offenbar noch nicht einmal an der Beschreibung des CPU-Kerns,
die sich in jedem Datenblatt befindet, vorbei gekommen.  Damit streite
ich dir jegliche Fähigkeiten ab, das Teil erfolgreich in Assembler
programmieren zu können.

Willst du das Teil mit AVR-GCC in C progammieren?  Dann sieh dir
bitte die Doku zu <avr/boot.h> an:

http://www.nongnu.org/avr-libc/user-manual/group__avr__boot.html

dort insbesondere die Funktion boot_lock_fuse_bits_get().
Alex W. wrote:
> eigendlich suche ich in bascom nur nach ner möglichkeit abzufragen ob
> die lockbits so gesetzt sind wie ich das will, ohne mich durch ein
> haufen daten wühlen zu müssen.

Dann frag doch bei Bascom direkt nach, dort im Forum, als 
Feature-Request o.Ä..
Was ich sonst so von Bascom gelesen hab, sind die recht fix neue 
Funktionen/Libraries einzubauen, wenn Sie gebraucht werden.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.