/*
 * main.c
 *
 *  Created on: 20211229
 *      Author: xiaomeige
 */


//#include "stdio.h"
//#include "xil_io.h"
//#include "xgpiops_hw.h"
//#include "unistd.h"
//#include "stdint.h"
//
//#include "xil_types.h"
//int main(void)
//{
//		u32 reg_val = 0;
//		u32 Data = 0;
//
//		uint32_t i = 100;
//
//		//IObit7ķΪ
//		reg_val = Xil_In32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_DIRM_OFFSET);
//		Data = reg_val | (1<<7);
//		Xil_Out32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_DIRM_OFFSET, Data);
//
//		//ʹܣbit7ʹ
//		reg_val = Xil_In32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_OUTEN_OFFSET);
//		Data = reg_val | (1<<7);
//		Xil_Out32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_OUTEN_OFFSET, Data);
//
//		while(i)
//		{
//			//bit71
//			Data = ((~(1<<7)) << 16) | (1<<7);
//			Xil_Out32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_DATA_LSW_OFFSET,  Data);
//			usleep(500000);
//
//			//bit70
//			Data = ((~(1<<7)) << 16) & (~(1<<7));
//			Xil_Out32(XPAR_PS7_GPIO_0_BASEADDR + XGPIOPS_DATA_LSW_OFFSET,  Data);
//			usleep(500000);
//			i--;
//		}
//}


//#include "xgpiops.h"
//#include "unistd.h"
//
//XGpioPs Gpio;
//XGpioPs_Config *ConfigPtr;
//uint32_t i=0;
//
//int main(void)
//{
//
//
//	ConfigPtr = XGpioPs_LookupConfig(XPAR_PS7_GPIO_0_DEVICE_ID);
//	XGpioPs_CfgInitialize(&Gpio, ConfigPtr, ConfigPtr->BaseAddr);
//
//
//	XGpioPs_SetDirectionPin(&Gpio, 7, 1);
//	XGpioPs_SetOutputEnablePin(&Gpio, 7, 1);
//
//	/*MIO47Ϊ*/
//	XGpioPs_SetDirectionPin(&Gpio, 47, 0);
//	XGpioPs_SetOutputEnablePin(&Gpio, 47, 0);
//
//	while(1)
//	{
//		while(!XGpioPs_ReadPin(&Gpio, 47))
//		{
//			//bit71
//			XGpioPs_WritePin(&Gpio, 7, 0x1);
//			usleep(500000);
//
//			//bit70
//			XGpioPs_WritePin(&Gpio, 7, 0x0);
//			usleep(500000);
//			i = 3;
//		}
//
//		while(i)
//		{
//			//bit71
//			XGpioPs_WritePin(&Gpio, 7, 0x1);
//			usleep(500000);
//
//			//bit70
//			XGpioPs_WritePin(&Gpio, 7, 0x0);
//			usleep(500000);
//			uint32_t i = i;
//			i = i - 1;
//		}
//
//		//bit70
//		XGpioPs_WritePin(&Gpio, 7, 0x0);
//	}
//
//
//
//	return 0;
//}



#include "xparameters_ps.h"
#include "xil_io.h"
#define DDR_BASEARDDR      XPAR_DDR_MEM_BASEADDR + 0x10000000

int main()
{
    int i;

    for(i=0; i<32; i++)
    {
        Xil_Out32(DDR_BASEARDDR+i*4,i);
    }

    for(i=0; i<32; i++)
    {
        rev = Xil_In32(DDR_BASEARDDR+i*4);
    }

    return 0;
}
