Как активировать таймер на SDK?
Мне нужно использовать таймер на моей C-программе на SDK. Я использую Atlys Spartan-6 LX45 и пытаюсь использовать этот код:
XTmrCtr TmrCtrInstancePtr;
time1 = XTmrCtr_GetValue(&TmrCtrInstancePtr, 0);
XTmrCtr_Start(&TmrCtrInstancePtr, 0);
//Code
XTmrCtr_Stop(&TmrCtrInstancePtr, 0);
time2 = XTmrCtr_GetValue(&TmrCtrInstancePtr, 0);
time3=time2-time1;
Когда я отлаживаю программу, она зависает, и я не получаю никакого результата. Как использовать таймер?
1 ответ
Вы должны инициализировать свой таймер перед его использованием.
XTmrCtr TmrCtrInstance; /* It's not a pointer, so no ptr suffix... */
if (XTmrCtr_Initialize(&TmrCtrInstance, XPAR_AXI_TIMER_0_DEVICE_ID) != XST_SUCCESS) { /* Your ID may be different */
/* Stop execution */
return;
}
time1 = XTmrCtr_GetValue(&TmrCtrInstance, 0);
...