DA1468x

如何精密测载gpio波形时长?

结婚,2019-09-04 00:33--herrkaefer

我用来超声波传感器(HC-SR04),需要销量某个gpio上回声波形的时光,误差要求是几十个微秒以下。

尝试过的方法:

1)检测到GPIO值发生变化时,直接读Timer1的寄存器值。结果误差很大.

2)使用Timer1的GPIO触发功能,需要定义dg_configUSER_CAN_USE_TIMER1和dg_configUSE_HW_TIMER0。结果:编译不过,sys_power_mgr似乎不允许dg_configUSER_CAN_USE_TIMER1定义为1。

3)使用Timer0,设置on_reload为1,t0_reload为(0,0),同时设置中断函数。这样中断被调用的频率应该是32 k / 4 = 8 khz。在中断处理中查询GPIO值,并做计数。结果测得的时长总是1或2个计数。

请问这些方法哪种是可行的, 问题是什么?有没有别的合适的解决办法?谢谢!

进入省电源模式和退出电源

星期五,2019-08-30 12:14--Ryon

你们好:

我想请问一个电源管理的问题:我想在系统进入pm_mode_extended_sleep模式后,通过按一下按键就进入到pm_mode_active模式,然后在pm_mode_active模式下按一下按键又进入到pm_mode_extended_sleep模式,要实现这种功能需要怎么做。

外部中断Tutoria参照这个文档把按键作为外设中断,发现系统就是唤醒一下就立刻进入睡眠了,我想设置唤醒后保持pm_mode_active这种模式。然后按一下按键又可以进入pm_mode_extended_sleep睡眠模式。

我用的例程是ble-peripheral,请问如何设置才能实现我的要求

谢谢

HW_WKUP中断。

星期四,2019-08-29 11:37--point85

你好,

我遵循了以下教程:http://lpccs-docs.dialog-semiconductor.com/da1468x_external_interruption/implementation.htmlhw_wkup触发GPIO引脚上的中断。这在任务第一次运行时工作得很好。

如果我杀死任务,然后重新运行任务,代码卡住在一个持续的回调触发器,即使引脚状态没有改变。

这是hw_wkup控件中的bug吗?

DA1468x高分辨率定时器

星期二,2019-08-27 18:30--herrkaefer

嗨,对话框中,

我需要一个高分辨率定时器来记录两个GPIO事件之间经过的时间。要求错误<100微秒。

我目前的探索:

1) TIMER1精度(31.25微秒)应该可以。但是使用' OS_GET_TICK_COUNT() '我只能得到2毫秒的间隔。

2) TIMER1->CAPTIM_TIMER_VAL_REG将给我一个从0到65535的值循环,或大约2ms的间隔。所以我不能直接用它来测量大于2ms的时差。

睡眠后,无法保持DA14683中的引脚电平状态

星期二,2019-08-27 10:45--Ryon

在用户手册的32节有介绍:DA14683GPIO可以保持在任何休眠模式下,通过设置寄存器SYS_CTRL_REG中的PAD_LATCH_EN。

但是我不知道在哪里设置以及要调用哪个API函数来设置。我尝试调用hw_cpm_activate_pad_latches()这个API函数但是却没有作用

有谁知道怎么设置吗以及在哪个地方设置吗?

主动模式到休眠模式

星期一,2019-08-26 16:53--powersquare

亲爱的团队对话框,

谢谢你的支持。

我们有14683的定制板。应用程序是基于ble_peripheral项目。一个任务从传感器读取数据,另一个任务在连接上后向移动应用程序发送数据。

我们有2个传感器,RTC,闪光灯,3个led,振动器连接到主板上。

在系统初始化期间,我们的应用程序将处于活动模式。我们想把板到休眠模式,当按钮被按下5秒。我们观察到主板有时会进入休眠模式,但并非总是如此。

DA14681进入冬眠,但2个醒来后它不会再去?

妈,2019-08-26十四11--mahmed106

嗨对话框

我正在工作的自定义板基于DA1468x我使用命令

pm_resume_sleep ();
pm_set_sleep_mode (pm_mode_hibernation);

让它冬眠。它进入休眠状态,外部GPIO中断唤醒,但唤醒2次后它没有进入休眠状态。

这与休眠模式是为船舶设备客户的逻辑有关吗?当客户在设备上那么这段代码是禁用的吗?

我的理解正确吗?

页面

订阅RSS - DA1468x