You are on page 1of 1

#include "xparameters.

h"
#include "xgpiops.h"
#include "xstatus.h"
#include "xil_printf.h"
#include "sleep.h"

#define GPIO_DEVICE_ID XPAR_XGPIOPS_0_DEVICE_ID

#define MIOLED0 7 //连接到 MIO7


#define MIOLED1 13 //连接到 MIO13
#define MIOLED2 0 //连接到 MIO0

XGpioPs Gpio; // GPIO 设备的驱动程序实例

int main()
{
int Status;
XGpioPs_Config *ConfigPtr;

print("MIO Test! \n\r");


ConfigPtr = XGpioPs_LookupConfig(GPIO_DEVICE_ID);
Status = XGpioPs_CfgInitialize(&Gpio, ConfigPtr,ConfigPtr->BaseAddr);

if (Status != XST_SUCCESS){
return XST_FAILURE;
}
//设置指定引脚的方向: 0 输入, 1 输出
XGpioPs_SetDirectionPin(&Gpio, MIOLED0, 1);
XGpioPs_SetDirectionPin(&Gpio, MIOLED1, 1);
XGpioPs_SetDirectionPin(&Gpio, MIOLED2, 1);
//使能指定引脚输出: 0 禁止输出使能, 1 使能输出
XGpioPs_SetOutputEnablePin(&Gpio, MIOLED0, 1);
XGpioPs_SetOutputEnablePin(&Gpio, MIOLED1, 1);
XGpioPs_SetOutputEnablePin(&Gpio, MIOLED2, 1);

while (1)
{
XGpioPs_WritePin(&Gpio, MIOLED0, 0x0); //向指定引脚写入数据: 0 或 1
XGpioPs_WritePin(&Gpio, MIOLED1, 0x0);
XGpioPs_WritePin(&Gpio, MIOLED2, 0x0);
sleep(1); //延时 1 秒
XGpioPs_WritePin(&Gpio, MIOLED0, 0x1);
XGpioPs_WritePin(&Gpio, MIOLED1, 0x1);
XGpioPs_WritePin(&Gpio, MIOLED2, 0x1);
sleep(1);
}

return XST_SUCCESS;
}

You might also like