-
-
Interrupt-Deklaration
Hallo,
ich komme da gerade mit einigen Deklarationen für die Interrupt-Programmierung durcheinander.
Listing 1 ist kallisch nach Bascom-Hilfe oder Wiki.
Listing 2 ist eine Methode nach Hauptthema 3 der Buches "AVR Mikrocontroller Lehrbuch" von R. Walter.
Listing 1:
Config Int0 = Low Level ‘Configuriere Int0 auf Low Level
Enable Interrupts ‘Einschalten der Interrupts
Enable Int0 ‘Einschalten von Interrupt Int0
Listing 2:
Mcucr = &B0000000 'INT0 bei L-Pegel
Gicr = &B01000000 'Interrupts INT0 einschalten
Sreg.7=1 ' Interups global freigeben
Scheint bei beiden Listings das gleiche Ergebnis zu sein oder?
Was ist besser, effektiver, schlechter....?
DANKE!
Wolfram
-
Erfahrener Benutzer
Fleißiges Mitglied
Bei Listung 1 nimmt Bascom die Registernamen aus der m32def.dat (bzw. Dein Atmega) und baut sich daraus Listing 2 auf.
Leider geht das manchmal schief, so dass Listing 2 der sichere Weg ist.
-
-
Erfahrener Benutzer
Robotik Einstein
Hallo,
ich würde aber trotzdem die Version von Listing 1 verwenden,
denn wenns mal für einen anderen AVR sein soll, kanns sein, das die Register ein wenig anders heissen, und dann klappt das nicht mit dem Compilieren.
Ist dann mehr Arbeit diese ganzen Register wieder zu suchen und den Code zu ändern !
Wenns schon so schöne Befehle in Bascom dafür gibt, warum nicht diese auch verwenden, oder soll das der erste Schritt (Step) zu ASM sein ?
-
Hallo,
auch ein Aspekt - vielen Dank!
Dann werde ich mal weiter mit Bascom (will nicht auf ASM) deklarieren!
Besten Dank!
Wolfram
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen