Download ThreadX User Guide
Transcript
Interrupts 97 processor saves a small portion of the current execution on the stack and transfers control to the appropriate interrupt vector. The interrupt vector is basically just the address of the routine responsible for handling the specific type interrupt. The exact interrupt handling procedure is processor specific. Interrupt Control The tx_interrupt_control service allows applications to enable and disable interrupts. The previous interrupt enable/disable posture is returned by this service. It is important to mention that interrupt control only affects the currently executing program segment. For example, if a thread disables interrupts, they only remain disabled during execution of that thread. ! ThreadX Managed Interrupts A Non-Maskable Interrupt (NMI) is an interrupt that cannot be disabled by the hardware. Such an interrupt may be used by ThreadX applications. However, the application’s NMI handling routine is not allowed to use ThreadX context management or any API services. ThreadX provides applications with complete interrupt management. This management includes saving and restoring the context of the interrupted execution. In addition, ThreadX allows certain services to be called from within Interrupt Service Routines (ISRs). The following is a list of ThreadX services allowed from application ISRs: tx_block_allocate tx_block_pool_info_get tx_block_pool_prioritize tx_block_pool_performance_info_get tx_block_pool_performance_system_info_get tx_block_release tx_byte_pool_info_get tx_byte_pool_performance_info_get tx_byte_pool_performance_system_info_get tx_byte_pool_prioritize Express Logic, Inc.