动态二维码显示

如果二维码已经处理好,就差动态二维码显示,此例程可以作为参考:

const unsigned char Str[]="http://www.blogtextbook.com/page/";
  LCD_BackLight_Switch(backLightOn);
  unsigned char StrTemp[100]="";
  unsigned char * pStr = StrTemp ;
  
  while(1)
  {    
    static unsigned char count;
    static unsigned char i = 0;
    unsigned char str1[8]="1234567";
    if(qrcode_100msFlag == true)
    {
      qrcode_100msFlag = false ;
      count ++;
    }   
    if(count > 50) 
    {
      count = 0;
      GUI_SetColor(GUI_WHITE); 
      GUI_FillRect(0,0,320,480);
      if(++i > 7){i=0;} 
      //printf("%s%d\n",i);
      
      sprintf(StrTemp,"%s%d",Str,i);
      //sprintf(StrTemp,"%s%d",Str,i);
      //memcpy(StrTemp, str1[i], sizeof(char));
      printf("%s\n",StrTemp);
      EncodeData(pStr);
      DrawQRcode(80,80,1,m_byModuleData);
      DrawQRcode(200,140,2,m_byModuleData);
      DrawQRcode(100,230,3,m_byModuleData);
      DrawQRcode(200,340,4,m_byModuleData);
      memset(StrTemp,0,sizeof(StrTemp));
    }
    //GUI_Delay(100);
    //qrcode_50msFlag
  }

显示的效果就是每隔一定时间就刷新屏幕,同时显示四个大小不同但是内容相同的二维码。

关于二维码放大的函数DrawQRcode,请参考我的这篇文章:STM32实现二维码放大函数

二维码显示效果图,上面链接已有,就不放了。

1,924 Comments