![]() |
DOS DM&P LCM 库参考手册 |
| 2003/01/06 Version 0.25 |
如果你有任何问题,请联系我们,邮件地址: tech@dmp.com.cn
#include <stdio.h>
#include "grlcm.h"
void main()
{
char cType;
int nLcmType, nLcmSize;
int nMaxX, nMaxY;
/*
Bitmap buffer to display. One bit to one pixel.
for this 8x8 buffer:
10000001
01000010
00100100
00011000
00011000
00100100
01000010
10000001
Note: The width of bitmap must be byte boundary.
If you want to define a 20x15 image. You should define a
((20+8)/8)*15 = 3*15 bytes buffer.
*/
char pcImage[] = { 0x81,0x42,0x24,0x18,0x18,0x24,0x42,0x81 };
printf("\nDM&P Graphic LCM Library Demo Program, %s %s.\n\n",__DATE__,__TIME__);
printf("GrLCM Library Version %s\n\n",GrLcm_Version());
/* Select LCM type */
printf("1. 122X32 \n");
printf("2. 128X64 \n");
printf("3. 320X240\n");
printf("4. 128X128\n");
printf("5. 240X128\n");
printf("6. 240X64 \n");
printf("Your LCM type: ");
cType = getch();
printf("%c\n",cType);
switch(cType)
{
case '1': nLcmSize = LCM_122X32; break;
case '2': nLcmSize = LCM_128X64; break;
case '3': nLcmSize = LCM_320X240; break;
case '4': nLcmSize = LCM_128X128; break;
case '5': nLcmSize = LCM_240X128; break;
case '6': nLcmSize = LCM_240X64; break;
}
/* Select LCM interface */
printf("\n");
printf("1. GPIO\n");
printf("2. Printer port\n");
printf("3. VGA emulator\n");
printf("Your interface type: ");
cType = getch();
printf("%c\n",cType);
switch(cType)
{
case '1': nLcmType = LCM_GPIO; break;
case '2': nLcmType = LCM_PRN; break;
case '3': nLcmType = LCM_VGA; break;
}
/* Initialize graphic LCM library */
if(GrLcm_Init(nLcmType,nLcmSize)==0)
{
printf("Unable to initialize LCM library.\n");
return;
}
/* Select font size */
GrLcm_SetFontType(LCM_FONT_5X7);
/* Clear LCM. Show DM&P logo and text "Hello" */
GrLcm_ClearScreen();
GrLcm_DisplayBitmapFile(0,0,"dmp.bmp");
GrLcm_printf(70,0,"Hello");
/* Display bitmap buffer */
GrLcm_DisplayBitmap(70,10,8,8,pcImage);
/* Line function test */
nMaxX = GrLcm_GetMaxX() - 1;
nMaxY = GrLcm_GetMaxY() - 1;
GrLcm_DrawLine( 0, 0,nMaxX, 0);
GrLcm_DrawLine(nMaxX, 0,nMaxX,nMaxY);
GrLcm_DrawLine(nMaxX,nMaxY, 0,nMaxY);
GrLcm_DrawLine( 0,nMaxY, 0, 0);
GrLcm_DrawLine( 0, 0,nMaxX,nMaxY);
GrLcm_DrawLine(nMaxX, 0, 0,nMaxY);
getch();
/* Close GrLCM library */
GrLcm_Close();
printf("Program terminated.\n");
} |
| 说明: | 获取库版本字符串 | ||
| 参数: |
|
||
| 举例: |
/* Show GrLCM version. */
printf("DM&P GrLCM Library Version %s\n",GrLcm_Version());
|
| 说明: | 关闭图形LCM | |
| 参数: |
|
|
| 举例: |
GrLcm_Close(); |
| 说明: | 初始化图形LCM,设置I/O连接模式 | ||||||
| 参数: |
|
||||||
| 举例: |
if(GrLcm_Init(LCM_GPIO,LCM_128X64))
printf("Unable to initialize LCM library\n");
|
| 说明: | 设置字体大小,GrLcm_printf()函数调用 | ||
| 参数: |
|
||
| 举例: |
GrLcm_SetFontType(FONT_5X7); |
| 说明: | 获取字体大小,GrLcm_printf()函数调用 | ||
| 参数: |
|
||
| 举例: |
if(GrLcm_GetFontType()==FONT_5X7)
printf("Font size is 5X7.\n");
|
| 说明: | 设置语言类型,GrLcm_printf()函数调用 | ||||
| 参数: |
|
||||
| 举例: |
GrLcm_SetLanguage(LCM_CHINESE_BIG5); GrLcm_SetFontType(FONT_8X16); |
| 说明: | 获取语言类型,GrLcm_printf()函数调用 | ||
| 参数: |
|
||
| 举例: |
if(GrLcm_GetLanguage()==LCM_CHINESE_BIG)
printf("Trad. Chinses is used.\n");
|
| 说明: | 在LCM上打印格式化字符串 | ||||||
| 参数: |
|
||||||
| 举例: |
GrLcm_printf(0,0,"<Mity-Mite Module>\nIP:192.168.0.100"); |
| 说明: | 在LCM上打印格式化字符串,并且可以选择字体类型 | ||||||||
| 参数: |
|
||||||||
| 举例: |
GrLcm_printf2(0,0,LCM_FONT_5X7,"<Mity-Mite Module>\nIP:192.168.0.100"); |
| 说明: | 在LCM上打印格式化字符串,并且可以选择语言类型 | ||||||||||
| 参数: |
|
||||||||||
| 举例: |
GrLcm_SetFontType(FONT_8X16); GrLcm_printf3(0,0,LCM_ENGLISH,"<Mity-Mite Module>\nIP:192.168.0.100"); |
| 说明: | 清屏LCM |
| 参数: | N/A |
| 举例: |
GrLcm_ClearScreen(); GrLcm_printf(0,0," |
| 说明: | 清除LCM上一个矩形区域 | ||||||||
| 参数: |
|
||||||||
| 举例: |
GrLcm_ClearRect(0,0,100,20); |
| 说明: | 在LCM上显示一幅位图 | ||||||
| 参数: |
|
||||||
| 举例: |
GrLcm_DisplayBitmapFile(0,0,"dmp.bmp"); |
| 说明: | 在LCM上显示一个位图缓冲区 | ||||||||||||
| 参数: |
|
||||||||||||
| 举例: |
char pcImage[] = { 0x81,0x42,0x24,0x18,0x08,0x04,0x02,0x01 };
/* Display bitmap buffer */
GrLcm_DisplayBitmap(70,10,8,8,pcImage);
|
| 说明: | 在LCM上画一条线 | ||||||||
| 参数: |
|
||||||||
| 举例: |
GrLcm_DrawLine(0,0,100,50); |
| 说明: | 在LCM上画一个点 | ||||
| 参数: |
|
||||
| 举例: |
GrLcm_DrawDot(10,10); |
| 说明: | 获取LCM宽度 | ||
| 参数: |
|
||
| 举例: |
int nMaxX = GrLcm_GetMaxX(); |
| 说明: | 获取LCM高度 | ||
| 参数: |
|
||
| 举例: |
int nMaxX = GrLcm_GetMaxX(); |
| Jan Yin Chan Electronics Co., LTD.保留所有权利。 | Email us: tech@dmp.com.cn |