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

標題: 基于LPC單片機的電磁循跡小車代碼 [打印本頁]

作者: 恒星撒旦    時間: 2020-11-7 16:53
標題: 基于LPC單片機的電磁循跡小車代碼
本帖最后由 恒星撒旦 于 2020-11-7 17:32 編輯

之前校賽做的題目。
主控單片機為LPC546,程序實現功能為室內電磁循跡具體代碼注釋的很詳細,一看就能明白,實際循跡效果還不錯,有十字,坡道,環島等處理方式。
分享給大家,有問題可以留言。
小車如下:
單片機源程序如下:
  1. //* @changed by ZZH ZHY DZH
  2. /*
  3. 接口定義:

  4. 攝像頭             單片機接口
  5. D0-D7數據口        B24 B25 B26 B27 B28 B29 B30 B31
  6. SDA                A9   F5
  7. SCL                A8
  8. 場信號             A0
  9. 像素信號           A1

  10. 運放
  11. 通道1              A10
  12. 通道2              A15
  13. 通道3              A16
  14. 通道4              A31
  15. 通道5              B0
  16. 通道6              A23

  17. IIC                 
  18. SDA                A13 F1
  19. SCL                A14

  20. 電機PWM
  21. PWM1               A18   T1
  22. PWM2               A20
  23. PWM3               B4   T2
  24. PWM4               B5

  25. 編碼器         
  26. LSB1               A2   T0
  27. DIR                A3
  28. LSB2               A4  T3
  29. DIR                A5


  30. 舵機   
  31. PWM                A6 T4

  32. OLED/TFT
  33. SCK                B19
  34. MOSI               B21
  35. MISO               B20      液晶沒有這個引腳  但是SPI會占用這個引腳
  36. CS                 B9 F4

  37. DC                 B10
  38. RES                B8
  39. BL                 B7

  40. UART               
  41. RX                 A24
  42. TX                 A25  

  43. 按鍵   
  44. B1 B2 B3 B23任意交換  


  45. 撥碼開關               
  46. B17  B22任意交換  

  47. NRF
  48. B15 B14 A29 A22 A21 A17        任意交換  

  49. */


  50. //打開新的工程或者工程移動了位置務必執行以下操作
  51. //第一步 關閉上面所有打開的文件
  52. //第二步 project  clean  等待下方進度條走完

  53. #include "headfile.h"
  54. #include "LPC546XX_adc.h"
  55. #include "LYG_motor.h"
  56. #include "LYG_direction.h"
  57. #include "LYG_mspeed.h"
  58. #include "LYG_keyboard.h"
  59. #include "LYG_mohu.h"
  60. #include "SEEKFREE_ICM20602.h"
  61. #include "LPC546XX_spi.h"
  62. #include "LPC546XX_mrt.h"
  63. #include "LYG_chaoshengbo.h"

  64. #define TRIG_PIN1 B6                //定義超聲波觸發引腳端口
  65. #define ECHO_PIN1 B4                //定義超聲波觸發引腳端口

  66. uint16 speed0,speed1,speed2,speed3,speed4,speed5;                          //直道  彎道  坡道  路障
  67. uint16 read_ZHI[6];       //eeprom儲存的最大電感值
  68. extern float  AD_MAX_Data1[6];
  69. uint16   duoji_zz;
  70. uint32 speeds;
  71. extern int16 Turn_PID ;
  72. extern int16 Offset;
  73. uint16 huandao[8];
  74. extern int16 D_error ;
  75. extern uint16 ad_03_he;
  76. extern uint16 time;
  77. extern int16 speedl,AD_SS0[3],AD_SS1[3],AD_SS2[3],AD_SS3[3],AD_SS4[3],AD_SS5[3];
  78. extern uint8 flag_dawan;
  79. extern uint32 distance1;
  80. extern int16 Turn_PID ;
  81. uint16 shizi1[2];
  82. uint16 zhijiao1[2];
  83. uint16 benzenedao[2];

  84. extern uint8 con,fangxiangshu;
  85. uint8 xuanze,xuanze1;

  86. int main(void)
  87. {   
  88.     get_clk();
  89.     oled_init();
  90.     eeprom_init();
  91.     motor_init();
  92.     duoji_init();
  93.     mspeed_init();
  94.     //chaoshengbo_init();
  95.     //uart_init(USART_0,115200,UART0_TX_A25,UART0_RX_A24);  //藍牙
  96.     //icm20602_init_spi();                                   //陀螺儀
  97.     //spi_init(SPI_NUM,SPI_CS_PIN,SPI_SCK_PIN,SPI_MOSI_PIN,SPI_MISO_PIN,3,10*1000*1000);
  98.     //gpio_init(A8,GPI,1,NOPULL);  
  99.    
  100.    // gpio_init(TRIG_PIN1,GPO,0,NOPULL);//超聲波
  101.    
  102.    
  103.    
  104.     adc_init(ADC1);
  105.     adc_init(ADC2);
  106.     adc_init(ADC3);
  107.     adc_init(ADC4);
  108.     adc_init(ADC5);
  109.     adc_init(ADC6);
  110.     huandao[0]=EEPROM_READ_WORD(11);   // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
  111.     huandao[1]=EEPROM_READ_WORD(12);
  112.     huandao[2]=EEPROM_READ_WORD(13);
  113.     huandao[3]=EEPROM_READ_WORD(14);
  114.     huandao[4]=EEPROM_READ_WORD(15);
  115.     huandao[5]=EEPROM_READ_WORD(16);
  116.     huandao[6]=EEPROM_READ_WORD(20);
  117.     huandao[7]=EEPROM_READ_WORD(21);
  118.     benzenedao[0]=EEPROM_READ_WORD(25);
  119.     benzenedao[1]=EEPROM_READ_WORD(26);
  120.     shizi1[0]=EEPROM_READ_WORD(10);
  121.     shizi1[1]=EEPROM_READ_WORD(22);
  122.     zhijiao1[0]=EEPROM_READ_WORD(23);
  123.     zhijiao1[1]=EEPROM_READ_WORD(24);
  124.     fangxiangshu=EEPROM_READ_WORD(30);
  125.     //duoji_zz=EEPROM_READ_WORD(9);
  126.     duoji_zz=779;
  127.     speed0=EEPROM_READ_WORD(5);
  128.     speed1=EEPROM_READ_WORD(6);
  129.     speed2=EEPROM_READ_WORD(7);
  130.     speed3=EEPROM_READ_WORD(8);
  131.     speed4=EEPROM_READ_WORD(27);
  132.     speed5=EEPROM_READ_WORD(28);
  133.     read_ZHI[0]=EEPROM_READ_WORD(1);
  134.     read_ZHI[1]=EEPROM_READ_WORD(2);
  135.     read_ZHI[2]=EEPROM_READ_WORD(3);
  136.     read_ZHI[3]=EEPROM_READ_WORD(4);
  137.     read_ZHI[4]=EEPROM_READ_WORD(17);
  138.     read_ZHI[5]=EEPROM_READ_WORD(18);
  139.     con=EEPROM_READ_WORD(29);
  140.     xuanze=EEPROM_READ_WORD(19);
  141.     xuanze1=EEPROM_READ_WORD(31);

  142.     AD_MAX_Data1[0] = (read_ZHI[0]/10)/10.0;
  143.     AD_MAX_Data1[1] = (read_ZHI[1]/10)/10.0;
  144.     AD_MAX_Data1[2] = (read_ZHI[2]/10)/10.0;
  145.     AD_MAX_Data1[3] = (read_ZHI[3]/10)/10.0;
  146.     AD_MAX_Data1[4] = (read_ZHI[4]/10)/10.0;
  147.     AD_MAX_Data1[5] = (read_ZHI[5]/10)/10.0;

  148.    
  149.     systick_delay_ms(500);   //防止上電標志置位
  150.    
  151.     //pint_init(PINT_CH0,ECHO_PIN1,FALLING); //超聲波
  152.     //set_irq_priority(PIN_INT0_IRQn,0);//設置優先級 越低優先級越高
  153.     //enable_irq(PIN_INT0_IRQn);//開中斷 PIN_INT0_IRQn - PIN_INT7_IRQn
  154.    
  155.     pint_init(PINT_CH1,B12,RISING);//霍爾停車
  156.     set_irq_priority(PIN_INT1_IRQn,1);
  157.     enable_irq(PIN_INT1_IRQn);
  158.    
  159.     //pint_init(PINT_CH2,A8,RISING);//激光避障
  160.     //set_irq_priority(PIN_INT2_IRQn,2);
  161.     //enable_irq(PIN_INT2_IRQn);
  162.    
  163.     // pint_init(PINT_CH1,A8,FALLING); //引腳中斷停車
  164.     // pint_enable_irq(PINT_CH1);  //開啟引腳中斷
  165.    // EnableInterrupts;
  166.    
  167.     pit_init_ms(5);    //周期定時器
  168.     enable_irq(RIT_IRQn);
  169.     //mrt_pit_init_ms(MRT_CH0,5);
  170.    // enable_irq(MRT0_IRQn);
  171.     EnableInterrupts;
  172.    
  173.   // mrt_start(MRT_CH1);
  174.     while(1)
  175.     {
  176.      // OLED_ConfigParameter();                  //菜單  //yihuigai
  177.      // data_conversion(AD_Norm[0],AD_Norm[3],AD_Norm[4],AD_Norm[5],virtual_scope_data);//藍牙傳輸數據

  178.         oled_p6x8str(0,1,"ADCl :");  oled_printf_int32(6*8,1,AD_Norm[0],4);
  179.         //oled_p6x8str(0,2,"ADC2 :");  oled_printf_int32(6*8,2,AD_SS1[2],3);
  180.         //oled_p6x8str(0,3,"ADC3 :");  oled_printf_int32(6*8,3,AD_SS2[2],3);
  181.         oled_p6x8str(0,3,"ADCr :");  oled_printf_int32(6*8,3,AD_Norm[3],4);
  182.         oled_p6x8str(0,5,"D :");  oled_printf_int32(6*8,5,Turn_PID,4);
  183.          ctimer_pwm_duty(TIMER1_PWMCH0_A18,2000 );
  184.          ctimer_pwm_duty(TIMER2_PWMCH1_B4, 2000 );
  185.          
  186.       //  oled_p6x8str(0,4,"Offset :");  oled_printf_int32(6*8,4,Offset,3);
  187.         //oled_p6x8str(0,4,"turn :");  oled_printf_int32(6*8,4,Turn_PID,3);
  188.         
  189.       
  190.         
  191.       //chaoshengboZF();
  192.     }
  193.    
  194.    
  195.         
  196.    
  197. }
