当然,为了便于调整频率,最好是添加数码显示功能。至于手动脉冲功能,可通过GPIO中的键入程序来改造,每按一次键就产生一个由高到底的电平跳变。 此外,用示例程序 Demo_LETMR_Interrupt也可以改造成,方法是用mkl_lptmr.c中的LPTMR0_CMR作为脉冲频率的调整变量。void lptmrInit (void)
{
SIM_SCGC5 |= SIM_SCGC5_LPTMR_MASK; /*打开lptmr时钟 */
LPTMR0_CSR |= LPTMR_CSR_TCF_MASK | LPTMR_CSR_TIE_MASK; /* 清除标志位 开启中断 */
LPTMR0_PSR |= LPTMR_PSR_PCS(1); /* 使用1KHz时钟源 */
LPTMR0_CMR = n; /* 默认2分频 n=500即为1s */
LPTMR0_CSR |= LPTMR_CSR_TEN_MASK; /* 开启LPTMR */
}
当n=500时,输出频率=1KHz时钟源/2分频*500=1hz; 当n=5000时,输出频率=0.1 hz; 当n=5时,输出频率=100 hz。 5.译码器功能,它是视输入的情况,按照已规定好的对应关系来确定输出对应值。 以3-8译码器74HC138为例,它有3个输入端A、B、C,8个输出端Y0~Y7。
|