久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3395|回復: 2
收起左側

PWM調速+超聲波控制車距的小車stm32源碼

[復制鏈接]
ID:321034 發表于 2018-7-24 16:28 | 顯示全部樓層 |閱讀模式
STM32f103EZ  系列  
超聲波 通過定時器來測量,PWM調速 控制車速   小車可以實現設定距離之間的 運動  ,實現跟隨運動
具體的 源程序 如下 :
  1. #include "stm32f10x.h"
  2. #include "bsp_usart1.h"
  3. #include "bsp_length.h"
  4. #include "bsp_tick.h"
  5. # include "motor.h"
  6. # include "pwm_motor.h"

  7. #define CLI()      __set_PRIMASK(1)                /* 關閉總中斷 */  
  8. #define SEI()      __set_PRIMASK(0)                /*開總中斷*/

  9. void Delay(unsigned short int time);  //粗略的延時函數
  10. float ChangeDistance(unsigned int cout1);  //時間轉為距離函數

  11. //ECHO PA4
  12. //TRIG PA5
  13. int main(void)
  14. {
  15.           unsigned int count=0; //  計數
  16.           float distance=0;     //  距離
  17.          
  18.                 /* USART1 config 115200 8-N-1 */
  19.                 USART1_Config();
  20.     Distance_Config();  //測距模塊對應的引腳初始化
  21.     CLI() ;//關閉總中斷
  22.           SEI(); //開總中斷
  23.           Tim3_Config();  //定時器的初始化
  24.           Motor_Config();
  25.     TIM_Mode_Config();   //PWM 調速
  26.          
  27.           GPIO_ResetBits(GPIOA,GPIO_Pin_5);  //先拉低電平
  28.         
  29.           while(1)
  30.                 {
  31.                           printf(" 超聲波初始化完成!! \r \n");
  32.         printf(" 測距開始 \r \n");
  33.                           GPIO_SetBits(GPIOA,GPIO_Pin_5);  //拉高電平
  34.                           Delay(30);  //延時20個微秒
  35.                         //  Delay(20);
  36.                         //  Delay(20);
  37.                          GPIO_ResetBits(GPIOA,GPIO_Pin_5); //拉低電平

  38.        TIM3->CNT=0;  //TIM3的計數器清0

  39.        while(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_4) == 0); //等待ECHO的高電平
  40.                

  41.        TIM_Cmd(TIM3,ENABLE);  //運行TIM3進行計時
  42.       
  43.                         while((GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_4) == 1) && (TIM3->CNT < TIM3->ARR-10))
  44.                         {
  45.                         
  46.                           TIM_Cmd(TIM3,DISABLE);  
  47.                        
  48.         count++;
  49.                         }
  50.         printf("count=%d",count);                        
  51.                           distance=ChangeDistance(count);
  52.                           printf(" 當前距離為:%f\n",distance);
  53.                           Delay(20000);
  54.                                 Delay(20000);         
  55.                         
  56.                                         if(distance>10)
  57.                                                  Go_forward();
  58.                                         else
  59.                                                 Go_back();
  60.                                         while(1);
  61.                                 
  62.                         
  63.      }
  64. }

  65. void Delay(unsigned short int time)  //粗略的延時函數
  66. {
  67.     unsigned char i=0;
  68.           while(time--)
  69.                 {
  70.         i=10;
  71.                           while(i--);
  72.     }
  73. }

  74. float ChangeDistance(unsigned int cout1)
  75. {
  76.     float distance=0;
  77.           printf("cou1=%d\n",cout1);
  78.           distance=cout1/58.0;
  79.         
  80.           return distance;
  81. }
  82. /*********************************************END OF FILE**********************/
復制代碼

全部資料51hei下載地址:
超聲波+PWM調速 小車.rar (318.71 KB, 下載次數: 45)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:383531 發表于 2018-8-6 17:50 | 顯示全部樓層
你好,能否詳細說一下超聲波測距的具體作用   
回復

使用道具 舉報

ID:267330 發表于 2018-10-15 10:32 | 顯示全部樓層
你好,能否詳細說一下超聲波測距的具體作用   
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91久操视频 | 在线视频日韩精品 | 麻豆a级片 | 欧美阿v | 天天操夜夜拍 | 欧美狠狠操 | 久久久久1 | 久久久久久久一级 | 在线天堂免费中文字幕视频 | 黄色片在线免费看 | 久久小视频 | 欧美中文字幕一区 | 自拍亚洲| 欧美在线a| 高清免费在线 | 久久精品中文 | 天天操天天射天天 | 日批av| 欧美a级成人淫片免费看 | 国产三区av | 狠狠爱一区二区三区 | 青青草原综合久久大伊人精品 | 成年人网站在线观看视频 | 免费成人高清在线视频 | 天天影视综合 | 在线日韩不卡 | 欧美一区二区网站 | 国产探花在线观看视频 | 天天干.com | 久久国产一区二区 | 国产精品永久 | 亚洲国产精品视频一区 | 亚洲欧美日韩国产 | 国产精品福利视频 | 欧美一级欧美三级在线观看 | 亚洲视频在线一区 | 蜜桃臀av一区二区三区 | 99re在线视频 | 极情综合网 | 国产二区三区 | 久草新视频 |