您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ BSP_LCD_DrawPixel函数代码示例

51自学网 2021-06-01 19:53:15
  C++
这篇教程C++ BSP_LCD_DrawPixel函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中BSP_LCD_DrawPixel函数的典型用法代码示例。如果您正苦于以下问题:C++ BSP_LCD_DrawPixel函数的具体用法?C++ BSP_LCD_DrawPixel怎么用?C++ BSP_LCD_DrawPixel使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了BSP_LCD_DrawPixel函数的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: BSP_LCD_DrawEllipse

/**  * @brief  Draws an ellipse on LCD.  * @param  Xpos: X position  * @param  Ypos: Y position  * @param  XRadius: Ellipse X radius  * @param  YRadius: Ellipse Y radius  * @retval None  */void BSP_LCD_DrawEllipse(int Xpos, int Ypos, int XRadius, int YRadius){  int x = 0, y = -YRadius, err = 2-2*XRadius, e2;  float K = 0, rad1 = 0, rad2 = 0;    rad1 = XRadius;  rad2 = YRadius;    K = (float)(rad2/rad1);    do {          BSP_LCD_DrawPixel((Xpos-(uint16_t)(x/K)), (Ypos+y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos+(uint16_t)(x/K)), (Ypos+y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos+(uint16_t)(x/K)), (Ypos-y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos-(uint16_t)(x/K)), (Ypos-y), DrawProp.TextColor);              e2 = err;    if (e2 <= x) {      err += ++x*2+1;      if (-y == x && e2 <= y) e2 = 0;    }    if (e2 > y) err += ++y*2+1;       }  while (y <= 0);}
开发者ID:PaulingZhou,项目名称:RM2016_0X3_SystemBoard,代码行数:33,


示例2: BSP_LCD_DrawCircle

/**  * @brief  Displays a circle.  * @param  Xpos: the X position  * @param  Ypos: the Y position  * @param  Radius: the circle radius  */void BSP_LCD_DrawCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius){  int32_t  d;/* Decision Variable */   uint32_t  curx;/* Current X Value */  uint32_t  cury;/* Current Y Value */     d = 3 - (Radius << 1);  curx = 0;  cury = Radius;    while (curx <= cury)  {    BSP_LCD_DrawPixel((Xpos + curx), (Ypos - cury), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - curx), (Ypos - cury), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + cury), (Ypos - curx), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - cury), (Ypos - curx), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + curx), (Ypos + cury), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - curx), (Ypos + cury), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + cury), (Ypos + curx), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - cury), (Ypos + curx), DrawProp[ActiveLayer].TextColor);       if (d < 0)    {       d += (curx << 2) + 6;    }    else    {      d += ((curx - cury) << 2) + 10;      cury--;    }    curx++;  } }
开发者ID:mnowell129,项目名称:GliderScaleSystemWorkbench,代码行数:39,


示例3: DrawChar

/**  * @brief  Draws a character on LCD.  * @param  Xpos: Line where to display the character shape  * @param  Ypos: Start column address  * @param  c: Pointer to the character data  * @retval None  */static void DrawChar(uint16_t Xpos, uint16_t Ypos, const uint8_t *c){  uint32_t i = 0, j = 0;  uint16_t height, width;  uint8_t  offset;  uint8_t  *pchar;  uint32_t line;    height = DrawProp[ActiveLayer].pFont->Height;  width  = DrawProp[ActiveLayer].pFont->Width;    offset =  8 *((width + 7)/8) -  width ;    for(i = 0; i < height; i++)  {    pchar = ((uint8_t *)c + (width + 7)/8 * i);        switch(((width + 7)/8))    {          case 1:      line =  pchar[0];            break;          case 2:      line =  (pchar[0]<< 8) | pchar[1];            break;          case 3:    default:      line =  (pchar[0]<< 16) | (pchar[1]<< 8) | pchar[2];            break;    }         for (j = 0; j < width; j++)    {      if(line & (1 << (width- j + offset- 1)))       {        BSP_LCD_DrawPixel((Xpos + j), Ypos, DrawProp[ActiveLayer].TextColor);      }      else      {        BSP_LCD_DrawPixel((Xpos + j), Ypos, DrawProp[ActiveLayer].BackColor);      }     }    Ypos++;  }}
开发者ID:picohari,项目名称:intewa_stm32f7,代码行数:55,


示例4: display_samples

