请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TM4C1230H6PM 大家好、
我正在尝试使 CCP1在 WTIME5 (本产品上的引脚 PD7)上工作。 目前计数器的值为零、它应该在系统时钟以50MHz 运行的情况下对一个0 - 3.3V 10MHz 晶体进行计数。 我正在运行 TivaWare 2.1.4.178和 CCS 7.2.0。
查看寄存器、PD7的解锁过程正常、同时启用了计时器 A 和 B、我认为这是正确的、即使它只是我想要的计时器 B? 如果我仅运行计时器 B、我是否仍然获得32位计时器和16位预分频器? 我在尝试读取 WTIMER 5 Timer_B 值时附加了寄存器值。
我还使用此设置通过 TIMER_CFG_B_PERIODICY_UP 而不 是 TIMER_CFG_B_CAP_COUNT_UP 进行了测试、并且周期性计时器模式工作正常。
// //晶体计数器 // //解锁 PD7 SysCtlPeripheralEnable (SYSCTL_Periph_GPIOD); for (i=0;i < 50;i++); HWREG (GPIO_PORTD_BASE + GPIO_O_LOCK)= 0x4C4F434B; HWREG (GPIO_PORTD_BASE + GPIO_CR)|= GPIO_PIN_7; for (i=0;i < 50;i++); SysCtlPeripheralEnable (SYSCTL_Periph_WTIME5); TimerDisable (WTIMER 5_base、TIMER_Both); GPIOPinConfigure (GPIO_PD7_WT5CCP1); GPIOPinTypeTimer (GPIO_PORTD_base、GPIO_PIN_7); TimerConfigure (WTIMER 5_base、TIMER_CFG_SPLIT_PAIR | TIMER_CFG_B_CAP_COUNT_UP); TimerControlEvent (WTIMER 5_base、TIMER_B、TIMER_EVENT_POS_EDGE); TimerPrescaleSet (WTIME5_BASE、TIMER_B、0xFFFF); TimerLoadSet (WTIMER 5_base、TIMER_B、0xFFFFFFFF); TimerPrescaleMatchSet (WTIMER 5_base、TIMER_B、0x0); TimerMatchSet (WTIMER 5_base、TIMER_B、0x0); TimerEnable (WTIMER 5_base、timer_both);