欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: OPENMV與STM32串口通信解析源程序 [打印本頁]

作者: bioo97    時間: 2019-11-26 19:14
標題: OPENMV與STM32串口通信解析源程序
可以識別兩種顏色并反饋到STM32進行解析,標記并區分兩種顏色的,內還有stm32追小球的云臺圖為,STM32通過串口與PC端通信上傳數據的效果,幀率很高很穩定!


單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"
  6. #include "holder.h"
  7. #include "oled.h"
  8. #include "mpu6050.h"
  9. #include "control.h"
  10. #include "HMI.h"
  11. #include "usart2.h"       
  12. #include "openmv.h"
  13. /*全局變量*/
  14. int PWM=1665;
  15. int16_t p_x=100;
  16. int Holder_PID(int8_t Xerror,int8_t Dzone) ;

  17. int main(void)
  18. {               

  19.         delay_init();                     //延時函數初始化          
  20.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //設置NVIC中斷分組2:2位搶占優先級,2位響應優先級

  21.         uart_init(115200);                  /*opemv串口接收*/
  22.          
  23.         uart3_init(9600);             /*串口屏*/
  24.         uart2_init(9600);            /*串口發送printf*/
  25.          

  26.         while(1)
  27.         {
  28.    

  29.          printf("\n\r X偏移=%d Y偏移=%d \n\r" ,OpenMV_RX ,OpenMV_RY);   /*X軸左負右正 red */
  30.          printf("\n\r X偏移=%d Y偏移=%d \n\r" ,OpenMV_GX ,OpenMV_GY);   /*X軸左負右正 green */
  31.          printf("\n\r 顏色合=%d \n\r",OpenMV_add);                      /*0x00沒檢測到0x01red 0x02green 0x03都有*/
  32.                        
  33.         }       
  34. }

  35. int Holder_PID(int8_t Xerror,int8_t Dzone)    /*PWM在1750-1950之間對應0~180°*/
  36. {
  37.                 static float  kp=0.08,kd=0.18,Ki=0;
  38.                 static float LastError,SumError,LastPWM,PWM_PID;
  39.                 float Error,dError;

  40.                 char flag;
  41.           Error=Xerror;
  42.           /*積分*/
  43.           SumError+=Error;
  44.        
  45.           if(Xerror<=Dzone&&Xerror>=-Dzone)
  46.                 {
  47.                   return LastPWM;
  48.                 }
  49.                 /*微分*/

  50.           dError=Error-LastError;
  51.           LastError=Error;
  52.                
  53.                 PWM_PID=(kp*Error+kd*dError+flag*Ki*SumError);
  54.                 if(PWM_PID<=Dzone&&PWM_PID>0.5)PWM_PID=1;
  55.                 if(PWM_PID>=-Dzone&&PWM_PID<-0.5)PWM_PID=-1;
  56.                
  57.     PWM=PWM+PWM_PID-2;
  58.                
  59.                 /*限幅*/
  60.                 if(PWM>=1755)PWM=1755;
  61.                 if(PWM<=1575)PWM=1575;
  62.                 LastPWM=PWM;
  63.                
  64.                 return PWM;
  65. }
復制代碼

所有資料51hei提供下載:
識別兩種顏色.7z (273.48 KB, 下載次數: 196)


作者: soloyaS    時間: 2019-12-15 17:03
本帖最后由 soloyaS 于 2019-12-15 18:51 編輯

硬件怎么連接?
作者: cdhwwwwww    時間: 2019-12-24 15:43
openmv是好東西 頂了
作者: a838899    時間: 2019-12-25 14:01
可以啊 顯示器嗎
作者: 郭云飛    時間: 2021-7-27 15:48
云臺是追蹤的嗎
作者: luotianyi    時間: 2021-8-2 15:57
soloyaS 發表于 2019-12-15 17:03
硬件怎么連接?

老哥,你知道怎么連接嗎
作者: luotianyi    時間: 2021-8-2 18:07
可以在LED上顯示嗎




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1