void display_samples(uint32_t *samples) {	uint32_t trigger_point = find_trigger_point(samples); //to synchronize	BSP_LCD_Clear(LCD_COLOR_BLACK);	for(uint32_t i = trigger_point+2; i < SIZE; i += 2) {		BSP_LCD_DrawPixel(scale(samples[i]),i-trigger_point,LCD_COLOR_WHITE);	}}
开发者ID:jifwin,项目名称:auk_project,代码行数:7,


示例5: BSP_LCD_DrawVLine

/**  * @brief  Draws a vertical line.  * @param  Xpos: X position  * @param  Ypos: Y position  * @param  Length: Line length  * @retval None  */void BSP_LCD_DrawVLine(uint16_t Xpos, uint16_t Ypos, uint16_t Length){  uint32_t index = 0;    if(lcd_drv->DrawVLine != NULL)  {    lcd_drv->DrawVLine(DrawProp.TextColor, Xpos, Ypos, Length);  }  else  {    for(index = 0; index < Length; index++)    {      BSP_LCD_DrawPixel(Xpos, Ypos + index, DrawProp.TextColor);    }  }}
开发者ID:PaulingZhou,项目名称:RM2016_0X3_SystemBoard,代码行数:23,


示例6: BSP_LCD_DrawCircle

/**  * @brief  Draws a circle.  * @param  Xpos: X position  * @param  Ypos: Y position  * @param  Radius: Circle radius  * @retval None  */void BSP_LCD_DrawCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius){  int32_t  D;       /* Decision Variable */   uint32_t  CurX;   /* Current X Value */  uint32_t  CurY;   /* Current Y Value */     D = 3 - (Radius << 1);  CurX = 0;  CurY = Radius;    while (CurX <= CurY)  {    BSP_LCD_DrawPixel((Xpos + CurX), (Ypos - CurY), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - CurX), (Ypos - CurY), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + CurY), (Ypos - CurX), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - CurY), (Ypos - CurX), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + CurX), (Ypos + CurY), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - CurX), (Ypos + CurY), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + CurY), (Ypos + CurX), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - CurY), (Ypos + CurX), DrawProp.TextColor);       /* Initialize the font */    BSP_LCD_SetFont(&LCD_DEFAULT_FONT);    if (D < 0)    {       D += (CurX << 2) + 6;    }    else    {      D += ((CurX - CurY) << 2) + 10;      CurY--;    }    CurX++;  } }
开发者ID:PaulingZhou,项目名称:RM2016_0X3_SystemBoard,代码行数:50,


示例7: BSP_LCD_DrawCircle

/**  * @brief  Draws a circle.  * @param  Xpos: X position  * @param  Ypos: Y position  * @param  Radius: Circle radius  * @retval None  */void BSP_LCD_DrawCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius){  int32_t  decision;       /* Decision Variable */   uint32_t  current_x;   /* Current X Value */  uint32_t  current_y;   /* Current Y Value */     decision = 3 - (Radius << 1);  current_x = 0;  current_y = Radius;    while (current_x <= current_y)  {    BSP_LCD_DrawPixel((Xpos + current_x), (Ypos - current_y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - current_x), (Ypos - current_y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + current_y), (Ypos - current_x), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - current_y), (Ypos - current_x), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + current_x), (Ypos + current_y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - current_x), (Ypos + current_y), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos + current_y), (Ypos + current_x), DrawProp.TextColor);    BSP_LCD_DrawPixel((Xpos - current_y), (Ypos + current_x), DrawProp.TextColor);       /* Initialize the font */    BSP_LCD_SetFont(&LCD_DEFAULT_FONT);    if (decision < 0)    {       decision += (current_x << 2) + 6;    }    else    {      decision += ((current_x - current_y) << 2) + 10;      current_y--;    }    current_x++;  } }
开发者ID:Lembed,项目名称:STM32CubeF4-mirrors,代码行数:50,


示例8: BSP_LCD_DrawCircle

/**  * @brief  Draws a circle.  * @param  Xpos: X position  * @param  Ypos: Y position  * @param  Radius: Circle radius  * @retval None  */void BSP_LCD_DrawCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius){  int32_t   D;    /* Decision Variable */  uint32_t  CurX; /* Current X Value */  uint32_t  CurY; /* Current Y Value */  D = 3 - (Radius << 1);  CurX = 0;  CurY = Radius;  while (CurX <= CurY)  {    BSP_LCD_DrawPixel((Xpos + CurX), (Ypos - CurY), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - CurX), (Ypos - CurY), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + CurY), (Ypos - CurX), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - CurY), (Ypos - CurX), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + CurX), (Ypos + CurY), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - CurX), (Ypos + CurY), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos + CurY), (Ypos + CurX), DrawProp[ActiveLayer].TextColor);    BSP_LCD_DrawPixel((Xpos - CurY), (Ypos + CurX), DrawProp[ActiveLayer].TextColor);    if (D < 0)    {      D += (CurX << 2) + 6;    }    else    {      D += ((CurX - CurY) << 2) + 10;      CurY--;    }    CurX++;  }}
开发者ID:Joe-Merten,项目名称:Stm32-Tools-Evaluation,代码行数:47,


示例9: kStorage_OpenFileDrawPixel

