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

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

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

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

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

示例1: u8g_dev_ssd1325_nhd27oled_2x_gr_fn

static uint8_t u8g_dev_ssd1325_nhd27oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {	uint8_t i;	u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);	uint8_t *p = pb->buf;	u8g_uint_t cnt;	cnt = pb->width;	cnt >>= 2;	for( i = 0; i < pb->p.page_height; i++ )	{	  u8g_dev_ssd1325_gr_prepare_row(u8g, dev, i);		/* this will also enable chip select */	  u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p);	  u8g_SetChipSelect(u8g, dev, 0);        	  p+=cnt;	}      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1);      u8g_SetChipSelect(u8g, dev, 0);            return 1;    case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on);          return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off);          return 1;  }  return u8g_dev_pb16h2_base_fn(u8g, dev, msg, arg);}
开发者ID:azad26195,项目名称:marlin-based-ace-firmware,代码行数:44,


示例2: u8g_dev_uc1610_dogxl160_bw_fn

uint8_t u8g_dev_uc1610_dogxl160_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq);      break;    case U8G_DEV_MSG_STOP:	  u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_stop_seq);      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        int i;        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start);            u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page 1/2 (UC1610) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        for( i = 0; i < WIDTH; i++ )        {          u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] ) );                  }        u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start);            u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page 2/2 (UC1610) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        for( i = 0; i < WIDTH; i++ )        {          u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] >> 4 ) );                  }                u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1);      u8g_SetChipSelect(u8g, dev, 0);            return 1;  }  return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:88kacper8,项目名称:u8glib,代码行数:44,


示例3: u8g_dev_st7565_lm6059_2x_fn

uint8_t u8g_dev_st7565_lm6059_2x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_400NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);	        u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_data_start);            u8g_WriteByte(u8g, dev, 0x0b0 | (2*pb->p.page)); /* select current page (ST7565R) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */	u8g_WriteSequence(u8g, dev, pb->width, pb->buf);         u8g_SetChipSelect(u8g, dev, 0);	u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_data_start);            u8g_WriteByte(u8g, dev, 0x0b0 | (2*pb->p.page+1)); /* select current page (ST7565R) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */	u8g_WriteSequence(u8g, dev, pb->width, (uint8_t *)(pb->buf)+pb->width);         u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2);      u8g_SetChipSelect(u8g, dev, 0);            return 1;    case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_on);          return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_off);          return 1;  }  return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg);}
开发者ID:whdlgp,项目名称:Cupdrone_for_cpp,代码行数:43,


示例4: u8g_dev_uc1610_dogxl160_2x_gr_fn

uint8_t u8g_dev_uc1610_dogxl160_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq);      break;    case U8G_DEV_MSG_STOP:	  u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_stop_seq);      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);                u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start);            u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page (UC1610) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf) == 0 )          return 0;        u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start);            u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page (UC1610) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf+WIDTH) == 0 )          return 0;                u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1);      u8g_SetChipSelect(u8g, dev, 0);            return 1;  }  return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg);}
开发者ID:88kacper8,项目名称:u8glib,代码行数:40,


示例5: u8g_dev_ssd1325_1bit_prepare_page

static void u8g_dev_ssd1325_1bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev){  uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page;    u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq);    page <<= 3;  u8g_WriteByte(u8g, dev, page);       /* start at the selected page */  page += 7;  u8g_WriteByte(u8g, dev, page);       /* end within the selected page */      u8g_SetAddress(u8g, dev, 1);          /* data mode */}
开发者ID:azad26195,项目名称:marlin-based-ace-firmware,代码行数:13,


示例6: u8g_dev_ld7032_60x32_fn

uint8_t u8g_dev_ld7032_60x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_400NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ld7032_60x32_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_ld7032_60x32_data_start);            u8g_WriteByte(u8g, dev, pb->p.page_y0); /* y start */	u8g_SetAddress(u8g, dev, 0);          /* instruction mode */	u8g_WriteByte(u8g, dev, 0x008);        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 )          return 0;        u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2);      u8g_SetChipSelect(u8g, dev, 0);            return 1;    case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ld7032_60x32_sleep_on);          return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ld7032_60x32_sleep_off);          return 1;  }  return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg);}
开发者ID:7134956,项目名称:u8glib,代码行数:39,


