请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430FR5857 工具/软件:Code Composer Studio
#include #include int main (void) { WDTCTL = WDTPW | WDTHOLD; //停止 WDT //配置 GPIO P1DIR |= BIT0 | BIT1; // P1.0和 P1.1输出 P1SEL0 |= BIT0 | BIT1; // P1.0和 P1.1选项选择 P1SEL1 &=~(BIT0 | BIT1); PJSEL0 |= BIT4 | BIT5; //禁用 GPIO 上电默认高阻抗模式以激活 //先前配置的端口设置 PM5CTL0 &=~LOCKLPM5; /*超过8MHz 的操作_Befor_配置时钟系统。*/ FRCTL0 = FRCTLPW | NWAITS_1; /*时钟系统设置*/ CSCTL0_H = CSKEY >> 8; /*解锁 CS 寄存器*/ CSCTL1 = DCORSEL | DCOFSEL_4; /*将 DCO 设置为16MHz*/ CSCTL2 = SELA_LFXTCLK | SELESS__DCOCLK | SELM_DCOCLK;//设置 ACLK = XT1;MCLK = DCO CSCTL3 = DIVA__1 | DIVM_1 | DIVM__1;//设置所有分频器 CSCTL4 &=~LFXTOFF; 操作 { CSCTL5 &=~LFXTOFFG; //清除 XT1故障标志 SFRIFG1 &=~OFIFG; } while (SFRIFG1和 OFIFG); //测试振荡器故障标志 CSCTL0_H = 0; //锁定 CS 寄存器 //配置 Timer0_A TA0CTL |=TACLR; TA0CCR0 = 16000-1; // PWM 周期 TA0CCTL1 = OUTMOD_1|CLLD_1; // CCR1复位/置位 TA0CCR1 = 8000; // CCR1 PWM 占空比 TA0CTL = tassel_SMCLK | MC__UP;// ACLK、向上计数模式、清除 TAR _bis_SR_register (LPM3_bits); //进入 LPM3 __no_operation(); //对于调试器 }
这是我想编写的下一个代码的基础代码。
我想知道的是、当我通过写入来停止计时器 A0时
TA0CTL|= MC_STOP;
TA0.1上的输出是高电平还是低电平、还是取决于 PWM 打开的电平。
我想编写代码、以便在 TimerA0停止时使其保持高电平。
提前感谢您。
Viswanath。