復制代碼




Tortoise 1.7z

193.01 KB, 下載次數: 7, 下載積分: 黑幣 -5


作者: admin    時間: 2020-11-7 17:00
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
作者: 恒星撒旦    時間: 2020-11-7 17:37
小車如圖

作者: 恒星撒旦    時間: 2020-11-7 17:40


作者: 帥同學    時間: 2021-3-18 23:35
樓主的電磁傳感器是使用的什么傳感器呢?




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一区在线视频 | 久久精品99久久久久久 | 午夜视频在线看 | 成人日韩在线 | 日韩毛片在线播放 | 欧美一区二区三区在线播放 | 免费91网站| www四虎| 国产一级一片免费播放放a 免费国产视频 | 日韩一区二区在线观看视频 | 国产精品一区在线播放 | 91女人18毛片水多国产 | 免费色片 | 国产视频一区二区在线 | 婷婷久久综合 | 久久午夜精品 | 午夜国产在线 | 日日夜夜精品 | 黄色一级片网站 | 久久久天堂国产精品女人 | 久插视频 | 亚洲精品中文字幕乱码三区91 | 精品免费国产一区二区三区四区 | 日韩免费一区 | a级片免费在线观看 | 久久精品久久久 | 日本中文字幕一区 | 欧美精品区 | 日韩精品视频一区二区三区 | 日本久久网站 | 久久久久国产精品夜夜夜夜夜 | 视频一区在线播放 | www在线播放 | 色婷婷一区 | 欧美aaaaa| 在线一区二区视频 | 天天搞天天干 | 精品国产乱码久久久久久88av | 一区二区在线看 | 日本欧美久久久久免费播放网 | 视频一二三区 |