示例7: u8g_dev_ssd1309_128x64_fn

uint8_t u8g_dev_ssd1309_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_300NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_data_start);            u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 )          return 0;        u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      u8g_SetChipSelect(u8g, dev, 1);      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_WriteByte(u8g, dev, 0x081);      u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2);      u8g_SetChipSelect(u8g, dev, 0);            return 1;     case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on);          return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off);          return 1;  }  return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:ADVALAIN596,项目名称:BigBox-Dual-Marlin,代码行数:37,


示例8: u8g_dev_pcf8812_fn

uint8_t u8g_dev_pcf8812_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_400NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_pcf8812_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 1);        u8g_WriteByte(u8g, dev, 0x020 );		/* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */        u8g_WriteByte(u8g, dev, 0x080 );                        /* set X address */        u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 )          return 0;	  /*  mirrored output, not tested*/	/*	{	  uint8_t i = pb->width;	  while( i > 0 )	  {	    i--;	    u8g_WriteByte(u8g, dev, ((unsigned char *)pb->buf)[i] );	  }	}	*/		        u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_CONTRAST:      /* the contrast adjustment does not work, needs to be analysed */      u8g_SetAddress(u8g, dev, 0);          /* instruction mode */      u8g_SetChipSelect(u8g, dev, 1);      u8g_WriteByte(u8g, dev, 0x021);        /* command mode, extended function set */      u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) );      u8g_SetChipSelect(u8g, dev, 0);      return 1;  }  return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:3dot3,项目名称:nodemcu-firmware,代码行数:49,


示例9: u8g_dev_st7920_128x64_fn

uint8_t u8g_dev_st7920_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_128x64_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        uint8_t y, i;        uint8_t *ptr;        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);                u8g_SetAddress(u8g, dev, 0);           /* cmd mode */        u8g_SetChipSelect(u8g, dev, 1);        y = pb->p.page_y0;        ptr = pb->buf;        for( i = 0; i < 8; i ++ )        {          u8g_SetAddress(u8g, dev, 0);           /* cmd mode */          u8g_WriteByte(u8g, dev, 0x03e );      /* enable extended mode */          if ( y < 32 )          {                  u8g_WriteByte(u8g, dev, 0x080 | y );      /* y pos  */                  u8g_WriteByte(u8g, dev, 0x080  );      /* set x pos to 0*/          }          else          {                  u8g_WriteByte(u8g, dev, 0x080 | (y-32) );      /* y pos  */                  u8g_WriteByte(u8g, dev, 0x080 | 8);      /* set x pos to 64*/          }                    //u8g_WriteByte(u8g, dev, 0x080 | y );      /* y pos  */          //u8g_WriteByte(u8g, dev, 0x080  );      /* set x pos to 0*/                    u8g_SetAddress(u8g, dev, 1);                  /* data mode */          u8g_WriteSequence(u8g, dev, WIDTH/8, ptr);          ptr += WIDTH/8;          y++;        }        u8g_SetChipSelect(u8g, dev, 0);      }      break;  }  return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg);}
开发者ID:DooMMasteR,项目名称:scootcompute,代码行数:49,


示例10: u8g_dev_ssd1306_128x32_2x_fn

uint8_t u8g_dev_ssd1306_128x32_2x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_300NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_data_start);        u8g_WriteByte(u8g, dev, 0x0b0 | (pb->p.page*2));	/* select current page (SSD1306) */        u8g_SetAddress(u8g, dev, 1);					/* data mode */	u8g_WriteSequence(u8g, dev, pb->width, (uint8_t*)pb->buf);        u8g_SetChipSelect(u8g, dev, 0);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_data_start);        u8g_WriteByte(u8g, dev, 0x0b0 | (pb->p.page*2+1));	/* select current page (SSD1306) */        u8g_SetAddress(u8g, dev, 1);					/* data mode */	u8g_WriteSequence(u8g, dev, pb->width, (uint8_t *)(pb->buf)+pb->width);        u8g_SetChipSelect(u8g, dev, 0);      }      break;    case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on);      return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off);      return 1;  }  return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg);}
开发者ID:dima3dprinters,项目名称:DIMA-LT,代码行数:36,


