DISABLE/de
(→See also) |
(→Remarks) |
||
Line 15: | Line 15: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | = <span class="f_Header"> | + | = <span class="f_Header">Anmerkungen</span> = |
<div style="padding: 0px; margin: 0px 0px 0px 4px;"> | <div style="padding: 0px; margin: 0px 0px 0px 4px;"> | ||
{| width="512" cellspacing="0" cellpadding="1" border="1" style="border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;" | {| width="512" cellspacing="0" cellpadding="1" border="1" style="border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;" | ||
Line 23: | Line 23: | ||
| valign="top" width="58%" bgcolor="#ffffb2" style="width: 276px; background-color: rgb(255, 255, 178); border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" bgcolor="#ffffb2" style="width: 276px; background-color: rgb(255, 255, 178); border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Beschreibung | |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 30: | Line 30: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Externer Interrupt 0 | |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 37: | Line 37: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Externer Interrupt 1 | |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 44: | Line 44: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | TIMER0 | + | TIMER0 Überlauf Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 55: | Line 55: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | TIMER1 | + | TIMER1 Überlauf Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 62: | Line 62: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | INPUT CAPTURE TIMER1 | + | INPUT CAPTURE TIMER1 Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 69: | Line 69: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | TIMER1 OUTPUT COMPARE A | + | TIMER1 OUTPUT COMPARE A Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 76: | Line 76: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | TIMER1 OUTPUT COMPARE B | + | TIMER1 OUTPUT COMPARE B Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 83: | Line 83: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | SPI | + | SPI Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 90: | Line 90: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | Serial RX complete | + | Serial RX complete Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 97: | Line 97: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | Serial data register empty | + | Serial data register empty Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 104: | Line 104: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | Serial TX complete | + | Serial TX complete Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 111: | Line 111: | ||
| valign="top" width="58%" style="width: 276px; height: 16px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; height: 16px; border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Sperrt URXC, UDRE und UTXC | |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 118: | Line 118: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | Analog comparator | + | Analog comparator Interrupt |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 125: | Line 125: | ||
| valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="58%" style="width: 276px; border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Analog/Digital Converter Interrupt | |
|} | |} | ||
Line 131: | Line 131: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Standardmäßig sind alle Interrupts gesperrt (disabled). | |
− | + | Um ALLE Interrupts zu sperren geben Sie INTERRUPTS an. | |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Um das Freigeben und Sperren einzelner Interrupts zu ermöglichen geben Sie ENABLE INTERRUPTS an. | |
− | + | Das ENABLE INTERRUPTS funktioniert wie ein Hauptschalter. Es muss enabled/gesetzt sein um das Funktionieren einzelner Interrupts zu ermöglichen. | |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Es ist anhängig vom Mikrocontroller welche Interrupts verfügbar sind. Die verfügbaren Interrupts werden automatisch im BASCOM-Editor angezeigt. | |
| | ||
Line 149: | Line 149: | ||
| | ||
− | [[File:Notice.jpg|left|Notice.jpg]] | + | [[File:Notice.jpg|left|Notice.jpg]] Um JTAG zu sperren kann man DISABLED JTAG schreiben. JTAG ist kein interrupt sondern ein Device. |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> |
Revision as of 00:42, 12 March 2013
Contents |
Funktion
Sperrt den angegebenen Interrupt.
Syntax
DISABLE interrupt [device]
Anmerkungen
Interrupt |
Beschreibung |
INT0 |
Externer Interrupt 0 |
INT1 |
Externer Interrupt 1 |
OVF0,TIMER0, COUNTER0 |
TIMER0 Überlauf Interrupt |
OVF1,TIMER1,
COUNTER1 |
TIMER1 Überlauf Interrupt |
CAPTURE1, ICP1 |
INPUT CAPTURE TIMER1 Interrupt |
COMPARE1A,OC1A |
TIMER1 OUTPUT COMPARE A Interrupt |
COMPARE1B,OC1B |
TIMER1 OUTPUT COMPARE B Interrupt |
SPI |
SPI Interrupt |
URXC |
Serial RX complete Interrupt |
UDRE |
Serial data register empty Interrupt |
UTXC |
Serial TX complete Interrupt |
SERIAL |
Sperrt URXC, UDRE und UTXC |
ACI |
Analog comparator Interrupt |
ADC |
Analog/Digital Converter Interrupt |
Standardmäßig sind alle Interrupts gesperrt (disabled).
Um ALLE Interrupts zu sperren geben Sie INTERRUPTS an.
Um das Freigeben und Sperren einzelner Interrupts zu ermöglichen geben Sie ENABLE INTERRUPTS an.
Das ENABLE INTERRUPTS funktioniert wie ein Hauptschalter. Es muss enabled/gesetzt sein um das Funktionieren einzelner Interrupts zu ermöglichen.
Es ist anhängig vom Mikrocontroller welche Interrupts verfügbar sind. Die verfügbaren Interrupts werden automatisch im BASCOM-Editor angezeigt.
Um JTAG zu sperren kann man DISABLED JTAG schreiben. JTAG ist kein interrupt sondern ein Device.
Siehe auch
Example
'----------------------------------------------------------------------------------------- 'name : serint.bas 'copyright : (c) 1995-2005, MCS Electronics 'purpose : serial interrupt example for AVR 'micro : 90S8535 'suited for demo : yes 'commercial addon needed : no '----------------------------------------------------------------------------------------- $regfile = "8535def.dat" ' specify the used micro $crystal = 4000000 ' used crystal frequency $baud = 19200 ' use baud rate $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default use 10 for the SW stack $framesize = 40 ' default use 40 for the frame space Const Cmaxchar = 20 'number of characters Dim B As Bit 'a flag for signalling a received character Dim Bc As Byte 'byte counter Dim Buf As String * Cmaxchar 'serial buffer Dim D As Byte 'Buf = Space(20) 'unremark line above for the MID() function in the ISR 'we need to fill the buffer with spaces otherwise it will contain garbage Print "Start" On Urxc Rec_isr 'define serial receive ISR Enable Urxc 'enable receive isr Enable Interrupts 'enable interrupts to occur Do If B = 1 Then 'we received something Disable Serial Print Buf 'print buffer Print Bc 'print character counter 'now check for buffer full If Bc = Cmaxchar Then 'buffer full Buf = "" 'clear Bc = 0 'rest character counter End If Reset B 'reset receive flag Enable Serial End If Loop Rec_isr: Print "*" If Bc < Cmaxchar Then 'does it fit into the buffer? Incr Bc 'increase buffer counter If Udr = 13 Then 'return? Buf = Buf + Chr(0) Bc = Cmaxchar Else Buf = Buf + Chr(udr) 'add to buffer End If ' Mid(buf , Bc , 1) = Udr 'unremark line above and remark the line with Chr() to place 'the character into a certain position 'B = 1 'set flag End If B = 1 'set flag Return
Languages | English • Deutsch |
---|