tmrctr
Xilinx SDK Drivers API Documentation
xtmrctr_intr_example.c File Reference

Overview

This file contains a design example using the timer counter driver (XTmCtr) and hardware device using interrupt mode.This example assumes that the interrupt controller is also present as a part of the system.

This file can be used as a standalone example or by the TestAppGen utility to include a test for Timer interrupts.

 MODIFICATION HISTORY:
 Ver   Who  Date         Changes


1.00b jhl 02/13/02 First release 1.00b sv 04/26/05 Minor changes to comply to Doxygen and coding guidelines 1.00b sn 05/09/06 Modified to be used by TestAppGen to include test for interrupts. 2.00a ktn 10/30/09 Updated to use HAL API's and minor changes as per coding guidelines. 2.00a ssb 01/11/01 Updated the example to be used with the SCUGIC in Zynq. 4.2 ms 01/23/17 Added xil_printf statement in main function to ensure that "Successfully ran" and "Failed" strings are available in all examples. This is a fix for CR-965028. 4.5 mus 07/05/18 Updated example to call TmrCtrDisableIntr function with correct arguments. Presently device id is being passed instead of interrupt id. It fixes CR#1006251. 4.5 mus 07/05/18 Fixed checkpatch errors and warnings.

Functions

int TmrCtrIntrExample (INTC *IntcInstancePtr, XTmrCtr *TmrCtrInstancePtr, u16 DeviceId, u16 IntrId, u8 TmrCtrNumber)
 This function does a minimal test on the timer counter device and driver as a design example. More...
 
int main (void)
 This function is the main function of the Tmrctr example using Interrupts. More...
 

Function Documentation

int main ( void  )

This function is the main function of the Tmrctr example using Interrupts.

Parameters
None.
Returns
XST_SUCCESS to indicate success, else XST_FAILURE to indicate a Failure.
Note
None.

References TmrCtrIntrExample().

int TmrCtrIntrExample ( INTC *  IntcInstancePtr,
XTmrCtr TmrCtrInstancePtr,
u16  DeviceId,
u16  IntrId,
u8  TmrCtrNumber 
)

This function does a minimal test on the timer counter device and driver as a design example.

The purpose of this function is to illustrate how to use the XTmrCtr component. It initializes a timer counter and then sets it up in compare mode with auto reload such that a periodic interrupt is generated.

This function uses interrupt driven mode of the timer counter.

Parameters
IntcInstancePtris a pointer to the Interrupt Controller driver Instance
TmrCtrInstancePtris a pointer to the XTmrCtr driver Instance
DeviceIdis the XPAR_<TmrCtr_instance>_DEVICE_ID value from xparameters.h
IntrIdis XPAR_<INTC_instance>_<TmrCtr_instance>_INTERRUPT_INTR value from xparameters.h
TmrCtrNumberis the number of the timer to which this handler is associated with.
Returns
XST_SUCCESS if the Test is successful, otherwise XST_FAILURE
Note
This function contains an infinite loop such that if interrupts are not working it may never return.

References XTmrCtr_Initialize(), XTmrCtr_SelfTest(), XTmrCtr_SetHandler(), XTmrCtr_SetOptions(), XTmrCtr_SetResetValue(), XTmrCtr_Start(), and XTmrCtr_Stop().

Referenced by main().