示例11: u8g_dev_st7565_lm6059_fn

uint8_t u8g_dev_st7565_lm6059_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){    switch(msg)    {    case U8G_DEV_MSG_INIT:        u8g_InitCom(u8g, dev);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_init_seq);        break;    case U8G_DEV_MSG_STOP:        break;    case U8G_DEV_MSG_PAGE_NEXT:    {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_data_start);        u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 )            return 0;        u8g_SetChipSelect(u8g, dev, 0);    }    break;    }    return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:janblumenkamp,项目名称:rcj2015,代码行数:24,


示例12: u8g_dev_lc7981_160x80_fn

uint8_t u8g_dev_lc7981_160x80_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_NONE);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_160x80_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        uint8_t y, i;        uint16_t disp_ram_adr;        uint8_t *ptr;        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);                u8g_SetAddress(u8g, dev, 1);           /* cmd mode */        u8g_SetChipSelect(u8g, dev, 1);        y = pb->p.page_y0;        ptr = (uint8_t *)(pb->buf);		//Spark, modified from ptr = pb->buf        disp_ram_adr = WIDTH/8;        disp_ram_adr *= y;        for( i = 0; i < 8; i ++ )        {          u8g_SetAddress(u8g, dev, 1);           /* cmd mode */          u8g_WriteByte(u8g, dev, 0x00a );      /* display ram (cursor) address low byte */          u8g_SetAddress(u8g, dev, 0);           /* data mode */          u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff );            u8g_SetAddress(u8g, dev, 1);           /* cmd mode */          u8g_WriteByte(u8g, dev, 0x00b );      /* display ram (cursor) address hight byte */          u8g_SetAddress(u8g, dev, 0);           /* data mode */          u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 );                      u8g_SetAddress(u8g, dev, 1);           /* cmd mode */          u8g_WriteByte(u8g, dev, 0x00c );      /* write data */          u8g_SetAddress(u8g, dev, 0);           /* data mode */          u8g_WriteSequence(u8g, dev, WIDTH/8, ptr);          ptr += WIDTH/8;          disp_ram_adr += WIDTH/8;        }        u8g_SetChipSelect(u8g, dev, 0);      }      break;  }  return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg);}
开发者ID:pkourany,项目名称:u8glibSpark,代码行数:48,


示例13: u8g_dev_ssd1327_2bit_2x_prepare_page

static void u8g_dev_ssd1327_2bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd){  uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page;    u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_prepare_page_seq);    page <<= 1;  page += is_odd;    page <<= 2;  u8g_WriteByte(u8g, dev, page);       /* start at the selected page */  page += 3;  u8g_WriteByte(u8g, dev, page);       /* end within the selected page */      u8g_SetAddress(u8g, dev, 1);          /* data mode */}
开发者ID:azad26195,项目名称:marlin-based-ace-firmware,代码行数:16,


示例14: u8g_dev_ssd1322_1bit_prepare_row

static void u8g_dev_ssd1322_1bit_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row){  uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page;    row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height;  row += delta_row;    u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_prepare_page_seq);    u8g_WriteByte(u8g, dev, row);       /* start at the selected row */  u8g_WriteByte(u8g, dev, row+1);       /* end within the selected row */      u8g_SetAddress(u8g, dev, 0);          /* instruction mode mode */  u8g_WriteByte(u8g, dev, 0x05c);       /* write to ram */    u8g_SetAddress(u8g, dev, 1);          /* data mode */}
开发者ID:pkourany,项目名称:u8glibSpark,代码行数:16,


示例15: u8g_dev_st75256_jlx240160g676_4x_fn

