Hallo, ich sammle gerade meine ersten Erfahrungen mit AVR und habe folgende Frage(n): Wie muß man die Lock-/Fuse-bits setzen, damit der Endanwender auch nachträglich seine persönlichen anwendungsspezifischen Daten (z.B. Sensorkennlinie) im EEPROM auslesen und reinschreiben kann, aber den Inhalt des Flash-ROM nicht auslesen kann? Mit anderen Worten: der Endanwender soll zwar ins EEPROM schreiben dürfen was er will, darf aber den Flash-Code nicht lesen. Geht das mit einem ATTiny13 oder mit einem anderen AVR? Gruß
Ganz normal das LOCK Bit setzen. Den Zugriff aufs EEProm realisiere ich immer via Flash-Programm. Also ich sende Daten an den µC via UART; werte diese mit Std. Programm aus und schreibe Resulate respektive Werte in den EEPROM. Somit können auch u.a. unterschiedliche Nutzerebenen recht einfach realisiert werden.
Gute Idee. So würde ich das auch machen, wenn der ATTiny13 einen UART hätte. Deshalb nochmal die Frage: kann man das Lesen und Schreiben von EEPROM vom Lesen und Schreiben des FLASH trennen? Gruß
Wozu denn UART? Wenn du es dem User erlauben willst, das Zeugs über SPI auszulesen und reinzuschreiben, dann kannst du auch gleich das SPI-Interface dazu nutzen. Hat dann auch den Vorteil, dass du dein Übertragungsprotokoll so gestalten kannst wie du willst und nicht auf ein fertiges Programmier-Programm zurückgreifen, bzw. selbst eins schreiben musst. Ansonsten gibt es meines Wissens keine Möglichkeit, sowas zu tun.
Danke für die Beiträge. Ist es beim AVR ATTiny13 denn nicht so, daß sowohl das Flashen des ROMs als auch das "Beschreiben" des EEPROM von außen mit irgendwelchen Tools entweder nur zusammen geht oder gar nicht? Ist es nicht so, daß wenn man die Möglichkeit des nachträglichen EEPROM Beschreibens offen hält, auch die Möglichkeit des Flashens und des Verifizieren des ROMs gegeben ist? Helft mir mal auf die Sprünge, ich blicke da nicht durch.
Auch Crosspromotion ersetzt das Lesen und Verstehen der Antworten nicht: http://www.mikrocontroller.net/forum/read-1-367656.html Du sperrst beides ueber den "normalen" Weg, implementierst aber eine Art SPI-Bootloader, mit der du es anderen ermoeglichst, das EEPROM zu beschreiben. Das Protokoll und die Software ist deine Eigene.
@Bjoern Mueller Daß es keinen Ersatz für Lesen und Verstehen gibt weiß ich bereits seit einer Weile. Von daher wäre diese Bemerkung nicht nötig gewesen. Ich stehe eben erst ganz am Anfang mit dem Thema AVR... - Wo gibt es was zum Thema Implementierung eines SPI-Bootloaders zu lesen? Gibt es eine Einführung in die SPI-Schnittstelle? - Hat jemand so was schon mal beispielhaft durchgeführt? Gibt es Codebeispiele? - Wieviel ROM-Ressourcen müßte man für einen SPI-Bootloader veranschlagen? Gibt es da eine minimal Lösung? Die kleinen ATTinys habe ja nur 1K. Danke im Vorraus für Eure Beiträge.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.