This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] EK-TM4C129EXL:TI-RTOS 和 RTC

Guru**** 2465890 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/841897/ek-tm4c129exl-ti-rtos-and-rtc

器件型号:EK-TM4C129EXL

您好!

遗憾的是、我找不到一个显示 TI-RTOS 中 RTC 模块使用情况的示例。

我只找到了不带 TI-RTOS 的休眠示例。

我已经在 TI-RTOS 中的函数中安装了该函数。

这就是它的工作方式。 当我换行休眠模块#include 的文件时 ,我得到警告:233-D 声明在函数之外不可见。

我可以使用 TI-RTOS 中休眠模块的 RTC 吗?

有没有更好的方法可以使用 RTC?

我在 XOSC0/1上有一个32.768kHz 的外部时钟。

以下是文件 TM4C129EXL.c 中 TI-RTOS 下的代码:

#include 

void EK_TM4C129EXL_initHibernateMode (void)
{
SysCtlPeripheralEnable (SYSCTL_Periph_HIBERNATE);

HibernateEnableExpClk (SysCtlClockGet ());
HibernateClockConfig (HIBERNATE_OSC_LOWDRIVE);
HibernateRTCEnable();
休眠计数器模式(HIBERNATE_COUNTER_RTC);
uint8_t i;
对于(I = 0;I < 100;+I)
{
uint32_t secdec = HibernateRTCSSGet ()* 1000/32768;// secdec ist 0.xx Sekunden
system_printf ("%d\n"、secdec);System_flush ();
}

if (HibernateIsActivate())
{
_nop();
}
其他
{
_nop();
}

} 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、我又来了;)
    警告:"233-D:声明在函数之外不可见"、我已经通过在包含休眠模块之前包含文件 time.h 来消除了。 显然、hibernate.h 需要数据结构 TM。
    问题仍然是:

    我能否在使用休眠模块的 RTC 时不出现任何问题、因为 TI-RTOS 中没有用于休眠模块的驱动程序。

    这是否会导致其他问题?

     

    我在 TI-RTOS 中找不到此休眠模块的示例

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kram、

     我能够再现您的警告。 包括 time.h 是解决警告的正确方法。

     此外、为了回答您的问题、TI-RTOS 本机没有用于休眠模块的驱动程序。 是的、您将需要使用 TI-RTOS 中的 TivaWare 休眠模块驱动程序。 我想不出为什么在 TI-RTOS 中使用 RTC 会有问题。 我建议您使用 RTC 创建一个小型非 TI-RTOS 项目、并首先根据您的要求使其正常工作、然后将代码移植到您的 TI-RTOS 环境。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回答。 我已成功执行休眠模块;