cyc2009

cyc2009

0个粉丝

11

问答

0

专栏

1

资料

cyc2009  发布于  2014-08-07 22:06:30
采纳率 0%
11个问答
5960

GPIO中断

 
请问有做过3520dGPIO驱动的么?感觉GPIO的中断总被误触发~~比如下降沿中断,进去后又无法判定是低电平~就是不断的进去,出来~
请问有大神遇见过这样的问题么?
求解,谢谢!
我来回答
回答7个
时间排序
认可量排序

goodman

4个粉丝

30

问答

18

专栏

17

资料

goodman 2014-08-08 08:27:11
认可0
hi520d没做过,不过3531我做过,中断是没有问题的

ecomsbz

1个粉丝

22

问答

0

专栏

36

资料

ecomsbz 2014-08-08 10:10:11
认可0
边沿触发,去读低电平? 这样会丢中断。如果是电平触发的,读到低 然后将中断变成高触发,高中断到,然后把中断设置成低点平中断触发。交替。

cyc2009

0个粉丝

11

问答

0

专栏

1

资料

cyc2009 2014-08-08 10:21:31
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=7731&ptid=3680]ecomsbz 发表于 2014-8-8 10:10[/url]
边沿触发,去读低电平? 这样会丢中断。如果是电平触发的,读到低 然后将中断变成高触发,高中断到,然后把 ...[/quote]

额~~这个只是做了很短的延时~去抖动用的~不会丢中断

cyc2009

0个粉丝

11

问答

0

专栏

1

资料

cyc2009 2014-08-08 10:22:08
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=7728&ptid=3680]goodman 发表于 2014-8-8 08:27[/url]
hi520d没做过,不过3531我做过,中断是没有问题的[/quote]

哦~谢谢~是不是可能我们在车上的环境太复杂了造成的~

ecomsbz

1个粉丝

22

问答

0

专栏

36

资料

ecomsbz 2014-08-08 15:00:35
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=7733&ptid=3680]cyc2009 发表于 2014-8-8 10:22[/url]
哦~谢谢~是不是可能我们在车上的环境太复杂了造成的~[/quote]

不要使用边沿触发,车上,静电干扰都有可能触发。

宇文六

0个粉丝

0

问答

0

专栏

0

资料

宇文六 2015-10-23 14:34:28
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=7728&ptid=3680]goodman 发表于 2014-8-8 08:27[/url]
hi520d没做过,不过3531我做过,中断是没有问题的[/quote]

请问一下,我3531 的GPIO 中断有问题,帮忙看看,新手求救:
int reg_temp ;
       
        HW_REG(PHY_ADDR_2_VIR_ADDR(IO_CONFIG_REG_BASE + 0x1AC)) = 0 ;                //GPIO13_1                set to be GPIO
       
        reg_temp = HW_REG(PHY_ADDR_2_VIR_ADDR(GPIO13_REG_BASE + 0x400)) ;
        HW_REG(PHY_ADDR_2_VIR_ADDR(GPIO7_REG_BASE + 0x400)) = reg_temp  &0xFD;                //0 = input         1 = ouput


        reg_temp = HW_REG(GPIO_GET_IS(GPIO13_REG_BASE));
        HW_REG(GPIO_GET_IS(GPIO13_REG_BASE)) = reg_temp | 0x2;                //gpio13_1

        reg_temp = HW_REG(GPIO_IEV(GPIO13_REG_BASE)) ;
        HW_REG(GPIO_IEV(GPIO13_REG_BASE))  = reg_temp & 0xFD;               

        HW_REG(GPIO_IC(GPIO13_REG_BASE))  = 0xFF;

        reg_temp = HW_REG(GPIO_IE(GPIO13_REG_BASE)) ;
         HW_REG(GPIO_IE(GPIO13_REG_BASE))  = reg_temp  | 0x2;       

        stat = request_irq(115,interrupt_irq_test,flag,"My test Interrput",NULL);
        if(stat)
                printk(KERN_INFO " Failed in request_irq, stat = 0x%x\n",stat);
        else
                printk(KERN_INFO " Success in request_irq\n");

宇文六

0个粉丝

0

问答

0

专栏

0

资料

宇文六 2015-10-23 15:47:13
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=21282&ptid=3680]宇文六 发表于 2015-10-23 14:34[/url]
请问一下,我3531 的GPIO 中断有问题,帮忙看看,新手求救:
int reg_temp ;
       
[/quote]

搞定了,把NULL换成一个任意值。
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区