亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 19264液晶屏演示程序.c

?? 19264 KS0108 驅動程序 19264 KS0108 驅動程序
?? C
字號:

#include <intrins.h>
#include "zimo.h"

#include "D:\Program Files\KEIL\C51\INC\reg52.h"
#include <math.h>
#include <absacc.h>
#include <ctype.h>
#include "YDJ.H"

sbit RS=P2^2; /*"H" is send or read the data;"L" is the instruction*/
sbit RW=P2^3;
sbit E=P2^6; /*Operation enable*/
sbit CS1=P2^4;
sbit CS2=P2^3;
sbit CS3=P2^2;

#define DATA P0
#define uchar unsigned char
#define uint unsigned int

void main(void)
{

}

/*----------------------------------------------------------------------------
Delay some time
------------------------------------------------------------------------------*/
void delay10ms(unsigned char x)
{
unsigned char i,j,k;
for(i=0;i<x;i++)
for(j=0;j<10;j++)
for(k=0;k<120;k++);
}
/*----------------------------------------------------------------------------
Send the instruction to the First KS0108 window
------------------------------------------------------------------------------
--*/
void OutFI(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS1=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS1=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=0;CS1=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS1=1;E=1;
}
/*----------------------------------------------------------------------------
Send the instruction to the Second KS0108 window.
------------------------------------------------------------------------------
--*/
void OutSI(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS2=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS2=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=0;CS2=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS2=1;E=1;
}
/*----------------------------------------------------------------------------
Send the instruction to the Third KS0108 window
------------------------------------------------------------------------------
--*/
void OutTI(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS3=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS3=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=0;CS3=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS3=1;E=1;
}
/*----------------------------------------------------------------------------
Send the data to the First ks0108 Window
------------------------------------------------------------------------------
--*/
void OutFD(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS1=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS1=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=1;CS1=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS1=1;E=1;
}
/*----------------------------------------------------------------------------
Send the data to the Second ks0108 Window
------------------------------------------------------------------------------
--*/
void OutSD(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS2=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS2=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=1;CS2=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS2=1;E=1;
}
/*----------------------------------------------------------------------------
Send the data to the Third ks0108 Window
------------------------------------------------------------------------------
--*/
void OutTD(uchar i)
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS3=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS3=1;E=1;
}while(data_sta&0x80);
E=0;RW=0;RS=1;CS3=0;_nop_();
E=1;_nop_();
DATA=i;
_nop_();E=0;RW=1;CS3=1;E=1;
}
/*----------------------------------------------------------------------------
Read the data to the First ks0108 Window
------------------------------------------------------------------------------
--*/
unsigned char RD_data_F()
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS1=0;_nop_();
E=1;_nop_();
data_sta=DATA;
E=0;RW=0;CS1=1;E=1;
}while(data_sta&0x80);
E=0;RW=1;RS=1;CS1=0;_nop_();
E=1;_nop_();_nop_();_nop_();
data_sta=DATA;
_nop_();E=0;RW=0;CS1=1;E=1;
return (data_sta);
}
/*----------------------------------------------------------------------------
Read the data to the Second ks0108 Window
------------------------------------------------------------------------------
--*/
unsigned char RD_data_S()
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS2=0;_nop_();
E=1;_nop_();_nop_();_nop_();
data_sta=DATA;
E=0;RW=0;CS2=1;E=1;
}while(data_sta&0x80);
E=0;RW=1;RS=1;CS2=0;_nop_();
E=1;_nop_();
data_sta=DATA;
_nop_();E=0;CS2=1;E=1;
return (data_sta);
}
/*----------------------------------------------------------------------------
Read the data to the Third ks0108 Window
------------------------------------------------------------------------------
--*/
unsigned char RD_data_T()
{
unsigned char data_sta;
do{
E=0;RW=1;RS=0;CS3=0;_nop_();
E=1;_nop_();_nop_();_nop_();
data_sta=DATA;
E=0;RW=0;CS3=1;E=1;
}while(data_sta&0x80);
E=0;RW=1;RS=1;CS3=0;_nop_();
E=1;_nop_();
data_sta=DATA;
_nop_();E=0;CS3=1;E=1;
return(data_sta);
}
/*------------------------------------------------------------------------------
Initialize the LCD,The system reset,invoke First time
-------------------------------------------------------------------------------*/
void InitLCD(void)
{
OutFI(0x40); /*Set the Y address 0 */
OutSI(0x40);
OutTI(0x40);
OutFI(0xb8); /*Set the Page 0 */
OutSI(0xb8);
OutTI(0xb8);
OutFI(0xc0); /*Set the display start line 0 */
OutSI(0xc0);
OutTI(0xc0);
OutFI(0x3f); /*Display ON */
OutSI(0x3f);
OutTI(0x3f);
}
/*------------------------------------------------------------------------------
Clear the three ks0108's display ram.
Clrscr screen
--------------------------------------------------------------------------------
-*/
void Clrscreen()
{
unsigned char i,j;
for(i=0;i<8;i++)
{
OutFI(0xb8|i);
for(j=0;j<64;j++)
{
OutFI(j|0x40);
OutFD(0);
}
}
for(i=0;i<8;i++)
{
OutSI(0xb8|i);
for(j=0;j<64;j++)
{
OutSI(j|0x40);
OutSD(0);
}
}
for(i=0;i<8;i++)
{
OutTI(0xb8|i);
for(j=0;j<64;j++)
{
OutTI(j|0x40);
OutTD(0);
}
}
}
/*------------------------------------------------------------------------------
--
Display Chinese ideograph;x_add is the x address;It has 4 layers,0,1,2,3;
Width is the Chinese ideograph width;bmp is the table's name
--------------------------------------------------------------------------------
-*/
void DrawBmp(uchar x_add,uchar layer,uchar width,uchar *bmp)
{
unsigned char x;
unsigned int i=0;
for(x=x_add;x<x_add+width;x++)
{
if (x>127) /*The Third KS0108*/
{
OutTI((x-128)|0x40); /*Set the x address*/
OutTI(layer|0xb8); /*Set the y address*/
OutTD(bmp[i]); /*Send thd data to LCD ram*/
OutTI((x-128)|0x40); /*Display the down screen*/
OutTI((layer|0xb8)+1);
i++; /*Display zimo table address add 1*/
OutTD(bmp[i]);
}
else if (x>63) /*The Second ks0108*/
{
OutSI((x-64)|0x40);
OutSI(layer|0xb8);
OutSD(bmp[i]);

OutSI((x-64)|0x40);
OutSI((layer|0xb8)+1);
i++;
OutSD(bmp[i]);
}
else /*The First ks0108*/
{
OutFI(x|0x40);
OutFI(layer|0xb8);
OutFD(bmp[i]);
OutFI(x|0x40);
OutFI((layer|0xb8)+1);
i++;
OutFD(bmp[i]);
}
i++;
}
}
/*------------------------------------------------------------------------------
--
Display Chinese ideograph;x_add is the x address;It has 4 layers,0,1,2,3;
Width is the Chinese ideograph width;bmp is the table's name.
--------------------------------------------------------------------------------
-*/
void DrawBmp_f(uchar x_add,uchar layer,uchar width,uchar *bmp)
{
unsigned char x;
unsigned int i=0;
for(x=x_add;x<x_add+width;x++)
{
if (x>127)
{
OutTI((x-128)|0x40);
OutTI(layer|0xb8);
OutTD(~bmp[i]);
OutTI((x-128)|0x40);
OutTI((layer|0xb8)+1);
i++;
OutTD(~bmp[i]);
}
else if (x>63)
{
OutSI((x-64)|0x40);
OutSI(layer|0xb8);
OutSD(~bmp[i]);

OutSI((x-64)|0x40);
OutSI((layer|0xb8)+1);
i++;
OutSD(~bmp[i]);
}
else
{
OutFI(x|0x40);
OutFI(layer|0xb8);
OutFD(~bmp[i]);
OutFI(x|0x40);
OutFI((layer|0xb8)+1);
i++;
OutFD(~bmp[i]);
}
i++;
}
}
/*------------------------------------------------------------------------------
--
Display indention; x_add is the x address;It has 4 layers,0,1,2,3;
Width is the Chinese ideograph width
--------------------------------------------------------------------------------
-*/
void _DrawBmp_(uchar x_add,uchar layer,uchar width)
{
unsigned char x;
for(x=x_add;x<x_add+width;x++)
{
if (x>127)
{
OutTI((x-128)|0x40);
OutTI(layer|0xb8);
OutTD(0);
OutTI((x-128)|0x40);
OutTI((layer|0xb8)+1);
OutTD(0);
}
else if (x>63)
{
OutSI((x-64)|0x40);
OutSI(layer|0xb8);
OutSD(0);

OutSI((x-64)|0x40);
OutSI((layer|0xb8)+1);
OutSD(0);
}
else
{
OutFI(x|0x40);
OutFI(layer|0xb8);
OutFD(0);
OutFI(x|0x40);
OutFI((layer|0xb8)+1);
OutFD(0);
}
}
}
/*------------------------------------------------------------------------------
--
Display indention; x_add is the x address;It has 4 layers,0,1,2,3;
Width is the Chinese ideograph width
--------------------------------------------------------------------------------
-*/
void _DrawBmp_black(uchar x_add,uchar layer,uchar width)
{
unsigned char x;
for(x=x_add;x<x_add+width;x++)
{
if (x>127)
{
OutTI((x-128)|0x40);
OutTI(layer|0xb8);
OutTD(0xff);
OutTI((x-128)|0x40);
OutTI((layer|0xb8)+1);
OutTD(0xff);
}
else if (x>63)
{
OutSI((x-64)|0x40);
OutSI(layer|0xb8);
OutSD(0xff);

OutSI((x-64)|0x40);
OutSI((layer|0xb8)+1);
OutSD(0xff);
}
else
{
OutFI(x|0x40);
OutFI(layer|0xb8);
OutFD(0xff);
OutFI(x|0x40);
OutFI((layer|0xb8)+1);
OutFD(0xff);
}
}
}
/*------------------------------------------------------------------------------
--
Display the line
display_data_graph is the display graph data
--------------------------------------------------------------------------------
-*/
void _DrawBmp_line(uchar x_add,uchar layer,uchar width,uchar display_data_graph)
{
unsigned char x;
unsigned int i=0;
for(x=x_add;x<x_add+width;x++)
{
if (x>127)
{
OutTI((x-128)|0x40);
OutTI(layer|0xb8);
OutTD(display_data_graph);
}
else if (x>63)
{
OutSI((x-64)|0x40);
OutSI(layer|0xb8);
OutSD(display_data_graph);
}
else
{
OutFI(x|0x40);
OutFI(layer|0xb8);
OutFD(display_data_graph);
}
i++;
}
}
/*------------------------------------------------------------------------------
--
Display the column
display_data_graph is the display graph data
--------------------------------------------------------------------------------
-*/
void _DrawBmp_column(uchar x,uchar width)
{
unsigned int i=0;
if (x>127)
{
for(i=0;i<width;i++)
{
OutTI((x-128)|0x40);
OutTI(i|0xb8);
OutTD(0xff);
}
}
else if (x>63)
{
for(i=0;i<width;i++)
{
OutSI((x-64)|0x40);
OutSI(i|0xb8);
OutSD(0xff);
}
}
else
{
for(i=0;i<width;i++)
{
OutFI(x|0x40);
OutFI(i|0xb8);
OutFD(0xff);
}
}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区电影网| 国产色综合一区| 亚洲欧洲一区二区在线播放| 久久国产精品无码网站| 26uuu久久天堂性欧美| 免费人成在线不卡| 精品三级在线观看| 国产99一区视频免费| 国产精品福利影院| 欧美在线影院一区二区| 免费在线观看一区二区三区| 欧美第一区第二区| 不卡电影免费在线播放一区| 亚洲激情校园春色| 欧美一区午夜精品| www.久久精品| 天涯成人国产亚洲精品一区av| 精品国产凹凸成av人导航| 风间由美一区二区av101| 亚洲黄色在线视频| 日韩精品一区二区三区三区免费| 成人午夜免费电影| 亚洲高清不卡在线| 国产日韩精品一区二区三区在线| 91亚洲资源网| 美女视频网站黄色亚洲| 国产精品久久网站| 678五月天丁香亚洲综合网| 国产精品资源在线| 亚洲成人激情综合网| www激情久久| 欧美吻胸吃奶大尺度电影| 韩国女主播一区| 亚洲综合丁香婷婷六月香| 精品国产乱码久久久久久1区2区 | 日本伊人色综合网| 中文字幕在线一区二区三区| 欧美蜜桃一区二区三区| 风间由美性色一区二区三区| 婷婷成人激情在线网| 国产精品美日韩| 制服丝袜中文字幕亚洲| 97久久久精品综合88久久| 奇米精品一区二区三区在线观看| 中文字幕日韩av资源站| 欧美一区欧美二区| 在线观看视频一区二区| 国产乱码精品一区二区三区av| 亚洲一区影音先锋| 国产精品萝li| 久久久国产一区二区三区四区小说 | 中文字幕欧美日韩一区| 亚洲免费在线观看视频| 欧美日韩大陆在线| 91亚洲精品一区二区乱码| 久久99久久99| 亚洲一级在线观看| 亚洲欧洲国产日本综合| 精品88久久久久88久久久| 欧美精品在线一区二区三区| 国产a久久麻豆| 久久av中文字幕片| 亚洲成a人片在线不卡一二三区| 国产精品黄色在线观看| 久久天天做天天爱综合色| 日韩欧美不卡在线观看视频| 欧美日本视频在线| 在线观看91视频| 色噜噜狠狠色综合欧洲selulu| 国产一区日韩二区欧美三区| 麻豆精品在线看| 美国毛片一区二区| 日韩av高清在线观看| 亚洲成人精品影院| 亚洲福利一二三区| 亚洲大型综合色站| 亚洲成人av在线电影| 亚洲一级二级在线| 亚洲成av人片| 日本不卡视频在线观看| 免费人成黄页网站在线一区二区| 天堂一区二区在线| 日韩国产精品91| 男男成人高潮片免费网站| 免费观看成人av| 精品亚洲成av人在线观看| 久久国产日韩欧美精品| 国产麻豆精品久久一二三| 国产成人超碰人人澡人人澡| 国产精品66部| 97久久人人超碰| 欧美视频你懂的| 欧美一区二区三区四区久久| 日韩三级在线观看| 久久久亚洲欧洲日产国码αv| 国产女人水真多18毛片18精品视频| 久久久综合精品| 1000精品久久久久久久久| 亚洲激情自拍偷拍| 蜜臀av一区二区| 成人激情图片网| 欧美午夜精品一区| 日韩免费视频一区| 国产精品久久久久久久久免费桃花| 综合色天天鬼久久鬼色| 午夜伊人狠狠久久| 国产精品亚洲午夜一区二区三区| 成人黄色软件下载| 欧美日韩国产系列| 久久久久久久一区| 亚洲一本大道在线| 国产一区二区精品久久99| 91在线一区二区三区| 欧美理论电影在线| 欧美高清一级片在线观看| 亚洲一区二区三区国产| 国模冰冰炮一区二区| 色婷婷久久99综合精品jk白丝| 欧美日韩一二区| 欧美经典一区二区| 午夜免费久久看| 欧美日韩视频在线第一区| 欧美亚男人的天堂| 国产精品入口麻豆九色| 欧美日本不卡视频| 国产日韩欧美麻豆| 亚洲成人av中文| 成人黄色大片在线观看| 欧美精品tushy高清| 国产精品视频观看| 另类欧美日韩国产在线| 91九色最新地址| 中文一区二区在线观看| 日韩精品电影在线观看| 91在线国产福利| 久久噜噜亚洲综合| 麻豆91免费看| 欧美日韩在线播放| 亚洲免费在线看| 成人av网站免费| 久久亚洲欧美国产精品乐播| 性久久久久久久| 欧美性感一区二区三区| 国产精品久久二区二区| 国产精品中文字幕欧美| 欧美一级高清大全免费观看| 亚洲人xxxx| av电影在线观看不卡| 久久综合久久99| 奇米影视一区二区三区| 欧美日韩和欧美的一区二区| 亚洲日本在线视频观看| 亚洲网友自拍偷拍| 日韩区在线观看| 蜜桃av噜噜一区| 国产精品午夜免费| 国产欧美日本一区视频| 亚洲最大成人综合| 日本高清不卡视频| 国产精品久久久久aaaa| 成人性色生活片免费看爆迷你毛片| 日韩视频一区二区三区| 蜜桃av一区二区三区电影| 欧美挠脚心视频网站| 亚洲乱码中文字幕| 91蜜桃免费观看视频| 亚洲欧洲精品一区二区三区| 成人精品国产免费网站| 国产精品国模大尺度视频| 成人免费黄色在线| 亚洲欧洲性图库| 91激情五月电影| 亚洲高清免费观看| 日韩一级视频免费观看在线| 日韩高清不卡一区二区| 日韩免费视频一区二区| 国产真实精品久久二三区| 国产日韩欧美激情| 成人av网站免费| 亚洲精选视频免费看| 欧洲亚洲精品在线| 国产欧美日韩不卡| 国产精品久久久久久福利一牛影视| 成人美女视频在线观看| 国产精品国产自产拍在线| 在线视频你懂得一区二区三区| 性做久久久久久免费观看欧美| 日韩视频中午一区| 国产馆精品极品| 亚洲美女在线国产| 欧美女孩性生活视频| 国产精品99久久久久| 亚洲六月丁香色婷婷综合久久| 欧美日韩在线播放三区四区| 日本91福利区| 国产日韩欧美精品综合| 欧美在线|欧美| 九九视频精品免费| 亚洲色图在线播放| 91精品国产品国语在线不卡|