例程主程序
int main()
{
u32 temp;
key_init(); //按键初始化
input_init(); //输入捕获初始化
printf_init(); //printf 初始化
while(1)
{
if((TIM5CH1_CAPTURE_STA&0x80)) //成功捕获到了一次上升沿
{
temp=TIM5CH1_CAPTURE_STA&0x3f;
temp=temp*65536; //溢出时间总和
temp=temp+TIM5CH1_CAPTURE_VAL;//得到总的高电平时间
printf("高电平持续时间为:%d us\r\n",temp);
TIM5CH1_CAPTURE_STA=0; //开启下一次捕获
}
delay_ms(10);
}
} |