/**  * @brief  Open a file and draw each pixel of the corresponding file  * @param  xpos: x position for the image   * @param  xpos: y position for the image  * @param  BmpName : file name  * @retval err: Error status (0=> success, 1=> fail)  */STORAGE_RETURN kStorage_OpenFileDrawPixel(uint16_t xpos, uint16_t ypos, uint8_t *BmpName){  uint32_t index, size, width, height; #if 0  uint32_t x;  uint16_t color;#endif    uint32_t bmpaddress, bit_pixel;  unsigned int BytesRead;  FIL file1;  uint8_t *kstorage_tmpbuffer = NULL;    if(f_open(&file1, (char *)BmpName, FA_READ) != FR_OK)  {    return KSTORAGE_ERROR_OPEN;  }    /* Memory allocation for the BMP header */  kstorage_tmpbuffer = malloc(sizeof(uint8_t)*30);  if(kstorage_tmpbuffer==NULL)  {    f_close(&file1);    return KSTORAGE_ERROR_MALLOC;  }  /* Read BMP header */  if(f_read(&file1, (char *)kstorage_tmpbuffer, 30, &BytesRead) != FR_OK)  {    free(kstorage_tmpbuffer);    f_close(&file1);    return KSTORAGE_ERROR_READ;  }      /* get the bmpadress */  bmpaddress = (uint32_t)kstorage_tmpbuffer;    /* Read bitmap size */  size  =  *(uint16_t *) (bmpaddress + 2);  size |= (*(uint16_t *) (bmpaddress + 4)) << 16;    /* Get bitmap data address offset */  index  =  *(uint16_t *) (bmpaddress + 10);  index |= (*(uint16_t *) (bmpaddress + 12)) << 16;    /* Read bitmap width */  width  =  *(uint16_t *) (bmpaddress + 18);  width |= (*(uint16_t *) (bmpaddress + 20)) << 16;    /* Read bitmap height */  height  =  *(uint16_t *) (bmpaddress + 22);  height |= (*(uint16_t *) (bmpaddress + 24)) << 16;    /* Read bit/pixel */  bit_pixel = (*(uint16_t *) (bmpaddress + 28)) / 8;    // bit_pixel = bit_pixel/8;    size = (size - index);  xpos = xpos + height - 1;  /* Synchronize f_read right in front of the image data */  f_close (&file1);     /* Memory allocation for the BMP data line */  free(kstorage_tmpbuffer);  kstorage_tmpbuffer = malloc(sizeof(uint8_t)*width*bit_pixel);  if(kstorage_tmpbuffer==NULL)  {    return KSTORAGE_ERROR_OPEN;  }  f_open (&file1, (TCHAR const*)BmpName, FA_READ);    f_read(&file1, kstorage_tmpbuffer, index, &BytesRead);  do {    /* read a line */    f_read(&file1, kstorage_tmpbuffer, width*bit_pixel, &BytesRead);    size -= width*bit_pixel;#if 0    /* display each pixel of the line */    for (x = 0; x < width; x++)    {      color = (kstorage_tmpbuffer[ 2*x+1] << 8) | kstorage_tmpbuffer[ 2 * x];      BSP_LCD_DrawPixel(xpos, ypos + x, color);     }#elseextern void     hx8347d_SetCursor(uint16_t Xpos, uint16_t Ypos);    //void                      LCD_IO_WriteMultipleData(uint8_t *pData, uint32_t Size);//void                      LCD_IO_WriteReg(uint8_t Reg); //  hx8347d_WriteReg(LCD_REG_22, 0xA0); /* Set Cursor */  hx8347d_SetCursor(xpos, ypos);//.........这里部分代码省略.........
开发者ID:GreyCardinalRus,项目名称:stm32-cube,代码行数:101,


示例10: BSP_LCD_DrawLine

/**  * @brief  Draws an uni-line (between two points).  * @param  x1: Point 1 X position  * @param  y1: Point 1 Y position  * @param  x2: Point 2 X position  * @param  y2: Point 2 Y position  * @retval None  */void BSP_LCD_DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2){  int16_t deltax = 0, deltay = 0, x = 0, y = 0, xinc1 = 0, xinc2 = 0,   yinc1 = 0, yinc2 = 0, den = 0, num = 0, numadd = 0, numpixels = 0,   curpixel = 0;    deltax = ABS(x2 - x1);        /* The difference between the x's */  deltay = ABS(y2 - y1);        /* The difference between the y's */  x = x1;                       /* Start x off at the first pixel */  y = y1;                       /* Start y off at the first pixel */    if (x2 >= x1)                 /* The x-values are increasing */  {    xinc1 = 1;    xinc2 = 1;  }  else                          /* The x-values are decreasing */  {    xinc1 = -1;    xinc2 = -1;  }    if (y2 >= y1)                 /* The y-values are increasing */  {    yinc1 = 1;    yinc2 = 1;  }  else                          /* The y-values are decreasing */  {    yinc1 = -1;    yinc2 = -1;  }    if (deltax >= deltay)         /* There is at least one x-value for every y-value */  {    xinc1 = 0;                  /* Don't change the x when numerator >= denominator */    yinc2 = 0;                  /* Don't change the y for every iteration */    den = deltax;    num = deltax / 2;    numadd = deltay;    numpixels = deltax;         /* There are more x-values than y-values */  }  else                          /* There is at least one y-value for every x-value */  {    xinc2 = 0;                  /* Don't change the x for every iteration */    yinc1 = 0;                  /* Don't change the y when numerator >= denominator */    den = deltay;    num = deltay / 2;    numadd = deltax;    numpixels = deltay;         /* There are more y-values than x-values */  }    for (curpixel = 0; curpixel <= numpixels; curpixel++)  {    BSP_LCD_DrawPixel(x, y, DrawProp.TextColor);  /* Draw the current pixel */    num += numadd;                            /* Increase the numerator by the top of the fraction */    if (num >= den)                           /* Check if numerator >= denominator */    {      num -= den;                             /* Calculate the new numerator value */      x += xinc1;                             /* Change the x as appropriate */      y += yinc1;                             /* Change the y as appropriate */    }    x += xinc2;                               /* Change the x as appropriate */    y += yinc2;                               /* Change the y as appropriate */  }}
开发者ID:PaulingZhou,项目名称:RM2016_0X3_SystemBoard,代码行数:74,


