Gast
#867741
Hallo ich habe folgende Frage an euch: Ich habe einen Mikrocontroller (Mega32) der Hardware ansteuert (Aktoren, Sensoren etc.). Dieser bekommt vom PC über die serielle Schnittstelle Parameter zugeschickt. Der Mikrocontroller (in Assembler programmiert) löst bei Empfang eines Zeichens einen Interrupt aus. In dieser ISR werden Interrupts deaktiviert, der Parameter entgegen genommen, kurz verarbeitet und gespeichert, danach Interrupts wieder aktiviert und die ISR beendet um mit dem Hauptprogramm weiter zu machen. So jetzt kommt die eigentliche Frage: Wenn jetzt in der Zeit der Abarbeitung der ISR weitere Parameter gekommen sind und im Puffer der serielle Schnittstelle hinterlegt wurden, löst der Mikrocontroller dann nach der ISR gleich einen weiteren Interrupt (weil er sieht das im Puffer Daten sind) aus oder muss ich in der ISR solange lesen bis der Puffer leer ist (weil das alleinige vorhanden sein von Daten im Puffer keinen Interrupt auslöst)? Gibt es eine Möglichkeit zu verhindern, dass die ISR unterbrochen wird und trotzdem neue Interrupts angenommen werden können? Vielen Dank im Vorraus