iicps
Vitis Drivers API Documentation
|
This example can run on zynqmp / versal platform evaluation board and IIC controller configured master in interrupt-driven mode and Aardvark Analyzer used as slave.
It sends 18 buffers of data to slave and expects to receive the same data through the IIC using the Aardvark test hardware.
MODIFICATION HISTORY:
Ver Who Date Changes
1.00a jz 01/30/10 First release 3.18 gm 07/14/23 Added SDT support.
Functions | |
int | IicPsMasterIntrExample (u16 DeviceId) |
This function does a minimal test on the Iic device and driver as a design example. More... | |
void | Handler (void *CallBackRef, u32 Event) |
This function is the handler which performs processing to handle data events from the IIC. More... | |
int | main (void) |
Main function to call the example. More... | |
void Handler | ( | void * | CallBackRef, |
u32 | Event | ||
) |
This function is the handler which performs processing to handle data events from the IIC.
It is called from an interrupt context such that the amount of processing performed should be minimized.
This handler provides an example of how to handle data for the IIC and is application specific.
CallBackRef | contains a callback reference from the driver, in this case it is the instance pointer for the IIC driver. |
Event | contains the specific kind of event that has occurred. |
References Handler(), TotalErrorCount, XIICPS_EVENT_COMPLETE_RECV, XIICPS_EVENT_COMPLETE_SEND, and XIICPS_EVENT_SLAVE_RDY.
Referenced by Handler(), IicPsMasterIntrExample(), IicPsMultiMasterIntrExample(), IicPsSlaveIntrExample(), IicPsSmbusSlaveIntrExample(), and XIicPsSmbusMasterIntrExample().
int IicPsMasterIntrExample | ( | u16 | DeviceId | ) |
This function does a minimal test on the Iic device and driver as a design example.
The purpose of this function is to illustrate how to use the XIicPs driver.
This function sends data and expects to receive the same data through the IIC using the Aardvark test hardware.
This function uses interrupt driver mode of the IIC.
DeviceId | is the Device ID of the IicPs Device and is the XPAR_<IICPS_instance>_DEVICE_ID value from xparameters.h |
This function contains an infinite loop such that if interrupts are not working it may never return.
References XIicPs_Config::BaseAddress, Handler(), TotalErrorCount, XIicPs_BusIsBusy(), XIicPs_CfgInitialize(), XIicPs_LookupConfig(), XIicPs_MasterInterruptHandler(), XIicPs_MasterRecv(), XIicPs_MasterSend(), XIicPs_SelfTest(), XIicPs_SetSClk(), and XIicPs_SetStatusHandler().
Referenced by main().
int main | ( | void | ) |
Main function to call the example.
References IicPsMasterIntrExample().