#include "xtime_l.h" /* Global Timer is always clocked at half of the CPU frequency */ #define COUNTS_PER_SECOND (XPAR_CPU_CORTEXA9_CORE_CLOCK_FREQ_HZ / 2) int main() { XTime tEnd, tCur; u32 tUsed; XTime_GetTime(&tCur); //获取开始时间 sleep(1); // XTime_GetTime(&tEnd)...
#include "xil_printf.h" #include "sleep.h" #define UART_DEVICE_ID XPAR_XUARTPS_0_DEVICE_ID int Uart_Send(XUartPs* Uart_Ps, u8 *sendbuf, int length); int Uart_Init(XUartPs* Uart_Ps, u16 DeviceId); #endif /* SRC_USER_UART_H_ */ user_uart.c文件的代码如下: #include "user...
(&Watchdog, WDT_DEVICE_ID,10); if (Status != XST_SUCCESS) { xil_printf("start the watchdog timer fail!\r\n"); return XST_FAILURE; } while (Count < 5) { sleep(1); Count++; printf("the second is %d \n",Count); } xil_printf("the watchdog timer will restart the system \...
ZYNQ. Interrupt(2)SPI.AXI TIMER Shared Peripheral Interrupts (SPI) SPI 可以接收来自PL的中断,这里使用PL模块 AXI Timer 的中断模式,并连接到CPU. AXI TIMER 定时器,内部有两个完全相同的TIMER模块. 特性: 在手册里可以找到详细的参数和寄存器信息. 硬件系统 需要zynq核和一个AXI Timer,PL的clock可以在zynq核...
MIO:多功能IO接口,属于Zynq的PS部分,在芯片外部有54个引脚。这些引脚可以用在GPIO、SPI、UART、TIMER、Ethernet、USB等功能上,每个引脚都同时具有多种功能,故叫多功能。 EMIO:扩展MIO,依然属于Zynq的PS部分,只是连接到了PL上,再从PL的引脚连到芯片外面实现数据输入输出 ...
sleep(1); xil_printf("Hello World!\r\n"); }returnStatus; } 不过很遗憾,在这段时间基本没这么认真地配置过PS端的串口,基本都用来调试打印了。PL端通过UartLite或者UartNs550相对用的较多一点(因为要用的串口实在是太多了,不论是作为串口服务器还是作为各种交互)算了还是直接代码说话吧 ...
#include "sleep.h" #include "xil_types.h" int main(){ Xil_Out32(XPAR_PWM_AXI_LITE_V1_0_0_BASEADDR,40000000); Xil_Out32(XPAR_PWM_AXI_LITE_V1_0_0_BASEADDR+4,30000000); Xil_Out32(XPAR_PWM_AXI_LITE_V1_0_0_BASEADDR+8,40000000); ...
/* The instance of the UART Driver */int main(void){int Status;u8 sendbuf[] = "Hello World!\r\n";/* 串口初始化 */Status = Uart_Init(&Uart_Ps, UART_DEVICE_ID);if (Status == XST_FAILURE) {xil_printf("Uartps Failed\r\n");return XST_FAILURE;}while (1){sleep(1);Uart_Send...
* Enable the interrupt for the Timer device. */XScuGic_Enable(IntcInstancePtr, XPS_FPGA0_INT_ID);#endif/* XPAR_INTC_0_DEVICE_ID */#ifndefTESTAPP_GEN/* * Initialize the exception table. */Xil_ExceptionInit();/* * Register the interrupt controller handler with the exception table. ...
#include "sleep.h" #include "xil_printf.h" #include "stdio.h" /* * XPAR redefines */ #define DYNCLK_BASEADDR XPAR_AXI_DYNCLK_0_BASEADDR #define VGA_VDMA_ID XPAR_AXIVDMA_0_DEVICE_ID #define DISP_VTC_ID XPAR_VTC_0_DEVICE_ID ...