你好,
请让我在GPIO上询问中断行为,特别是边缘检测。
我想检测到GPIO的上升沿,我将GPIO_ENABLEIRQ()函数配置为以下内容:
gpio_enableirq(gpio_port_x,gpio_pin_x,gpio1_irqn,
假,//逻辑高检测
true,//等待中断后的密钥释放(用作边缘检测)
0);
如果目标端口/引脚已经“高信号”,则当我拨打上面的功能时,我会得到中断立即地。
这是预期的吗?它就像水平中断一样......
(关于手册,Edge_Levelnx寄存器的描述被定义为“在IRQX重置中断后等待密钥释放”。< - 没有描述...但名称是Edge_Level ...)
也许,在我呼叫gpio_enableirq()函数之前,我犯了一个错误。
我想知道这是否是正确的行为。如果您可以向我喂任何评论,那将有很大的帮助。
此致,
光盘
关键词:
设备:
嗨dv,
由于您已将中断配置为使用逻辑高电平触发,如果引脚已全部高电平,则中断将是三角形的。580上的中断是触发的级别。使用True Setting //在中断后等待密钥释放,在“启用功能”中,您的设备将等到该行的发布,然后再次发出中断。请检查UM-B-004.PDF是否有关外围驱动程序的更多信息。
谢谢mt_dialog.
非常感谢您的回复。
我理解DA1458X对GPIO的级别中断,而不是边缘检测。而且我也有你的说明手册描述为“等待密钥释放”的原因。
一如既往,
光盘