示例11: Storage_OpenReadFile

/**  * @brief  Open a file and copy its content to a buffer  * @param  Xpoz: X position  * @param  Ypoz: Y position  * @param  BmpName: A pointer to the Bmp file name  * @retval err: Error status (0=> success, 1=> fail)  */uint32_t Storage_OpenReadFile(uint8_t Xpoz, uint16_t Ypoz, const char *BmpName){  uint32_t index = 0, size = 0, width = 0, height = 0, i1 = 0, x = 0, y = 159;  uint32_t bmpaddress, bit_pixel = 0;  FIL file1;  uint16_t color = 0;    f_open(&file1, BmpName, FA_READ);  f_read(&file1, aBuffer, 30, &BytesRead);    bmpaddress = (uint32_t)aBuffer;    /* Read bitmap size */  size = *(uint16_t *) (bmpaddress + 2);  size |= (*(uint16_t *) (bmpaddress + 4)) << 16;    /* Get bitmap data address offset */  index = *(uint16_t *) (bmpaddress + 10);  index |= (*(uint16_t *) (bmpaddress + 12)) << 16;    /* Read bitmap width */  width = *(uint16_t *) (bmpaddress + 18);  width |= (*(uint16_t *) (bmpaddress + 20)) << 16;    /* Read bitmap height */  height = *(uint16_t *) (bmpaddress + 22);  height |= (*(uint16_t *) (bmpaddress + 24)) << 16;    /* Read bit/pixel */  bit_pixel = *(uint16_t *) (bmpaddress + 28);    bit_pixel = bit_pixel/8;    size = (size - index);    /* Synchronize f_read right in front of the image data */  f_close (&file1);     f_open (&file1, (TCHAR const*)BmpName, FA_READ);    f_read(&file1, aBuffer, index, &BytesRead);    do  {    if(size < 512)    {      i1 = size;    }    else    {      i1 = 512;    }    size -= i1;        f_read(&file1, aBuffer, i1, (UINT *)&BytesRead);        for (index = 0; index < (i1/bit_pixel); index++)    {            if( index%bit_pixel == 0)      {        color = (aBuffer[ index + 1] << 8) | aBuffer[ index];      }      x = index/bit_pixel;      BSP_LCD_DrawPixel(x, y, color);     }    y--;    for (index = (i1/bit_pixel); index < i1; index++)    {      if( index%bit_pixel == 0)      {        color = (aBuffer[ index + 1] << 8) | aBuffer[ index];      }       x = index/bit_pixel - width;      BSP_LCD_DrawPixel(x, y, color);     }    y--;  }  while (size > 0);  f_close(&file1);    return 1;}      
开发者ID:451506709,项目名称:automated_machine,代码行数:89,


示例12: BSP_LCD_DrawPixel

void LCD_DISCO_F469NI::DrawPixel(uint16_t Xpos, uint16_t Ypos, uint32_t RGB_Code){  BSP_LCD_DrawPixel(Xpos, Ypos, RGB_Code);}
开发者ID:cjbrigato,项目名称:RFIdea,代码行数:4,



注:本文中的BSP_LCD_DrawPixel函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ BSP_LCD_DrawRect函数代码示例
C++ BSP_LCD_DrawHLine函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。