/*
 * 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;

		//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(1)
		{
			//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);
		}
}