/******************************************************************************* * jlx240160g-676 4x peed driver. More ram. ******************************************************************************/uint8_t u8g_dev_st75256_jlx240160g676_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) {	uint16_t i;	switch (msg) {	case U8G_DEV_MSG_INIT:		u8g_InitCom(u8g, dev, NULL);		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_init_seq);		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_data_start1);		u8g_WriteByte(u8g, dev, 1); // Set start page		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_data_start2);		for (i = 0; i < (WIDTH * HEIGHT/PAGE_HEIGHT); i++) {			u8g_WriteByte(u8g, dev, 0x00); //Заполняем дисплей белым		}		break;	case U8G_DEV_MSG_PAGE_NEXT: {		uint8_t y, i;		uint8_t *ptr;		u8g_pb_t *pb = (u8g_pb_t *) (dev->dev_mem);		u8g_SetChipSelect(u8g, dev, 1);		y = pb->p.page_y0;		ptr = pb->buf;		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_data_start1);		u8g_WriteByte(u8g, dev, 1 + y); // Set start page		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_data_start2);		for (i = 0; i < 4; i++) {			u8g_WriteSequence(u8g, dev, WIDTH, ptr);			ptr += WIDTH;			y++;		}		u8g_SetChipSelect(u8g, dev, 0);	}		break;	case U8G_DEV_MSG_CONTRAST:		u8g_SetChipSelect(u8g, dev, 1);		u8g_SetAddress(u8g, dev, 0); /* instruction mode */		u8g_WriteByte(u8g, dev, 0x81);		u8g_SetAddress(u8g, dev, 1); /* data mode */		u8g_WriteByte(u8g, dev, (*(uint8_t *) arg % 64));		u8g_WriteByte(u8g, dev, 3 + (*(uint8_t *) arg / 64));		u8g_SetChipSelect(u8g, dev, 0);		return 1;	case U8G_DEV_MSG_SLEEP_ON:		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_sleep_on);		return 1;	case U8G_DEV_MSG_SLEEP_OFF:		u8g_WriteEscSeqP(u8g, dev, u8g_dev_st75256_sleep_off);		return 1;	}	return u8g_dev_pb32v1_base_fn(u8g, dev, msg, arg);}
开发者ID:7134956,项目名称:u8glib,代码行数:52,


示例16: u8g_dev_t6963_240x128_fn

uint8_t u8g_dev_t6963_240x128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);          u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_240x128_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        uint8_t y, i;        uint16_t disp_ram_adr;        uint8_t *ptr;        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        	u8g_SetAddress(u8g, dev, 0);           /* data mode */        u8g_SetChipSelect(u8g, dev, 1);        y = pb->p.page_y0;        ptr = pb->buf;        disp_ram_adr = WIDTH/8;        disp_ram_adr *= y;        for( i = 0; i < PAGE_HEIGHT; i ++ )        {          u8g_SetAddress(u8g, dev, 0);           /* data mode */          u8g_WriteByte(u8g, dev, disp_ram_adr&255 );      /* address low byte */          u8g_WriteByte(u8g, dev, disp_ram_adr>>8 );      /* address hight byte */          u8g_SetAddress(u8g, dev, 1);           /* cmd mode */          u8g_WriteByte(u8g, dev, 0x024 );      /* set adr ptr */	            u8g_WriteSequence(u8g, dev, WIDTH/8, ptr);		            ptr += WIDTH/8;          disp_ram_adr += WIDTH/8;        }	u8g_SetAddress(u8g, dev, 0);           /* data mode */        u8g_SetChipSelect(u8g, dev, 0);      }      break;  }  return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg);}
开发者ID:azad26195,项目名称:marlin-based-ace-firmware,代码行数:44,


示例17: u8g_dev_sbn1661_122x32_fn

uint8_t u8g_dev_sbn1661_122x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_NONE);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_sbn1661_122x32_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);	        u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 1);        u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */        u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        u8g_WriteSequence(u8g, dev, WIDTH/2, pb->buf);	        u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 2);        u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */        u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        u8g_WriteSequence(u8g, dev, WIDTH/2, WIDTH/2+(uint8_t *)pb->buf);	        u8g_SetChipSelect(u8g, dev, 0);	      }      break;    case U8G_DEV_MSG_CONTRAST:      break;  }  return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:korytov,项目名称:bone,代码行数:37,


示例18: u8g_dev_ks0108_128x64_fn

