在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6596|回复: 8

[求助] GPIO中断

[复制链接]
发表于 2010-6-21 16:06:25 | 显示全部楼层 |阅读模式
10资产
本帖最后由 picassoye 于 2010-6-23 14:05 编辑

最近在学习microblaze的GPIO的中断,看了一些资料,但是还不怎么明白,谁有可以用的关于GPIO中断的EDK工程吗?
当中C语言中断函数是怎么写的?只要按一个按键点一个灯就可以
可不可以给我发一个让我学习学习?顺便贴上轮询方式实现的C代码供参考

#include "xparameters.h"
#include "xgpio.h"
#include "xutil.h"
//====================================================
int main (void)
{
XGpio push;
int i, psb_check;

// define instance pointer for LEDs_8Bit device
XGpio LEDs8_Bit;
xil_printf("start of the program...\r\n");

// initialize and set data direction for PUSH_BUTTONS device
XGpio_Initialize(&push, XPAR_PUSH_BUTTONS_DEVICE_ID);
XGpio_SetDataDirection(&push, 1, 0xffffffff);

// initialize and set data direction for LEDs_8Bit device
XGpio_Initialize(&LEDs8_Bit, XPAR_LEDS_DEVICE_ID);
XGpio_SetDataDirection(&LEDs8_Bit, 1, 0x0);

while (1)
{
  psb_check = XGpio_DiscreteRead(&push, 1);
  xil_printf("pushbutton status %x\r\n",psb_check);

  // output push switches value on LEDs_8Bit device
  XGpio_DiscreteWrite(&LEDs8_Bit, 1, ~psb_check);
  for (i=0; i<99999999; i++);
}
}

发表于 2010-6-21 23:05:40 | 显示全部楼层
这个不应该在FPGA板块内讨论的
 楼主| 发表于 2010-6-22 08:57:31 | 显示全部楼层
发表于 2010-6-22 12:57:21 | 显示全部楼层
记得中断控制好像要对中断寄存器控制,中断寄存器也要两种
 楼主| 发表于 2010-6-22 13:32:39 | 显示全部楼层


记得中断控制好像要对中断寄存器控制,中断寄存器也要两种
ls053758 发表于 2010-6-22 12:57

我在工程中加入了两个GPIO,一个连接LED,一个连接按键,还加入了一个中断控制器(interrupt controller),编写了一点C代码,用轮询方式已经可以实现,但是中断方式没试过
 楼主| 发表于 2010-6-23 13:09:54 | 显示全部楼层
有没有人试过在加入GPIO的IP核的时候选择中断?
 楼主| 发表于 2010-7-5 15:32:13 | 显示全部楼层
唉,没有人研究过?
 楼主| 发表于 2010-7-7 14:09:28 | 显示全部楼层


记得中断控制好像要对中断寄存器控制,中断寄存器也要两种
ls053758 发表于 2010-6-22 12:57

哪两种啊?
 楼主| 发表于 2010-7-8 15:14:55 | 显示全部楼层
还得靠自己解决,上网找了找搞定了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 17:54 , Processed in 0.024802 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表