我手头有两个原子哥的开发板 mini 板和战舰板 ,我用mini板产生一个上升沿的脉冲, 用战舰板的原子哥的的定时器捕获程序捕获高电平脉冲宽度,然后在串口上打印出来
mini 板上产生的脉冲宽度大于5us都正确,如果很小比如2us,战舰板的捕获则会出现一个原则性错误
mini 板上的程序如下:
int main(void)
{
//初始化部份略
while(1)
{
LED0=1; //两个开发板的gnd连接到了一起,mini 板的led0 PA8和开发板的 定时器5捕获端口PA0连接到了一起.
delay_us(2); //产生一个2us的高电平
LED0=0;
delay_ms(1000); //产生一个1s 的低电平
}
}
战舰板 捕获
串口打印结果: HIGH:1000099 us
明明我只有产生了一个2us的高电平,就算脉冲宽度太小,捕获不到,那也不能把下面的1s低电平捕获成为高电平啊?!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>