您的位置:首页 > 其它

Xilinx SDK 初学之–API函数笔记(GPIO函数)

2017-09-05 17:23 381 查看


xgpio函数

1、int XGpio_Initialize(XGpio * InstancePtr, u16 DeviceId)
名称代码解释
函数名XGpio_Initialize初始化GPIO
参数1XGpio * InstancePtr指向GPIO实例的指针
参数2u16 DeviceIdID号,自动生成,在xparameters.h文件中定义
返回值intXST_SUCCESS/XST_FAILURE
应用举例: 

/////////////////////////////////////////////////////// 

XGpio LedGpio; 

XGpio_Initialize(&LedGpio,XPAR_LED_DEVICE_ID) ; 

///////////////////////////////////////////////////////

2、void XGpio_SetDataDirection(XGpio *InstancePtr, unsigned Channel,u32 DirectionMask)
名称代码解释
函数名XGpio_SetDataDirection设置GPIO为输入/输出
参数1XGpio * InstancePtr指向GPIO实例的指针
参数2unsigned Channel待设置GPIO的通道(Vivado中设置gpio IP时的设置通道,为1或2)
参数3u32 DirectionMask方向设置。0:output;1:input
返回值void 
应用举例: 

/////////////////////////////////////////////////////// 

XGpio LedGpio; 

XGpio_SetDataDirection(&LedGpio,1,0x00000000) ; 

/////////////////////////////////////////////////////// 

说明:关于参数Channel,在gpio的IP设置时有如下配置: 


 

配置为上半部分的GPIO,则Channel为1;若设置下半部分配置的GPIO 2,则Channel为2;

3、u32 XGpio_DiscreteRead(XGpio * InstancePtr, unsigned Channel)
名称代码解释
函数名XGpio_DiscreteRead读取GPIO的值
参数1XGpio * InstancePtr指向GPIO实例的指针
参数2unsigned Channel通道号,同上一函数
返回值u32最多32位的实际值
应用举例: 

/////////////////////////////////////////////////////// 

XGpio BtnGpio; 

int btn_val ; 

btn_val =XGpio_DiscreteRead(&BtnGpio,1) ; 

///////////////////////////////////////////////////////

3、void XGpio_DiscreteWrite(XGpio * InstancePtr, unsigned Channel, u32 Data)
名称代码解释
函数名XGpio_DiscreteWrite写GPIO
参数1XGpio * InstancePtr指向GPIO实例的指针
参数2unsigned Channel通道号,同上一函数
参数3u32 Data需要写的值
返回值void 
应用举例: 

/////////////////////////////////////////////////////// 

XGpio LedGpio; 

int led_val = 0xfffffff2; 

XGpio_DiscreteWrite(&LedGpio,1,led_val) ; 

///////////////////////////////////////////////////////

其他与GPIO相关的函数使用与以上函数大同小异,参考参数含义即可理解
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: