亲爱的团队对话框,
谢谢你的支持。
我们有DA14683的定制板。我们使用的是SDK DA1468x_DA15xxx_SDK_1.0.14.1081。我们的要求是从RTC芯片AB08X5读取日期和时间。
我们在这块定制板上使用的是RTC AB08X5芯片。该RTC用于DA14681可穿戴套件。
我们将wrbl_rtc.c, ab08x5.c文件从14681可穿戴套件移植到自定义板。该RTC芯片通过I2C线路访问,给出的地址是0x69。
在移植过程中,我们删除了”。阈值= 1,”(第70行)在ad_gpio_intrc文件的wkup_config结构中。
还删除了ad_gpio_intr_init()函数下面的行。
hw_wkup_set_counter_threshold (ad_gpio_intr_wkup_cfg.threshold);
hw_wkup_reset_counter ();
在RTC初始化过程中,自定义板中的wrbl_rtc_init(),我们观察到ab08x5_get_date()函数在自定义板中失败。我们将调试语句放入wrbl_rtc_init()函数中,并将所有调试语句打印出来,直到函数ab08x5_get_date()。
在ab08x5_get_date()函数中,below语句失败,并且我们看不到该行之后的其他调试语句。
reg_access_cb - > read_register (AB08X5_REG_DATE date_data, sizeof (date_data));
在system_init()任务中调用Wrbl_rtc_init()。
我们还做了一个实验;在wrbl_rtc_init()的下面几行删除,但问题仍然相同。
-----------------------------------------------------------------------------------------------------------------------------------------
OS_EVENT_CREATE (rtc_ready_evt);
/*注册RTC_READY中断*/
ad_gpio_intr_register (RTC_READY);
/*初始化RTC和取消注册/删除irq和事件*/
如果(!hw_gpio_get_pin_status (AB08X5_INT_D_PORT AB08X5_INT_D_PIN)) {
/*等待RTC准备就绪-> FOUT/nIRQ set to high */
如果(OS_EVENT_WAIT (rtc_ready_evt,
os_ms_ticks (rtc_ready_timeout_ms)) != os_event_signals){使用实例
DBG_MSG_WRBL_TASK("RTC就绪等待超时\r\n");
}
}
ad_gpio_intr_unregister (RTC_READY);
OS_EVENT_DELETE (rtc_ready_evt);
-----------------------------------------------------------------------------------------------------------------------------
你能帮我们解决这个问题吗?
致以最亲切的问候
Malli
亲爱的团队对话框,
请把这个箱子关上。我们解决了这个问题。
致以最亲切的问候
Malli
嗨powersquare,
很高兴你把问题解决了。任何反馈/评论都将是非常欢迎的。
谢谢,PM_Dialog