?? ocmj.txt
字號(hào):
Void OCMJ_WR(unsigned char dat)
{
OCM_STB=0;
while(OCM_BUSY);
PORT_DATA=dat;
delay_us(1);
OCM_STB=1;
delay_us(1);
while(!OCM_BUSY);
OCM_STB=0;
beepims(20);
}
/***************************************************
1)顯示國(guó)標(biāo)漢字
命令格式: F0 XX YY QQ WW
該命令為5字節(jié)命令(最大執(zhí)行時(shí)間為1.2毫秒,Ts2=1.2mS),
其中 XX:為以漢字為單位的屏幕行坐標(biāo)值,取值范圍00到07、02到09、00到09
YY:為以漢字為單位的屏幕列坐標(biāo)值,取值范圍00到01、00到03、00到04
QQ WW:坐標(biāo)位置上要顯示的GB 2312 漢字區(qū)位碼
*****************************************************/
void OCMJ_WR_CN(char xx,char yy,char* pData)
{
OCMJ_WR(0xf0);
OCMJ_WR(xx);
OCMJ_WR(yy);
OCMJ_WR(*pData);
OCMJ_WR(*(pData++));
}
/*
局部清屏指令 F0 XX YY 55D 90D 此指令可清屏16X16點(diǎn)陣區(qū)域
*/
void OCMJ_CLR_CN(char xx,char yy)
{
OCMJ_WR(0xf0);
OCMJ_WR(xx);
OCMJ_WR(yy);
OCMJ_WR(55);
OCMJ_WR(90);
}
/***************************************************
2) 顯示8X8 ASCII字符
命令格式:F1 XX YY AS
該命令為4字節(jié)命令(最大執(zhí)行時(shí)間為0.8毫秒,Ts2=0.8mS),
其中 XX:為以ASCII碼為單位的屏幕行坐標(biāo)值,取值范圍00到0F、04到13、00到13
YY:為以ASCII碼為單位的屏幕列坐標(biāo)值,取值范圍00到1F、00到3F、00到4F
AS:坐標(biāo)位置上要顯示的ASCII 字符碼
****************************************************/
void OCMJ_ASCII8(char xx,char yy,char as)
{
OCMJ_WR(0xf1);
OCMJ_WR(xx);
OCMJ_WR(yy);
OCMJ_WR(as);
}
/*
BT:字節(jié)像素值,0 顯示白點(diǎn),1 顯示黑點(diǎn) (顯示字節(jié)為橫向)
*/
void OCMJ_Dot8(char xx,char yy,char BT);
void OCMJ_CLR_ASCII8(char xx,char yy)
{ char i;
for(i=0;i<8;i++)
OCMJ_Dot8(xx,yy+i,0);//BT:字節(jié)像素值,0 顯示白點(diǎn),1 顯示黑點(diǎn) (顯示字節(jié)為橫向)
}
/**************************************************
3) 顯示8X16 ASCII字符
命令格式:F9 XX YY AS
該命令為4字節(jié)命令(最大執(zhí)行時(shí)間為1.0毫秒,Ts2=1.0mS),
其中 XX:為以ASCII碼為單位的屏幕行坐標(biāo)值,取值范圍00到0F、04到13、00到13
YY:為以ASCII碼為單位的屏幕列坐標(biāo)值,取值范圍00到1F、00到3F、00到4F
AS:坐標(biāo)位置上要顯示的ASCII 字符碼
****************************************************/
void OCMJ_ASCII16(char xx,char yy,char as)
{
OCMJ_WR(0xf9);
OCMJ_WR(xx);
OCMJ_WR(yy);
OCMJ_WR(as);
}
/*
BT:字節(jié)像素值,0 顯示白點(diǎn),1 顯示黑點(diǎn) (顯示字節(jié)為橫向)
*/
void OCMJ_CLR_ASCII16(char xx,char yy)
{ char i;
for(i=0;i<16;i++)
OCMJ_Dot8(xx,yy+i,0); //BT:字節(jié)像素值,0 顯示白點(diǎn),1 顯示黑點(diǎn) (顯示字節(jié)為橫向)
}
/**************************************************
4) 顯示位點(diǎn)陣
命令格式: F2 XX YY 該命令為3字節(jié)命令(最大執(zhí)行時(shí)間為0.1毫秒,Ts2=0.1mS),
其中 XX:為以1*1點(diǎn)陣為單位的屏幕行坐標(biāo)值,取值范圍00到7F、20到9F、00到9F
YY:為以1*1點(diǎn)陣為單位的屏幕列坐標(biāo)值,取值范圍00到1F、00到3F、00到4F
****************************************************/
void OCMJ_Dot(char xx,char yy)
{
OCMJ_WR(0xf2);
OCMJ_WR(xx);
OCMJ_WR(yy);
}
/**************************************************
5) 顯示字節(jié)點(diǎn)陣
命令格式: F3 XX YY BT 該命令為4字節(jié)命令(最大執(zhí)行時(shí)間為0.1毫秒,Ts2=0.1mS),
其中 XX:為以1*8點(diǎn)陣為單位的屏幕行坐標(biāo)值,取值范圍00到0F、04到13、00到13
YY:為以1*1點(diǎn)陣為單位的屏幕列坐標(biāo)值,取值范圍00到1F、00到3F、00到4F
BT:字節(jié)像素值,0 顯示白點(diǎn),1 顯示黑點(diǎn) (顯示字節(jié)為橫向)
****************************************************/
void OCMJ_Dot8(char xx,char yy,char BT)
{
OCMJ_WR(0xf3);
OCMJ_WR(xx);
OCMJ_WR(yy);
OCMJ_WR(BT);
}
/**************************************************
6) 清屏 命令格式:F4 該命令為單字節(jié)命令(最大執(zhí)行時(shí)間為11毫秒,Ts2=11mS),其功能為將屏幕清空。
**************************************************/
void OCMJ_CLR_ALL(void)
{
OCMJ_WR(0xf4);
}
/**************************************************
7) 上移 命令格式:F5 該命令為單字節(jié)命令(最大執(zhí)行時(shí)間為25毫秒,Ts2=25mS),其功能為將屏幕向上移動(dòng)一個(gè)點(diǎn)陣行。
/**************************************************/
void OCMJ_UP(void)
{
OCMJ_WR(0xf5);
}
/******************************************************
8) 下移 命令格式:F6 該命令為單字節(jié)命令(最大執(zhí)行時(shí)間為30毫秒,Ts2=30mS),其功能為將屏幕向下移動(dòng)一個(gè)點(diǎn)陣行。
*******************************************************/
void OCMJ_DOWN(void)
{
OCMJ_WR(0xf6);
}
/********************************************************
9) 左移 命令格式:F7 該命令為單字節(jié)命令(最大執(zhí)行時(shí)間為12毫秒,Ts2=12mS),其功能為將屏幕向左移動(dòng)一個(gè)點(diǎn)陣列。
*********************************************************/
void OCMJ_LEFT(void)
{
OCMJ_WR(0xf7);
}
/*********************************************************
10) 右移 命令格式: F8 該命令為單字節(jié)命令(最大執(zhí)行時(shí)間為12毫秒,Ts2=12mS),其功能為將屏幕向右移動(dòng)一個(gè)點(diǎn)陣列。
*********************************************************/
void OCMJ_RIGHT(void)
{
OCMJ_WR(0xf8);
}
/***************************************************
2) 顯示8X8 ASCII字符串
命令格式:F1 XX YY AS
該命令為4字節(jié)命令(最大執(zhí)行時(shí)間為0.8毫秒,Ts2=0.8mS),
其中 XX:為以ASCII碼為單位的屏幕行坐標(biāo)值,取值范圍00到0F、04到13、00到13
YY:為以ASCII碼為單位的屏幕列坐標(biāo)值,取值范圍00到1F、00到3F、00到4F
char flash * pData :字符串指針
****************************************************/
extern void OCMJ_WR_STR(unsigned char xx,unsigned char yy, char flash * pData)
{
while((*pData)) //遇到停止符0結(jié)束
{
OCMJ_ASCII8(xx, yy,*pData);
pData++;
if(xx<0x13)
xx++;
else
{
xx=0;
yy+=8;
}
}
}
/***************************************************
1)顯示國(guó)標(biāo)漢字串
命令格式: F0 XX YY QQ WW
該命令為5字節(jié)命令(最大執(zhí)行時(shí)間為1.2毫秒,Ts2=1.2mS),
其中 XX:為以漢字為單位的屏幕行坐標(biāo)值,取值范圍00到07、02到09、00到09
YY:為以漢字為單位的屏幕列坐標(biāo)值,取值范圍00到01、00到03、00到04
char flash * pData: 漢字串指針
*****************************************************/
extern void OCMJ_WR_CNS(unsigned char xx,unsigned char yy, char flash * pData)
{
while((*pData)) //遇到停止符0結(jié)束
{
char x;
OCMJ_WR(0xf0);
OCMJ_WR(xx);
OCMJ_WR(yy);
// x=Unico_GB2312();
OCMJ_WR(*pData-0xa0);
pData++;
// x=Unico_GB2312(* pData);
OCMJ_WR(*pData-0xa0);
pData++;
if(xx<0x09)
xx++;
else
{
xx=0;
yy++;
}
}
}
--------------------------------------------------------------------------------
-- 作者:邱工
-- 發(fā)布時(shí)間:2005-2-16 15:46:35
--
//OCM5x10B參考程序
#include <reg52.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#define data_ora P1 //MCU P1<------> LCM
#define uchar unsigned char
#define uint unsigned int
sbit req =P3^0; //請(qǐng)求信號(hào),H有效
sbit busy=P3^1; //H:已收到數(shù)據(jù)并在處理中,L:空閑可接收數(shù)據(jù)
void send (uchar dat);
uchar code tab2[]={
0x35,0x38,0x27,0x4c,0x1d,0x50,0x25,0x54,0x1f,0x26,
0x1c,0x1c,0x33,0x30,0x2f,0x3e,0x19,0x0b,0x2b,0x1e,
0x10,0x22,0x1f,0x29,0x20,0x0d,0x36,0x30,0x2e,0x24,
0x2d,0x1c,0x30,0x2e,0x2f,0x34,0x2a,0x1e,0x26,0x57,
0x24,0x03,0x1f,0x49,0x24,0x3a,0x36,0x23,0x19,0x5a,
0x11,0x4a,0x1c,0x52,0x2c,0x45,0x36,0x30,0x2e,0x24,
0x32,0x1b,0x1c,0x16,0x37,0x36,0x1f,0x42,0x32,0x34,
0x1c,0x10,0x19,0x06,0x24,0x3c,0x17,0x41,0x18,0x1b,
0x15,0x24,0x33,0x23,0x1b,0x07,0x36,0x18,0x21,0x4e,
0x2a,0x19,0x33,0x23,0x18,0x5c,0x17,0x1d,0x11,0x43};
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -