⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 displaydrv.c

📁 logic display driver
💻 C
📖 第 1 页 / 共 4 页
字号:
	/*--  文字:  >	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x30,0x18,0x0C,0x06,0x0C,0x18,0x30,0x60,0x00,0x00,0x00,0x00,
	
	/*--  文字:  ?	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x66,0x0C,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
	
	/*--  文字:  @	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0xC3,0xC3,0xCF,0xDB,0xDB,0xCF,0xC0,0x7F,0x00,0x00,0x00,0x00,
	
	/*--  文字:  A	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x18,0x3C,0x66,0x66,0x66,0x7E,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  B	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x7C,0x66,0x66,0x66,0x7C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  C	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x66,0x60,0x60,0x60,0x66,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  D	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x78,0x6C,0x66,0x66,0x66,0x66,0x66,0x6C,0x78,0x00,0x00,0x00,0x00,
	
	/*--  文字:  E	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x60,0x60,0x60,0x7C,0x60,0x60,0x60,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  F	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x60,0x60,0x60,0x7C,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,
	
	/*--  文字:  G	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x66,0x60,0x60,0x6E,0x66,0x66,0x3E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  H	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x7E,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  I	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  J	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x06,0x06,0x06,0x06,0x06,0x06,0x66,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  K	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x6C,0x6C,0x78,0x6C,0x6C,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  L	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  M	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x63,0x63,0x77,0x6B,0x6B,0x6B,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
	
	/*--  文字:  N	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x63,0x63,0x73,0x7B,0x6F,0x67,0x63,0x63,0x63,0x00,0x00,0x00,0x00,
	
	/*--  文字:  O	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  P	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x7C,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,
	
	/*--  文字:  Q	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x0C,0x06,0x00,0x00,
	
	/*--  文字:  R	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x7C,0x6C,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  S	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x66,0x60,0x30,0x18,0x0C,0x06,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  T	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,
	
	/*--  文字:  U	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  V	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x18,0x00,0x00,0x00,0x00,
	
	/*--  文字:  W	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x63,0x63,0x63,0x6B,0x6B,0x6B,0x36,0x36,0x36,0x00,0x00,0x00,0x00,
	
	/*--  文字:  X	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x34,0x18,0x18,0x2C,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  Y	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x3C,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,
	
	/*--  文字:  Z	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x06,0x06,0x0C,0x18,0x30,0x60,0x60,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  [	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3C,0x00,
	
	/*--  文字:  \	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x60,0x30,0x30,0x18,0x18,0x0C,0x0C,0x06,0x06,0x00,0x00,0x00,
	
	/*--  文字:  ]	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00,
	
	/*--  文字:  ^	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x18,0x3C,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	
	/*--  文字:  _	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,
	
	/*--  文字:  `	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x38,0x18,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	
	/*--  文字:  a	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3C,0x06,0x06,0x3E,0x66,0x66,0x3E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  b	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x66,0x7C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  c	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x60,0x60,0x60,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  d	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x06,0x06,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  e	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x66,0x7E,0x60,0x60,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  f	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x1E,0x30,0x30,0x30,0x7E,0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x00,
	
	/*--  文字:  g	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x06,0x06,0x7C,0x00,
	
	/*--  文字:  h	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x60,0x7C,0x66,0x66,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  i	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x18,0x18,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  j	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x0C,0x0C,0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x0C,0x78,0x00,
	
	/*--  文字:  k	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x60,0x60,0x66,0x66,0x6C,0x78,0x6C,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  l	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  m	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x7E,0x6B,0x6B,0x6B,0x6B,0x6B,0x63,0x00,0x00,0x00,0x00,
	
	/*--  文字:  n	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  o	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x66,0x66,0x3C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  p	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x7C,0x66,0x66,0x66,0x66,0x66,0x7C,0x60,0x60,0x60,0x00,
	
	/*--  文字:  q	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3E,0x66,0x66,0x66,0x66,0x66,0x3E,0x06,0x06,0x06,0x00,
	
	/*--  文字:  r	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x66,0x6E,0x70,0x60,0x60,0x60,0x60,0x00,0x00,0x00,0x00,
	
	/*--  文字:  s	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x3E,0x60,0x60,0x3C,0x06,0x06,0x7C,0x00,0x00,0x00,0x00,
	
	/*--  文字:  t	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x30,0x30,0x7E,0x30,0x30,0x30,0x30,0x30,0x1E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  u	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  v	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x3C,0x18,0x00,0x00,0x00,0x00,
	
	/*--  文字:  w	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x63,0x6B,0x6B,0x6B,0x6B,0x36,0x36,0x00,0x00,0x00,0x00,
	
	/*--  文字:  x	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x3C,0x18,0x3C,0x66,0x66,0x00,0x00,0x00,0x00,
	
	/*--  文字:  y	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x0C,0x18,0xF0,0x00,
	
	/*--  文字:  z	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x00,0x00,0x7E,0x06,0x0C,0x18,0x30,0x60,0x7E,0x00,0x00,0x00,0x00,
	
	/*--  文字:  {	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x0C,0x18,0x18,0x18,0x30,0x60,0x30,0x18,0x18,0x18,0x0C,0x00,0x00,
	
	/*--  文字:  |	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,
	
	/*--  文字:  }	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x30,0x18,0x18,0x18,0x0C,0x06,0x0C,0x18,0x18,0x18,0x30,0x00,0x00,
	
	/*--  文字:  ~	--*/
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x71,0xDB,0x8E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	
	
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00,0x00,0x00,0x00,
	
	
	/*--  Fixedsys12;  此字体下对应的点阵为:宽x高=8x16   --*/
	0x00,0x00,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00,0x00,0x00,0x00,
	
	};
	
