forked from ROMEO/obsw
Added can test code
This commit is contained in:
@ -110,7 +110,7 @@ int canps_poll_example(void)
|
||||
*/
|
||||
|
||||
Status = CanPsPolledExample(&Can, XPAR_XCANPS_0_BASEADDR);
|
||||
|
||||
xil_printf("114 \r\n");
|
||||
if (Status != XST_SUCCESS) {
|
||||
xil_printf("CAN Polled Mode Test Failed\r\n");
|
||||
return XST_FAILURE;
|
||||
@ -149,16 +149,24 @@ int CanPsPolledExample(XCanPs *CanInstancePtr, UINTPTR BaseAddress)
|
||||
/*
|
||||
* Initialize the Can device.
|
||||
*/
|
||||
|
||||
xil_printf("Initialize the Can device.\r\n");
|
||||
xil_printf("BaseAdress 0x%p\r\n", BaseAddress);
|
||||
|
||||
ConfigPtr = XCanPs_LookupConfig(BaseAddress);
|
||||
|
||||
if (CanInstPtr == NULL) {
|
||||
|
||||
xil_printf("NULL\r\n");
|
||||
|
||||
return XST_FAILURE;
|
||||
}
|
||||
|
||||
xil_printf("Status = XCanPs_CfgInitialize()\r\n");
|
||||
Status = XCanPs_CfgInitialize(CanInstPtr,
|
||||
ConfigPtr,
|
||||
ConfigPtr->BaseAddr);
|
||||
if (Status != XST_SUCCESS) {
|
||||
xil_printf("Status != XST_SUCCESS\r\n");
|
||||
return XST_FAILURE;
|
||||
}
|
||||
|
||||
@ -176,12 +184,15 @@ int CanPsPolledExample(XCanPs *CanInstancePtr, UINTPTR BaseAddress)
|
||||
* Register (BRPR) and Bit Timing Register (BTR).
|
||||
*/
|
||||
XCanPs_EnterMode(CanInstPtr, XCANPS_MODE_CONFIG);
|
||||
xil_printf("ENTER MODE\r\n");
|
||||
while (XCanPs_GetMode(CanInstPtr) != XCANPS_MODE_CONFIG);
|
||||
|
||||
/*
|
||||
* Setup Baud Rate Prescaler Register (BRPR) and
|
||||
* Bit Timing Register (BTR).
|
||||
*/
|
||||
|
||||
xil_printf("Setup Baud Rate Prescaler Register (BRPR) and Bit Timing Register (BTR).\r\n");
|
||||
|
||||
XCanPs_SetBaudRatePrescaler(CanInstPtr, TEST_BRPR_BAUD_PRESCALAR);
|
||||
XCanPs_SetBitTiming(CanInstPtr, TEST_BTR_SYNCJUMPWIDTH,
|
||||
TEST_BTR_SECOND_TIMESEGMENT,
|
||||
@ -191,6 +202,7 @@ int CanPsPolledExample(XCanPs *CanInstancePtr, UINTPTR BaseAddress)
|
||||
/*
|
||||
* Enter Loop Back Mode.
|
||||
*/
|
||||
xil_printf("Enter Loop Back Mode\r\n");
|
||||
XCanPs_EnterMode(CanInstPtr, XCANPS_MODE_LOOPBACK);
|
||||
while (XCanPs_GetMode(CanInstPtr) != XCANPS_MODE_LOOPBACK);
|
||||
|
||||
@ -198,6 +210,8 @@ int CanPsPolledExample(XCanPs *CanInstancePtr, UINTPTR BaseAddress)
|
||||
* Send a frame, receive the frame via the loop back and verify its
|
||||
* contents.
|
||||
*/
|
||||
|
||||
xil_printf("Send a frame, receive the frame via the loop back and verify its contents.\r\n");
|
||||
Status = SendFrame(CanInstPtr);
|
||||
if (Status != XST_SUCCESS) {
|
||||
return Status;
|
||||
|
Reference in New Issue
Block a user