[STM32F1] STM32测距小程序求帮助

[复制链接]
 楼主| diannaodanshi 发表于 2015-3-29 12:28 | 显示全部楼层 |阅读模式
本帖最后由 diannaodanshi 于 2015-3-29 20:07 编辑

菜鸟一枚,在做一个利用HC-SR04超声波模块测距的小程序。想法就是利用滴答定时器。代码如下:
int main(void)
{        double a;
         GPIO_InitTypeDef GPIO_InitStructure;
         /* 1us中断一次 */
         SysTick_Init();
         
                 LED_GPIO_Config();               
                                                                                                                                            
         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;        

         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   

         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
         
         GPIO_Init(GPIOB, &GPIO_InitStructure);        
         
         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;        
         
         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
           
         GPIO_Init(GPIOB, &GPIO_InitStructure);        
         
         USART1_Config();        
         
         printf("\r\n this program show the distance \r\n");
         
         for(;;)
         {        a=0;
                 GPIO_ResetBits(GPIOB,GPIO_Pin_10);
                 Delay_us(20);        
                 GPIO_SetBits(GPIOB,GPIO_Pin_10);
                 
                 while(GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_11)==0) {
                         Delay_us(10);
                         a=a+1;}
                 
                 printf("\r\n distance %.1f\r\n",a/100000*170*100);                                 
                 Delay_ms(1000);                /* 1s 测试距离一次*/
                 LED1_TOGGLE;
         }   
}

但是就测距结果来看,只能通过串口输出3.9,4.1这两个固定的数值。求问大神该程序是哪里的问题,应该如何改正。感激不尽!
小浣熊 发表于 2015-3-29 12:45 | 显示全部楼层
不懂。。。。帮顶。。
mmuuss586 发表于 2015-3-29 18:28 | 显示全部楼层
HC-SR04?是啥啊?
超声波模块?

是的话,用STM32的PWM捕获,还是比较简单的;
 楼主| diannaodanshi 发表于 2015-3-29 20:08 | 显示全部楼层
mmuuss586 发表于 2015-3-29 18:28
HC-SR04?是啥啊?
超声波模块?

这个还没有学到呢。。。现在也就是学到了中断和定时器
songchenping 发表于 2015-3-30 10:05 | 显示全部楼层
啥都没说清,怎么让别人帮你啊。
mmuuss586 发表于 2015-3-30 12:17 | 显示全部楼层
diannaodanshi 发表于 2015-3-29 20:08
这个还没有学到呢。。。现在也就是学到了中断和定时器

哦,我记得你买模块,厂家会提供参考程序的;
lovecat2015 发表于 2015-3-30 16:15 | 显示全部楼层
这方面没有接触过
帮你顶一下吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

2

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部