/*------------------------------------------------------------------------*/
/*
Name:	 DisplayDrvGetDrv
Desc:	 -获取系统显示属性信息之指针
Params:  -
Returns: - 显示属性信息之指针
Caveats: - 
*/	
DisplayDef* DisplayDrvGetDrv( void )
{
   static DisplayDef gDisDrv = { &LogicScreen, PIXELSCREEN_W, PIXELSCREEN_H };
   return &gDisDrv;
}
/*------------------------------------------------------------------------*/
/*
Name:	 DisplayDrvGetFont
Desc:	 -获取系统字体指针
Params:  -
Returns: - &gFont
Caveats: - 
*/	
OSFFont* DisplayDrvGetFont( void )
{
   static OSFFont gFont = { FONT_W, FONT_H };
   return &gFont;   
}	
/*------------------------------------------------------------------------*/
/*
Name:	 DisplayDrvDrawOneASCII
Desc:	 -向逻辑屏画一个ASCII字符
Params:  -Pos:坐标; c:ASCII码;fontColor:字体颜色;font:字体属性;disDrv:逻辑屏属性
Returns: - 
Caveats: - 
*/	
void DisplayDrvDrawOneASCII( OSFPos* pPos, char c, UINT16 fontColor , OSFFont* pFont ,const DisplayDef * disDrv )
{
	  UINT16 *lpAC = ( UINT16* )( disDrv->pLogicScreen )+ pPos->y  * disDrv->LogicScreenWidth + pPos->x;		  
	  UINT16 i, j;
	  UINT8 BIT_MASK;
	  UINT8 *pSource = ( UINT8 * )&ASCII_MODE[ 0 ] + (( unsigned char )c ) * ASCII_MODE_SIZE;
	  
	  for( j = 0; j < ASCII_MODE_SIZE ; j++ )
		{
		   BIT_MASK = 0x80;
		   for( i = 0 ; i < ASCII_FONT_W  ; i++ ) /*一行的左半部分*/
			{		
			  if( ( *pSource ) & BIT_MASK ) 
				{
				  *lpAC = fontColor;
				}
			  lpAC++;
			  BIT_MASK >>= 1;
			}
		   
		   pSource++;		 
		   lpAC = lpAC - ASCII_FONT_W + disDrv->LogicScreenWidth; /*指向一下*/
		}
	  UNUSED( pFont );
}	

/*------------------------------------------------------------------------*/
/*
Name:	 DisplayDrvCheckPos
Desc:	 -校验坐标
Params:  -pPos[ int/out]:坐标,w[ in ]:增加的宽度; h[in] : 增加的高度, disDrv[ in ] : 逻辑屏属性
Returns: - 
Caveats: - 
*/		
void DisplayDrvCheckPos( OSFPos *pPos , UINT16 w,  UINT16 h,  const DisplayDef * disDrv )
{
	if( ( pPos->x + w )  >  disDrv->LogicScreenWidth  ) /* check X */
		{				
		  pPos->x = 0;
		  pPos->y += h ;			 
		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -