实际上,我在用DA1586接口一个基于中断的传感器。通常用于传感器和微控制器之间的I2c通信,我使用P0_2和P0_3引脚。我从传感器获取物理信息。Now to configure interrupt there are different interrupt pins for accelerometer and gyroscope which are to be connected to the microcontroller.So my issue is to which pins should i connect and configure them to enable the interrupt??
你好高,
请查看DA14585物联网多传感器开发工具包。您可以在我们的支持页面的DA14585参考设计选项卡中找到它,或者为了方便起见,请点击以下链接=:
https://support.dialog-semiconductor.com/connectivity/product/da14585?qt-产品?限制?5和qt-view?参考?设计?块?1=5?qt-view?参考?设计?块?1
谢谢,PM_Dialog
你好,团队,
实际上,传感器具有中断引脚,必须连接到DA14586微控制器。那么,我应该使用微控制器的哪些引脚来连接传感器的中断引脚,并在程序中配置它们?
谢谢
高。
你好高,
为了将GPIO配置为一个中断,你应该使用GPIO_EnableIRQ() API。您能说明一下您的问题是什么吗?您不应该选择任何特定的GPIO。我认为软件示例:读取I2C加速计并发送通知数据我们的支持门户中的示例可能会对您有所帮助。请按照中描述的步骤操作软件示例:DA1458x示例设置为了运行这个示例。
谢谢,PM_Dialog
实际上,我在用DA1586接口一个基于中断的传感器。通常用于传感器和微控制器之间的I2c通信,我使用P0_2和P0_3引脚。我从传感器获取物理信息。Now to configure interrupt there are different interrupt pins for accelerometer and gyroscope which are to be connected to the microcontroller.So my issue is to which pins should i connect and configure them to enable the interrupt??
开发工具包中的哪些引脚用于配置中断?
你好高,
GPIO是完全可编程的,因此您可以选择其中任何一个并将其配置为中断引脚。请检查表1:DA14586数据表的Pin说明。你能澄清一下你想要完成什么吗?另外,我建议您看一看本手册的10.3.6函数参考:中断处理函数部分UM-B-079 DA14585和DA14586软件平台参考(SDK 6.0.8)用户手册,以便找到所有可用的api。
谢谢,PM_Dialog
你好,团队,
实际上,我正在执行一个i2c接口之间的陀螺传感器和DA14586 MCU。我以i2c_eeprom代码为参考,编程后在终端接收传感器值。对于i2c,我已经使用DA14586的P0_2和P0_3引脚分别连接到传感器SCL和SDA引脚。我使用的传感器是一个基于中断的传感器。要配置中断,我必须将传感器的中断管脚连接到对话MCU。那么我应该连接到哪个引脚呢?以及如何配置中断?我应该使用GPIO_enableIRQ API吗?
有参考资料吗?
谢谢你的支持。
谢谢
高。N
附加查询
主要应用是当传感器超过设定的阈值时,它应该生成一个中断。对于这种类型的应用,我应该遵循什么API?
你好高,
您可以将传感器的中断引脚连接到DA14586的每个GPIO。您应该将GPIO配置为输入,并使用GPIO_enableIRQ()来从DA14586一侧获得中断。之后,你可以注册一个回调函数,因为你可以使用GPIO_RegisterCallback() API从传感器获得中断。
谢谢,PM_Dialog
你好,
实际上,我想激活传感器,保持微控制器处于睡眠模式,当基于设置的阈值产生中断时,微控制器应该处于激活状态,如果产生中断就通知,这样我想节省微控制器的电源。如何完成这类任务?
谢谢
高
你好高,
>>激活传感器,保持微控制器处于休眠状态
你能澄清一下吗?DA14586将处于睡眠模式,传感器将生成中断以唤醒芯片?对吗?否则,请
谢谢,PM_Dialog
当传感器中产生中断事件时,它应该唤醒微控制器。我想读取传感器数据,然后保持微控制器处于睡眠模式,当一个中断产生时,它应该唤醒微控制器,而不是由微控制器连续监测。
谢谢
高
额外的查询
1) 如何在中断生成后实现回调函数。只有使用GPIO回调寄存器API?
2) 当超过阈值时,产生中断的流程是什么。?
3) 启用IRQ和回调中断,就这样?
你好高,
我强烈建议你看看SDK的ble_app_sleepmode。如果设备配置为任何睡眠模式,您可以通过唤醒控制器唤醒它。此外,阅读UM-B-080用户手册中的7.6 Pillar 5(睡眠模式)将非常有帮助,以便了解如何唤醒设备。在这种情况下,中断将从传感器而不是从按钮产生。
谢谢,PM_Dialog
你好,团队,
我在启用GPIO配置的中断引脚时遇到了问题。
将GPIO管脚配置为中断管脚,我已经完成了
在user_peripher_setup .h ->中使用宏定义端口和引脚
2) 在user_periph_setup.c->使用GPIO ConfigurePin配置GPIO
并将参数传递给GPIO_EnableIRQ()
上述程序正确吗?
你好高,
请检查以下步骤,以演示如何使用IRQ并检测连接到pin1_1的按钮的中断。请注意,使用下面的代码片段,您将无法从睡眠中醒来。如果您想要此功能,请让我知道或查看ble_app_睡眠模式示例。
#定义GPIO\U按钮\U端口GPIO\U端口\U 1
#定义GPIO\U按钮\U引脚GPIO\U引脚\U 1
空白GPIO_reservations(空白)
{
保留gpio (push_button, gpio_button_port, gpio_button_pin, pid_gpio);
}
void set\u pad\u函数(void)//设置gpio端口函数模式
{
GPIO_ConfigurePin(GPIO_BUTTON_PORT, GPIO_BUTTON_PIN, INPUT_PULLUP, PID_GPIO, false);
}
GPIO_RegisterCallback (GPIO0_IRQn your_callback_function);
GPIO_启用IRQ(GPIO_按钮_端口、GPIO_按钮_引脚、GPIO0_IRQn、真、假、0)
如果GPIO_EnableIRQ()中的low_input为TRUE,则在输入低时生成IRQ。如果输入值低,则会触发your_callback_function。你还应该包含gpio.h库。
问候,PM_Dialog
你好
感谢GPIO配置程序。我希望微控制器在触发传感器中断时从睡眠中醒来。如何实现这一点?
你好
感谢GPIO配置程序。我希望微控制器在触发传感器中断时从睡眠中醒来。如何实现这一点?
你好高,
正如我在前一篇文章中提到的,如果你想从任何类型的睡眠模式中醒来,你应该使用唤醒控制器。如果设备进入睡眠模式,我提供给您的代码片段将无法工作。你能指出你想要完成什么吗?与SDK的ble_app_睡眠模式示例具有相同的功能?你检查过这个例子吗?您可以找到使用唤醒控制器的适当步骤。
谢谢,PM_Dialog
你好
实际上,我正在用DA14586接口一个基于陀螺中断的传感器,我已经完成了i2c接口,并得到了传感器的输出值。当它越过某个阈值时,它应该发出通知。要明确的是,我想实现我在附件图片中提到的一个。
谢谢
高。N
你好高,
抱歉,我有点困惑。附件中的图片指的是哪一张?请附上它好吗?
谢谢,PM_Dialog
没有附上道歉。这是图像。请解压zip文件。
谢谢
高。N
你好高,
请查看DA14585物联网多传感器套件参考设计中的物联网项目。您可以在DA14585的支持门户中找到此参考设计,我正在谈论的项目位于DA14585_IOT_MULTI_SENSOR_DK_v6.160.2\DA14585_MULTI_SENSOR_DK\v6.160.2\projects\target_apps\IOT\IOT_585\Keil_5路径下。另请参考本标准第5.3.3段
DA14585物联网多传感器开发工具包:UM_B_096用户手册。默认情况下,设备将启动广告。广告时间段由ADV_time_OUT上设置的值确定。计时器过期时,将执行用户应用程序(on_adv_undirect_complete())以终止广告。如果睡眠模式设置为ARCH_EXT_sleep_ON,系统将尝试关闭电源并启用唤醒运动中断。如果未定义ALWAYS_Advertised,则运动传感器将被排除在此项目之外,因此无法唤醒处理器。为此目的,加速计配置为低功率运行,并设置“任意运动”中断功能。处理器被允许进入延长睡眠模式,并且只有在接收到来自加速计的中断时才被唤醒。然后执行中断处理程序wkup_intr_non_connected_cb(),启动广告。请遵循wom_acc_setup(),该函数在_adv_unddirective_complete()函数中调用,以了解如何通过运动中断唤醒
谢谢,PM_Dialog