Hallo, Ich lese gerae das Datenblatt vom samd20x. Was ist der unterschied zwischen events und interrupts? Ich möchte eigentlich nur einen Counter hochzählen lassen und "gelegentlich" per polling den status abfragen. Bim Atmega gab es dafür eine statusregister aber beim samd20x offenbar auch noch event register.
timi16 schrieb: > Ich lese gerae das Datenblatt vom samd20x. Soso und du schaffst es nichtmal einen link auf das fragliche Dokument zu setzen, willst es dir aber vom Dritten vorlesen lassen...
Verzeih mir, sehr unhöflich von mir :) S.430 sind die TC 8bit Register aufgeführt: https://ww1.microchip.com/downloads/en/DeviceDoc/atmel-42129-sam-d20_summary.pdf
Ich habe bei anderen Forenbeiträgen gelesen, dass beim ARM Events genutzt werden um andere Peripherien über bestimmte ereignisse in kenntnis zu setzen, ohne das man eine handlerroutine bräuchte oder status/event bits pollt. Ganz anders bei interrupts, hier muss man als selbst aktiv werden in form von abpollen oder interrupt_handler. Beispiel: der ADC soll ab so und so viel counts einmal einen Wert generieren.
timi16 schrieb: > Was ist der unterschied zwischen events und interrupts? Nun, was die Autoren der Doku zum SAMD20... darunter vestehen, kann man nur durch Nachlesen (eventuell) vestehen. Aber: Allgemein wird als 'interrupt' ein Ereignis verstanden, das den Prozessor aus seinem normalen Ablauf holt, ihn also im Programmablauf unterbricht. Beispiel: Sendepuffer des UART ist leer oder grad leer geworden. Unter einem 'event' versteht man (schlampigerweise) eine Botschaft, die rein softwaremäßig ausgewertet werden kann - oder auch nicht, wenn das Programm dazu keine Lust hat. Beispiel: die Software-Uhr meldet, daß gerade eine Sekunde um ist. W.S.
W.S. schrieb: > Unter einem 'event' versteht man (schlampigerweise) eine Botschaft, die > rein softwaremäßig ausgewertet werden kann - oder auch nicht, wenn das > Programm dazu keine Lust hat. Beispiel: die Software-Uhr meldet, daß > gerade eine Sekunde um ist. Darum geht es hier aber nicht. Es geht um das Hardware Eventsystem eines SAMd20x. Und dort sind die Events Hardwaremeldungen an andere Hardwareeinheiten, ohne daß die CPU da was tun muss (außer vorher richtig konfigurieren). Interrupt: Hardware meldet ein Ereignis an die CPU Event: Hardware meldet Ereignis an andere Hardware, im Ausnahmefall auch CPU. Einfaches Beispiel. Ein Quadraturdekoder für Drehgeber erkennt einen Schritt in Richtung + und meldet das an einen Zähler, der dann automatisch +1 zählt. Dito bei -1.
:
Bearbeitet durch User
> Unterschied event und interrupt
22. Event System (EVSYS)
22.1 Overview
The Event System (EVSYS) allows autonomous, low-latency and configurable
communication between peripherals.
Communication is made without CPU intervention and without consuming
system resources such as bus or RAM bandwidth. This reduces the load on
the CPU and other system resources, compared to a traditional
interrupt-based system.
timi16 schrieb: > Hallo, > Ich lese gerae das Datenblatt vom samd20x. > Was ist der unterschied zwischen events und interrupts? > Ich möchte eigentlich nur einen Counter hochzählen lassen und > "gelegentlich" per polling den status abfragen. Bim Atmega gab es dafür > eine statusregister aber beim samd20x offenbar auch noch event register. Wie die Vorschreiber geschrieben haben: Ein Interrupt (wenn aktiviert) bewirkt eine Unterbrechung des Programmablaufes aufgrund eines Ereignisses und man wird automatisch an eine andere Programmstelle katapultiert. Dort macht man dann das was aufgrund des Ereignisses notwendig ist, und kommt dann "automatisch" an die ursprüngliche Programmstelle zurück. Events sind im Atmel/Microchip Universum etwas anderes. Damit können Hardwareeinheiten im µC Stati austauschen und unabhängig von Software Aktionen starten (wenn so konfiguriert). So kann (keine Ahnung ob dieses Beispiel beim samd20x geht, aber zur Veranschaulichung) z.B. das Wackeln eines Pins eine AD-Wandlung auslösen oder das Auslösen des Komparators beendet einen PWM-Takt im Timer "auserhalb der Reihe vorzeitig". Mit Events kann man sehr elegant wiederkehrende I/O Aufgaben in Hardware gießen. Gruß Robert
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.