![]() ZBasic System Library
35
ZBasic Microcontrollers
System Library Routines that May Load ISRs
System Library Routine
ISR for ATtiny/ATmega
ISR for ATxmega
ADCtoCom1()
TIMER#_COMPA
n/a
Com1toDAC()
TIMER#_COMPA
n/a
InputCapture()
TIMER*_CAPT
TIMER*_OVF
TC*_CCA
TC*_OVF
OutputCapture()
TIMER*_COMPB
TC*_CCB
OpenCom()
USART#_RX
USART#_TX
USART#_UDRE
TIMER&_COMPA
USART#_RXC
USART#_TXC
USART#_UDRE
TC&_CCA
OpenX10()
INT*
TIMER$_COMPB
ACA_AC0
TC$_CCB
WaitForInterrupt()
INT#
PCINT#
ANALOG_COMP
PORTx_INT#
ACA_AC0
ACA_AC1
ACA_ACW
ACB_AC0
ACB_AC1
ACB_ACW
In the table above some ISR names (shaded) are given symbolically in the interest of brevity,
representing multiple possible ISR names. The table below describes how to interpret the symbolic ISR
entries.
Key to Symbolic ISR Names
Symbolic ISR Name
Meaning
TIMER#_COMPA
Replace TIMER# with the name of the I/O Timer, e.g. TIMER1.
TIMER*_COMPB
TIMER*_CAPT
TIMER*_OVF
Replace TIMER* with the applicable 16-bit timer name, e.g. TIMER4.
TIMER&_COMPA
Replace TIMER& with the software UART timer name, e.g. TIMER2.
TIMER$_COMPB
Replace TIMER$ with the RTC timer name, e.g. TIMER0.
TC*_CCA
TC*_CCB
TC*_OVF
Replace TC* with the applicable timer name, e.g. TCC0.
TC&_CCA
Replace TC$ with the software UART timer name, e.g. TCC0.
TC$_CCB
Replace TC$ with the RTC timer name, e.g. TCC0.
USART#_RX
USART#_TX
USART#_UDRE
Replace USART# with the applicable UART name, e.g. USART0.
USART#_RXC
USART#_TXC
USART#_UDRE
Replace USART# with the applicable UART name, e.g. USARTC0.
INT#
Replace INT# with the external interrupt name, e.g. INT0.
INT*
Replace INT* with the X-10 zero-crossing interrupt name, e.g. INT0.
PCINT#
Replace PCINT# with the pin change interrupt name, e.g. PCINT0.
PORTx_INT#
Replace PORTx with the applicable port name, e.g. PORTA and replace
INT# with the applicable pin change channel designator, e.g. INT0.
For ZBasic devices having Program Memory in internal Flash Memory, the page size of that memory is an
important value. For example, for an application that writes to Program Memory a buffer of the length of
the page size must be allocated from the heap in order to perform the necessary read-modify-write
operation that is required for updating Flash Memory locations. This is one factor affecting the minimum
|