Hallo, ich plane in meinem Controller(ATMega 32) einen Ram-Test zu verwenden. Ich gehe folgendermaßen vor: 1. Sichere das Byte an erster RAM Adresse 2. Schreibe das Pattern 0x55 ins RAM 3. Lese dieses Pattern wieder aus dem RAM und prüfe auf gleichheit 4. Schreibe das Pattern 0xAA ins RAM 5. Lese dieses Pattern wieder aus dem RAM und prüfe auf gleichheit 6. Stelle ursprünglichen RAM Inhalt wieder her Dieser Test wird in assembler codiert. Bevor ich die Assembler Routine aus meinem C-Code ausführe disable ich die Interrupts und stelle sie anschließend wieder her. Was passiert aber nun wenn genau ind er Zeit des RAM-Tests ein Interrupt z.B. von einem Timer ausgelöst wird. Wird dieser Interrupt gepuffert oder ist der dann verloren? Markus
>Wird dieser Interrupt gepuffert
ja.
Wozu man einen RAM-Test braucht, ist mir ehrlich gesagt völlig
schleierhaft.
Hi >ich plane in meinem Controller(ATMega 32) einen Ram-Test zu verwenden. Wozu? >2. Schreibe das Pattern 0x55 ins RAM >3. Lese dieses Pattern wieder aus dem RAM und prüfe auf gleichheit >4. Schreibe das Pattern 0xAA ins RAM Etwa genau so sinnvoll wie kein Test. Dauert nur länger. >Was passiert aber nun wenn genau ind er Zeit des RAM-Tests ein Interrupt >z.B. von einem Timer ausgelöst wird. Wird dieser Interrupt gepuffert... Ein Interrupt (pro Quelle) wird gespeichert. Mehrere gehen verloren. MfG Spess
Bzgl. RAM-Test und anderer Prüfungen gibt es bei Atmel eine Application Note. Schaue dort einmal nach. Wozu wird ein RAM Test überhaubt gebraucht ? Hier fällt mir sofort folgendes ein, soll eine Software nach CLASS B (Z.B. EN 60335) erstellt werden, so sind zyklische Tests von RAM und andere µC Komponeneten zwingend erforderlich. NEC , Renesas , ST und andere (evtl. auch Atmel) bieten hierfür sogar kostenfrei (zertifizierte!) Bibliotheken an)
Hi >Hier fällt mir sofort folgendes ein, soll eine Software nach CLASS B >(Z.B. EN 60335) erstellt werden,... Das lässt sich auf Grund der Fragestellung ausschliessen. MfG spess
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.