找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6646|回復(fù): 7
收起左側(cè)

STM32智能電磁尋跡小車(chē).速度999 1.0炒雞穩(wěn)版源碼

[復(fù)制鏈接]
ID:319398 發(fā)表于 2018-4-30 15:54 | 顯示全部樓層 |閱讀模式
大三課程設(shè)計(jì),電磁傳感器是自己設(shè)計(jì)制作的,只需根據(jù)自己測(cè)得的電磁強(qiáng)度改一下參數(shù)即可使用

STM32單片機(jī)源程序如下:
  1. #include "stm32f10x.h"
  2. #include "adc.h"
  3. #include "lcd.h"
  4. #include "delay.h"
  5. #include "usart.h"
  6. #include "pwm.h"
  7. #include "key.h"
  8. #include "math.h"

  9. u16 adc0=0,adc1=0,adca=0,adcb=0, adc3=0;
  10. float cha1=0,cha2=0;
  11. double v0,v1;


  12. extern u32 s1,s2,s3,s4;

  13. int main (void)
  14. {
  15.        
  16.         s1=s3=5,s2=s4=5;
  17.         delay_init();
  18.         uart_init(115200);
  19.         LCD_Init();
  20.         adc_init();
  21.         POINT_COLOR=RED;
  22.         LCD_Clear(GRAY);
  23.         POINT_COLOR=RED;
  24.          
  25.         key();

  26.        
  27.         LCD_ShowString(60,50,200,16,16,"ADC_Right:");             
  28.         LCD_ShowString(60,70,200,16,16,"w1:");
  29.   LCD_ShowString(60,90,200,16,16,"ADC_Left:");             
  30.         LCD_ShowString(60,110,200,16,16,"w3:");
  31.         LCD_ShowString(60,130,200,16,16,"cha1:");
  32.         LCD_ShowString(60,150,200,16,16,"cha2:");

  33.        
  34.         while(1)
  35.         {
  36.                 adca=get_adc(ADC_Channel_0);
  37.           adcb=get_adc(ADC_Channel_1);
  38.                 if(adca>adcb)
  39.                 {
  40.                    cha1=adca-adcb;
  41.                         if(200>cha1)
  42.                          {
  43.                           s1=999;
  44.         s2=999;
  45.                     s3=999;
  46.         s4=999;
  47.                          }
  48.                         if(200<cha1)
  49.                                 {
  50.                                         if(cha1<600)
  51.                                         {
  52.                                                 s1=700;
  53.                                                 s2=700;
  54.                                                 s3=600;
  55.                                                 s4=600;
  56.                                         }
  57.                                         if(cha1>=600)
  58.                                         {
  59.                                         if(cha1<800)
  60.                                  {
  61.                                   s1=800;
  62.           s2=800;
  63.                       s3=400;
  64.           s4=400;
  65.                                  }
  66.                                   if(cha1>=800)
  67.                                          {
  68.                                         s1=999;
  69.           s2=999;
  70.                       s3=200;
  71.           s4=200;
  72.                                          }
  73.                                  }
  74.                 }               
  75.         }               
  76.     else       
  77.                 {                       
  78.      if(adcb>=adca)
  79.                  {
  80.                          cha2=adcb-adca;
  81.                    if(300>=cha2)
  82.                          {
  83.                           s1=999;
  84.         s2=999;
  85.                     s3=999;
  86.         s4=999;
  87.                          }
  88.                         if(300<cha2)
  89.                                 {
  90.                                         if(cha2<1000)
  91.                                         {
  92.                                                 s1=500;
  93.                                                 s2=500;
  94.                                                 s3=700;
  95.                                                 s4=700;
  96.                                         }
  97.                                         if(cha2>=1000)
  98.                                         {
  99.                                         if(cha2<1500)
  100.                                  {
  101.                                   s3=800;
  102.           s4=800;
  103.                       s1=400;
  104.           s2=400;
  105.                                  }
  106.                                   if(cha2>=1500)
  107.                                          {
  108.                                         s3=900;
  109.           s4=900;
  110.                       s1=300;
  111.           s2=300;
  112.                                          }
  113.                                  }
  114.                  }
  115.            }
  116.          }
  117.                 LCD_ShowxNum(156,50,adca,4,16,0);//顯示ADC的值
  118.                
  119.                 LCD_ShowxNum(156,90,adcb,4,16,0);//顯示ADC的值
  120.           
  121.                 LCD_ShowxNum(156,130,cha1,4,16,0);
  122.                 LCD_ShowxNum(156,150,cha2,4,16,0);
  123.     LCD_ShowxNum(156,70,s1,4,16,0);
  124.                  LCD_ShowxNum(156,110,s3,4,16,0);
  125.                 GPIO_ResetBits(GPIOB,GPIO_Pin_5);
  126.     pwm_init();               
  127.   
  128.                 }
  129.   }
復(fù)制代碼

所有資料51hei提供下載:
智能尋跡小車(chē).速度999 1.0炒雞穩(wěn)版.rar (339.15 KB, 下載次數(shù): 101)


回復(fù)

使用道具 舉報(bào)

ID:274340 發(fā)表于 2018-6-25 12:51 | 顯示全部樓層
電磁傳感器設(shè)計(jì)也附上嘛
回復(fù)

使用道具 舉報(bào)

ID:379039 發(fā)表于 2018-7-26 13:10 | 顯示全部樓層
沒(méi)有驅(qū)動(dòng)
回復(fù)

使用道具 舉報(bào)

ID:415697 發(fā)表于 2018-10-27 20:39 | 顯示全部樓層
居然沒(méi)有電磁傳感
回復(fù)

使用道具 舉報(bào)

ID:536022 發(fā)表于 2019-7-24 14:53 | 顯示全部樓層
有環(huán)島程序嗎?
回復(fù)

使用道具 舉報(bào)

ID:932417 發(fā)表于 2021-7-9 09:06 | 顯示全部樓層
想問(wèn)下STM32F103能能用嗎,謝謝
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表