0

SDK の C プログラムでタイマーを使用する必要があります。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;

プログラムをデバッグするとハングアップし、結果が得られません。タイマーの使い方は?

4

1 に答える 1

0

タイマーを使用する前に、タイマーを初期化する必要があります。

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);
...
于 2015-05-13T01:06:44.793 に答える