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-TM4C123GXL:关闭 A 配置的 GPIO 定时器

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1210761/ek-tm4c123gxl-switch-a-configured-gpio-timer-off

器件型号:EK-TM4C123GXL

禁用计时器后的默认值。 我还要关闭已配置的引脚。

我怎么能做到这一点呢?

因为当我再次启动两个计时器时。 我想以预先配置的状态启动。

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void init_TIMER_0()
{
MAP_SysCtlPeripheralEnable(SYSCTL_PERIPH_TIMER0);
while(!MAP_SysCtlPeripheralReady(SYSCTL_PERIPH_TIMER0));
// Timer 0A is the data signal 1: PB6
// Timer 0B is the udma trigger signal to GPIO: PB7
MAP_GPIOPinConfigure(GPIO_PB6_T0CCP0);
MAP_GPIOPinConfigure(GPIO_PB7_T0CCP1);
MAP_GPIOPinTypeTimer(GPIO_PORTB_BASE, GPIO_PIN_6);
MAP_GPIOPinTypeTimer(GPIO_PORTB_BASE, GPIO_PIN_7);
MAP_TimerConfigure(TIMER0_BASE, TIMER_CFG_SPLIT_PAIR |
TIMER_CFG_A_PWM | TIMER_CFG_B_PWM);
MAP_TimerLoadSet(TIMER0_BASE, TIMER_BOTH,
(SysCtlClockGet()/SIGNAL_FREQUENZ) - 1);
// start led signal with the reset signal
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

    您好!

     我将建议你使用 SysCtlPeripheralReset ()来复位外设。 这将确保定时器模块回到其复位状态。  

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

    执行此命令后、我必须重新配置它?

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

    可以。  

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

    我已经尝试过、但 GPIO 仍然保持开启

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

    这是因为这些引脚仍然处于由计时器模块驱动的功能模式、但它们应该处于低电平有效状态。 如果要将这些引脚更改为输入引脚(高阻态)、则需要将这些引脚重新配置为 GPIO 模式。