星瞳实验室APP,快速收到回复
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • openmv4与stm32串口通信,超过1M距离不能通信



    • openmv4和stm32位置没用变化,是待识别物体与openmv超过1m左右时,stm32接收到的数据没有继续变化,但是openmv上数据还是实时在变。
      stm32程序

      void USART2_IRQHandler(void)                	//串口2中断服务程序
      {
      	static uint16_t rebuf[8]={0},i=0;
      	u8 j=0;
      	if( USART_GetITStatus(USART2,USART_IT_RXNE)!=RESET)
      	{
      		rebuf[i++]=USART_ReceiveData(USART2);	
      		if(rebuf[0]!=0x2C)/
      			i=0;
      	  if((i==2)&&(rebuf[1]!=0x12))/
      			i=0;
          if(rebuf[i-1]==0x3C)
      		{
      				for(j =0;j<i;j++)
      				{
      					RxBuffer1[j] = rebuf[j];
      				}
      			i = 0;
      		}	
      		USART_ClearFlag(USART2,USART_FLAG_RXNE);
      

      openmv程序

      def sending_data(cx,cy):
          data = ustruct.pack("<bbhhb",
                         0x2C,
                         0x12,
                         int(cx),
                         int(cy),
                         0x3C)
          uart.write(data);
      


    • 好了问题已经解决了,是因为距离太远像素变低,我设置了一个像素的阈值