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.

[参考译文] TM4C1294NCPDT:3ca32tw

Guru**** 2455560 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/639606/tm4c1294ncpdt-3ca32tw

器件型号:TM4C1294NCPDT

您好,

我正在使用深度睡眠模式 。我想使用休眠唤醒引脚从深度睡眠模式中唤醒。这是可行的吗??

如果可能,请告诉我如何将其配置为从深度睡眠中唤醒??

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

    您好 Devendra、

     有关详细信息、请参阅数据表。 以下是摘录。 请参阅下面 TivaWare 库中的 SLEEP_MODES_休眠 示例 \examples\boards\ek_tm4c1294xl\

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们是否可以问"从哪里产生"3ca32tw"?如果有的话,它在"毫无意义的主题行"中的价值是什么?"
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这是为 进入深度睡眠模式而创建的函数、但 WAKE 引脚也不起作用 GPIO 引脚不起作用、但不是每次都起作用、有时甚至 不起作用。

    void foring_to _sleep()

       sleep_init();

      //启用自动时钟门控控制。

          SysCtlPeripheralClockGating (真);

    //在深度睡眠中将 LDO 设置为0.90V。

    SysCtlLDODeepSlepSet (SYSCTL_LDO_0_90V);

    //在深度睡眠模式中将闪存和 SRAM 设置为低功耗。

    SysCtlDeepSlepPowerSet (SYSCTL_FLASH_LOW_POWER | SYSCTL_SRAM_LOW_POWER);

    #if (调试)

    debug_print_time();

    debug_print (((uint8_t *)"\t\t");

    debug_print (((uint8_t *)"进入睡眠");

    debug_print (((uint8_t *)"\r\n");

     #endif

    delay1(10);

    LED_ON();

    while (GPIOPinRead (GPIO_Porte _BASE、GPIO_PIN_2)=GPIO_PIN_2); //等待直到摄像头断电

    delay1(10);

    SysCtlDeepSleep ();

    while (1)

    #if (调试)

    debug_print_time();

    debug_print (((uint8_t *)"\t\t");

    debug_print (((uint8_t *)"未在深度睡眠模式中输入");

    debug_print (((uint8_t *)"\r\n");

     #endif

    秘书长的报告

    我在这里是启动的深度睡眠模式

    void sleep_init()

         SysCtlDeepSlepClockConfigSet (1、(SYSCTL_DSLP_OSC_INT | SYSCTL_DSLP_PIOSC_PD | SYSCTL_DSLP_OSC_EXT32);

     HibernateIntClear (HIBERNATE_INT_PIN_WAKE | HIBERNATE_INT_WR_COMPLETE | HIBERNATE_INT_RESET_WAKE);

    SysCtlPeripheralDeepSlepEnable (SYSCTL_Periph_GPIOE);

       SysCtlPeripheralDeepSlepEnable (SYSCTL_Periph_GPIOD);

    SysCtlPeripheralDeepSlepEnable (SYSCTL_Periph_UART3);

    SysCtlPeripheralDeepSlepEnable (SYSCTL_Periph_HIBERNATE);

        HibernateEnableExpClk (freq);

    HibernateClockConfig (HIBERNATE_OSC_LOWDRIVE);

    HibernateRTCEnable();

     SysCtlPeripheralDeepSlepDisable (SYSCTL_Periph_ADC0 | SYSCTL_Periph_ADC1 | SYSCTL_Periph_CAN0  | SYSCTL_Periph_CAN1   |

               SYSCTL_PERIPH_CCM0  | SYSCTL_PERIPH_COMP0  | SYSCTL_PERIPH_EEPROM0 | SYSCTL_PERIPH_EMAC0  |

               SYSCTL_PERIPH_EPHY0 | SYSCTL_PERIPH_EPI0   | SYSCTL_PERIPH_GPIOA | SYSCTL_PERIPH_GPIOB  |

               SYSCTL_PERIPH_GPIOC | SYSCTL_PERIPH_GPIOF  | SYSCTL_PERIPH_GPIOG  | SYSCTL_PERIPH_GPIOH  |  

    SYSCTL_Periph_GPIOJ | SYSCTL_Periph_GPIOK  | SYSCTL_Periph_GPIOL  | SYSCTL_Periph_GPIO|   

              SYSCTL_PERIPH_GPION | SYSCTL_PERIPH_GPIOR  | SYSCTL_PERIPH_GPIO  | SYSCTL_PERIPH_WTIMER 4 |

               SYSCTL_Periph_GPIO| SYSCTL_Periph_I2C0   | SYSCTL_Periph_I2C2  | SYSCTL_Periph_I2C3   |

               SYSCTL_PERIPH_I2C4  | SYSCTL_PERIPH_I2C5   | SYSCTL_PERIPH_I2C6  | SYSCTL_PERIPH_I2C7   |

               SYSCTL_Periph_I2C8  | SYSCTL_Periph_I2C9   | SYSCTL_Periph_LCD0  | SYSCTL_Periph_ONEWIRE0 |

               SYSCTL_PERIPH_PWM0  | SYSCTL_PERIPH_PWM1   | SYSCTL_PERIPH_QEI0  | SYSCTL_PERIPH_QEI1   |

               SYSCTL_Periph_SSI0  | SYSCTL_Periph_SSI1   | SYSCTL_Periph_SSI2  | SYSCTL_Periph_SSI3   |

               SYSCTL_PERIPH_TIMER0 | SYSCTL_PERIPH_Timer1  | SYSCTL_PERIPH_TIMER2 | SYSCTL_PERIPH_TIMER3  |

               SYSCTL_PERIPH_TIMER4 | SYSCTL_PERIPH_TIMER5  | SYSCTL_PERIPH_TIMER6 | SYSCTL_PERIPH_TIMER7  |

               SYSCTL_Periph_UART0 | SYSCTL_Periph_UART1  | SYSCTL_Periph_UART2  | SYSCTL_Periph_UART4  |

               SYSCTL_Periph_UART5 | SYSCTL_Periph_UART6  | SYSCTL_Periph_UART7  | SYSCTL_Periph_UDMA  |

    SYSCTL_PERIPH_USB0  | SYSCTL_PERIPH_WDOG0  | SYSCTL_PERIPH_WDOG1  | SYSCTL_PERIPH_WTIME0 |

    SYSCTL_PERIPH_WTIMEER1 | SYSCTL_PERIPH_WTIME2 | SYSCTL_PERIPH_WTIME3 | SYSCTL_PERIPH_WTIMEER5);

    PTR_WAKE_UP=ButtonIntHandler;

    HibernateWakeSet (HIBERNATE_WAKE_PIN | HIBERNATE_WAKE_RTC | HIBERNATE_WAKE_RESET);

    HibernateIntEnable (HIBERNATE_INT_PIN_WAKE | HIBERNATE_INT_RESET_WAKE);

    HibernateIntRegister (PTR_WAKE_UP);

     GPIOPinTypeGPIOInput (GPIO_Porte _BASE、GPIO_PIN_2);

    GPIOIntClear (GPIO_Porte _BASE、GPIO_INT_PIN_2);

    // GPIODirModeSet (GPIO_Porte _BASE、GPIO_PIN_2、GPIO_DIR_MODE_IN);

    // GPIOPadConfigSet (GPIO_Porte _BASE、GPIO_PIN_2、GPIO_Strength _2mA、GPIO_PIN_TYPE_WAKE_HIGH);

    GPIOIntTypeSet (GPIO_Porte _BASE、GPIO_PIN_2、GPIO_HIGH_LEVEL);

     GPIOIntRegister (GPIO_Porte _BASE、PTR_WAKE_UP);

    GPIOIntEnable (GPIO_Porte _BASE、GPIO_INT_PIN_2);

    IntMasterEnable();

    秘书长的报告

    这是我的中断处理程序 :-

    空 ButtonIntHandler()

      //按下按钮时延迟此处以实现简单的去抖。

      delay1(1);

     静态 uint32_t status1、状态;

    Status = HibernateIntStatus (0);

    if (1 =状态)

    HibernateIntClear (状态);

     status1=GPIOIntStatus (GPIO_Porte _BASE、0);

     if (1 == status1)

    GPIOIntClear (GPIO_Porte _BASE、status1);//清除中断

     LED_ON();

     flag=1;

    WAKEUP_FLAG=0;

    WAKEUP_Handle = 1;

     #if (调试)

    debug_print_time();

    debug_print (((uint8_t *)"\t\t");

    debug_print (((uint8_t *)"从深度睡眠中唤醒");

    debug_print (((uint8_t *)"\r\n");

     #endif

      IntMasterEnable();

     Work_TO_DONE ();  

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

    当我查看 TivaWare sleep_modes 示例时、它不会配置任何与休眠模式相关的内容。 换言之、我看不到任何与休眠使用相关的 API。 但是、在代码中、即使您声明打算进入/退出深度睡眠模式、我也会看到您的代码具有许多与休眠相关的配置。 要解决此问题、您能否再次查看 SLEEP_MODES 示例并将代码配置为仅进入/退出深度睡眠模式而不与休眠模式混合?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你(们)好

    感谢您先前的建议!

    我进入深度睡眠模式,但出于退出目的,我想使用专门用于休眠的 WAKE 引脚(引脚编号64)。WAKE 引脚工作于休眠模式,但不工作于深度睡眠模式。如上所述:

    WAKE 管脚可以在运行、睡眠和深度睡眠模式中产生中断。 可能的事件
    触发中断通过设置休眠中断屏蔽寄存器中相应的位来配置
    (HIBIM)寄存器。 挂起的中断可以通过写休眠中相应的位来清除
    中断清除(HIBIC)寄存器。

    因此、我想知道如何将其配置为深度睡眠模式。例如、我不知道如何将其配置为深度睡眠模式。

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

    [引用 user="CB1_MOBIT]5月我们会问"从何处产生"3c32tw"-如果有的话,它在"毫无意义的主题行"中的价值是什么?"

    [/报价]
    有多种方法可以击败过于"有用"的输入表单。
    Robert
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    确实如此。 希望"像破坏"论坛团队在"告知海报的主题(即其帖子的标题)是"重要绘图卡"以及" MCU ID 重复提供"无/零激励"以"点击"如此"空白"的主题中花费(部分)精力!

    正如您所注意到的、添加了密码"3ca xxx"只能进一步证明"驱逐舰"是没有线索的!