Softwarereset beim Atmel

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 03 10 2024  11:13:15      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
Softwarereset beim Atmel

    







BID = 108248

Midnight

Stammposter



Beiträge: 256
 

  


Hallo,

ich habe ein kleines Problem....
Ich habe einen AtMega32 den ich unter Bascom programmiert habe.
Um Rechenleistung zu sparen habe ich über nen OP als Komparator ne Betriebsspannungsüberwachung die die schon deutlich über der Dropspannung des Spannungsreglers den INT0 auslöst, und per Interruptroutine eine Warnung ausgiebt und auch wartet bis der Fehler weg ist.
Nun mein Problem, ich kann natürlich nicht bestimmen wann die Betriebsspannung sinkt und damit auch nicht festlegen wann der Interrupt ausgelöst wird.
Leider sind einige Routinen unter Bascom scheinbar ziemlich empfindlich für Interrupts (ATAN2 z.B. mag nicht unterbrochen werden).
Ich möchte aber sicherstellen das nach dem Fehler alles sofort wieder korrekt läuft.
Bis jetzt behelfe ich mir damit, da der Watchdog eh läuft, ich den wieder am Ende der Interruptroutine starte und per Warteschleife einen Reset abwarte.
Finde ich aber unschön, kann man nicht irgendwie nen Reset Softwaremäßig auslösen?

Gruß

Simon

BID = 108280

Jornbyte

Moderator



Beiträge: 7148

 

  

Springe an den Anfang des Programm's, das ist auch ein Reset.

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.

BID = 109916

Midnight

Stammposter



Beiträge: 256

Wenn ich an den Anfang des Programmes springe, wie siehts dann mit ggf. gesetzten Ports oder Flags aus?
Wenn ich ihn durch den Deklarationsteil laufen lasse ist dann auch alles wieder im Ursprungszustand wie bei nem Reset, oder kann es sein, das Bits unkontrolliert gesetzt bleiben?

Gruß

Simon

BID = 109923

Benedikt

Inventar

Beiträge: 6241

Es kann durchaus sein, dass irgendwelche Flags gesetzt bleiben, wenn du nicht wirklich alles neu setzt.
Der ATMega hat doch eine Brown Out Detection. Sinkt die Spannung unter irgendwas um die 4,5V oder 2,7V (je nach BOD Level) dann wird ein Hardware Reset gemacht, also kannst du dir den ganzen Aufwand leicht sparen.

BID = 109937

Midnight

Stammposter



Beiträge: 256

@Benedikt:
Der Atmega ist nicht das Einzige was in der Schaltung mit Spannung versorgt wird. Es gibt auch noch einen 12V Teil , der auch überwacht werden muß um die Funktionssicherheit zu gewährleisten.
Ich muß schon deutlich über 5V Eingangsspannung nen Alarm haben.
Wenn der Atmega nicht mehr läuft kann ich auch keinen Alarm mehr ausgeben

Gruß

Simon

BID = 110114

Benedikt

Inventar

Beiträge: 6241

Dann häng doch Reset an einen Pin, externer Pullup und einfach den Pin per Software an Masse, fertig ist der Reset.

BID = 110321

Midnight

Stammposter



Beiträge: 256

Genau so eine simple Lösung meinte ich

Thanx

Simon


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 19 Beiträge im Durchschnitt pro Tag       heute wurden bisher 1 Beiträge verfasst
© x sparkkelsputz        Besucher : 182116707   Heute : 1874    Gestern : 5910    Online : 569        3.10.2024    11:13
10 Besucher in den letzten 60 Sekunden        alle 6.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0228130817413