uint8_t u8g_dev_ks0108_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){    switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ks0108_128x64_init_seq);      break;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_NEXT:      {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);                u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 2);        u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */        u8g_WriteByte(u8g, dev, 0x040 );		/* set address 0 */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        u8g_WriteSequence(u8g, dev, 64, pb->buf);        u8g_SetChipSelect(u8g, dev, 0);                u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 1);        u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */        u8g_WriteByte(u8g, dev, 0x040 );		/* set address 0 */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        u8g_WriteSequence(u8g, dev, 64, 64+(uint8_t *)pb->buf);        u8g_SetChipSelect(u8g, dev, 0);              }      break;  }  return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:azad26195,项目名称:marlin-based-ace-firmware,代码行数:36,


示例19: u8g_dev_tls8204_fn

uint8_t u8g_dev_tls8204_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){    switch(msg)    {    case U8G_DEV_MSG_INIT:        u8g_InitCom(u8g, dev);        u8g_WriteEscSeqP(u8g, dev, u8g_dev_tls8204_init_seq);        break;    case U8G_DEV_MSG_STOP:        break;    case U8G_DEV_MSG_PAGE_NEXT:    {        u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);        u8g_SetAddress(u8g, dev, 0);           /* command mode */        u8g_SetChipSelect(u8g, dev, 1);        u8g_WriteByte(u8g, dev, 0x020 );		/* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */        u8g_WriteByte(u8g, dev, 0x080 );                        /* set X address */        u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */        u8g_SetAddress(u8g, dev, 1);           /* data mode */        if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 )            return 0;        u8g_SetChipSelect(u8g, dev, 0);    }    break;    case U8G_DEV_MSG_CONTRAST:        /* the contrast adjustment does not work, needs to be analysed */        u8g_SetAddress(u8g, dev, 0);          /* instruction mode */        u8g_SetChipSelect(u8g, dev, 1);        u8g_WriteByte(u8g, dev, 0x021);        /* command mode, extended function set */        u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) );        u8g_WriteByte(u8g, dev, 0x020);        /* command mode, extended function set */        u8g_SetChipSelect(u8g, dev, 0);        return 1;    }    return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg);}
开发者ID:445106011,项目名称:Ultimaker2Marlin,代码行数:36,


示例20: u8g_dev_ssd1351_128x128_18bpp_fn

uint8_t u8g_dev_ssd1351_128x128_18bpp_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg){  switch(msg)  {    case U8G_DEV_MSG_INIT:      u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_50NS);      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1351_128x128_18bpp_init_seq);      break;    case U8G_DEV_MSG_SLEEP_ON:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on);          return 1;    case U8G_DEV_MSG_SLEEP_OFF:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off);          return 1;    case U8G_DEV_MSG_STOP:      break;    case U8G_DEV_MSG_PAGE_FIRST:      u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1351_128x128_column_seq);      break;    case U8G_DEV_MSG_PAGE_NEXT:	{		u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);		uint8_t i, j, k;		uint8_t page_height;		uint8_t *ptr = pb->buf;		u8g_SetChipSelect(u8g, dev, 1);		page_height = pb->p.page_y1;		page_height -= pb->p.page_y0;		page_height++;		for( j = 0; j < page_height; j++ ) { /* for each line in the page... */			for (i = 0; i < pb->width; i+= RGB332_STREAM_BYTES ) { /* for each stream in the line... */				/* Convert the pixel data from 24bpp to 18bpp. This discards the				 * lower two bits of source data for each color channel, so any				 * 18-bpp source data must be left-shifted to accommodate.				 */				uint8_t *dest = u8g_ssd1351_stream_bytes;				for ( k = 0; k < RGB332_STREAM_BYTES*3; k++ ) { /* for each pixel in the stream... */					*dest++ = *ptr++ >> 2;				}				/* Write the stream out to the display: */				u8g_WriteSequence(					u8g, dev, RGB332_STREAM_BYTES*3, u8g_ssd1351_stream_bytes				);			}		}		u8g_SetChipSelect(u8g, dev, 0);		break;    /* continue to base fn */	}    case U8G_DEV_MSG_GET_MODE:     return U8G_MODE_18BPP;  }  return u8g_dev_pbxh24_base_fn(u8g, dev, msg, arg);}
开发者ID:mtl,项目名称:tmk_keyboard,代码行数:61,



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


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