📄 12864.txt
字号:
享受孤独享受孤独
luoye314.blog.tianya.cn扬一场远远的风送我少年的梦如穹苍一帆
留言板 | 博客家园 | 加友情博客
博客信息博主:luoye314
栏目分类·爱晚亭 (128)
·朋友的话 (2)
·纯粹转载 (13)
·文娱广场 (22)
·挑山工 (22)
·单片机 (10)
·开关电源 (5)
·电子学习 (13)
·DSP (13)
·ARM (0)
最新文章·一日三省(2007-8-14)
·dsp2407 知识(转)(2007-8-12)
·2812和2407的比较(转)(2007-8-12)
·我要把用勺子吃饭申请专利(2007-8-10)
·回来了(2007-8-9)
·《与青春有关的日子》(2007-8-6)
·上拉电阻,下拉电阻(2007-7-31)
·DSP学习笔记(4)—I/O口流水灯实验(2007-7-30)
更多>>
最新评论· 深圳生溢快捷电路有限公司 联系人: ...(2007-9-13)
· 深圳生溢快捷电路有限公司 联系人: ...(2007-9-13)
·int0之类的命令要顶格写哦...(2007-8-6)
·库文件rts2xx.lib是不是没有添加...(2007-8-6)
·--------------------...(2007-8-2)
·高山流水...(2007-6-1)
·老家赶牲口去地里干活,走到拐弯儿处,赶车...(2007-5-31)
·呵呵这都看不懂啊,意思就是我就是。我的生...(2007-5-4)
·er....傻孩子,,,瞎嘟囔啥。。。。...(2007-5-1)
留言
在这给我留言吧 >>
友情博客lisa
--
半杯纯净水
吃的就是那个味儿2008-3-2标签列表
LF2407 DSP 火箭 PCB 开关电源 C语言 代码 测试程序
博客搜索
日志存档·2007-10 ( 1 )
·2007-8 ( 6 )
·2007-7 ( 17 )
·2007-6 ( 6 )
·2007-5 ( 6 )
·2007-4 ( 8 )
·2007-3 ( 4 )
·2007-1 ( 8 )
·2006-12 ( 25 )
·2006-11 ( 21 )
·2006-10 ( 11 )
·2006-9 ( 17 )
友情链接·lisa
·半杯纯净水
·Aleena
·猪头seven
统计信息访问:42859 次
日志: 237篇
评论: 206 个
留言: 7 个
建站时间: 2006-5-5
博客成员luoye314 管 理 员
海蓝
128x64液晶KS0108驱动程序(C51)(转帖)作者:luoye314 分类:单片机 提交日期:2006-11-15 18:00:00 |
访问量:173 #include "absacc.h"
#include "intrins.h"
//自定义库 在"C:\comp51\UserLib\"文件夹中
#include ".\inc\ASCII816.h" //标准ASCII库
#include ".\inc\HZTable.h" //汉字点阵库(自做)
#include ".\inc\Menu.h" //菜单库(自做)
// LCD128*64 数据线
#define LCD12864DataPort P1
// LCD128*64 I/O 信号管脚
sbit di =P3^1; // 数据\指令 选择
sbit rw =P3^3; // 读\写 选择
sbit en =P3^2; // 读\写使能
sbit cs1 =P3^4; // 片选1,低有效(前64列)
sbit cs2 =P3^5; // 片选2,低有效(后64列)
sbit reset=P0^7; // 复位
/*----------------------------------------------------------------------------------------------------*/
/* ****函数列表****
//开关显示
void SetOnOff(unsigned char onoff)
//选择屏幕
//screen: 0-全屏,1-左屏,2-右
void SelectScreen(unsigned char screen)
//清屏
//screen: 0-全屏,1-左屏,2-右
void ClearScreen(unsigned char screen)
//显示8*8点阵
//旋转90度:字模被竖着切分
//lin:行(0-7), column: 列(0-15)
//address : 字模区首地址
void Show88(unsigned char lin,unsigned char column,unsigned int address)
//显示8*16字符
//旋转90度:字模被竖着切分
//lin:行(0-3), column: 列(0-15)
//character:字符代码(标准ASCII码)
void ShowChar(unsigned char lin,unsigned char column,unsigned char
character)
//显示8*16字符串
//!!!只能显示在一行上即: 串长+column <=15
//旋转90度:字模被竖着切分
//lin:行(0-3), column: 列(0-15)
//address : 字模区首地址
void ShowString(unsigned char lin,unsigned char column, unsigned char
*string)
//显示一个汉字
//旋转90度:字模被竖着切分
//lin:行(0-3), column: 列(0-15)
//hzcode: 汉字代码(自定义的)
void ShowHZ(unsigned char lin,unsigned char column,unsigned int hzcode)
//显示图片
//旋转90度 :字模被竖着切分
//startline :开始行
//startcolumn:开始列
//linechar :图片行点除8(图片以8*8点阵为单位)
//columnchar :图片列点除8(图片以8*8点阵为单位)
//address : 字模区首地址
void ShowPicture(unsigned char startline,unsigned char
startcolumn,unsigned char linechar,unsigned char columnchar,unsigned int
address)
//!!问题大户
//显示一行汉字
//lin:行
//lineheadaddr: 此行汉字代码区首地址
void ShowLine(unsigned char lin,unsigned int lineheadaddr)
//显示一屏汉字
//pageheadaddr:此屏汉字代码地址区首地址
void ShowPage(unsigned int pageheadaddr)
//反显一个8*8字块
//lin:行(0-3), column: 列(0-7)
void ReverseShow88(unsigned char lin,unsigned char column)
//反显一个字符
//lin:行(0-4), column: 列(0-15)
void ReverseShowChar(unsigned char lin,unsigned char column)
//反显一个汉字
//lin:行(0-3), column: 列(0-7)
ReverseShowHZ(unsigned char lin,unsigned char column)
//反显一行汉字
//lin:行
ReverseShow(unsigned char lin)
//初始化LCD
void InitLCD()
****函数列表结束**** */
/*----------------------------------------------------------------------------------------------------*/
/*--基本函数源程序------------------------------------------------------------------------------------*/
//延时
Lcd12864delay()
{
unsigned int i=500;
while(i--) {;}
}
/*----------------------------------------------------------------------------------------------------*/
//状态检查
void CheckState()
{
unsigned char dat;
di=0;
rw=1;
do{
LCD12864DataPort=0xff;
en=1; dat=LCD12864DataPort; en=0;
dat=0x90 & dat; //仅当第4,7位为0时才可操作
}while(!(dat==0x00));
}
/*----------------------------------------------------------------------------------------------------*/
//写显示数据
//dat:显示数据
void WriteByte(unsigned char dat)
{
CheckState();
di=1; rw=0;
LCD12864DataPort=dat;
en=1; en=0;
}
/*-----------------------------------------------------------------------------------------------------*/
//向LCD发送命令
//command :命令
SendCommandToLCD(unsigned char command)
{
CheckState();
rw=0;
LCD12864DataPort=command;
en=1; en=0;
}
/*----------------------------------------------------------------------------------------------------*/
//设定行地址(页)--X 0-7
void SetLine(unsigned char line)
{
line=line & 0x07; // 0<=line<=7
line=line|0xb8; //1011 1xxx
SendCommandToLCD(line);
}
//设定列地址--Y 0-63
void SetColumn(unsigned char column)
{
column=column &0x3f; // 0= column=column | 0x40; //01xx xxxx
SendCommandToLCD(column);
}
//设定显示开始行--XX
void SetStartLine(unsigned char startline) //0--63
{
startline=startline & 0x07;
startline=startline|0xc0; //1100 0000
SendCommandToLCD(startline);
}
//开关显示
void SetOnOff(unsigned char onoff)
{
onoff=0x3e | onoff; //0011 111x
SendCommandToLCD(onoff);
}
/*---------------------------------------------------------------------------------------------------*/
//选择屏幕
//screen: 0-全屏,1-左屏,2-右屏
void SelectScreen(unsigned char screen)
{ //北京显示器:负有效 cs1: 0--右; cs2: 0--左
switch(screen)
{ case 0: cs1=0;//全屏
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
_nop_(); _nop_(); _nop_();
cs2=0;
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
_nop_(); _nop_(); _nop_();
break;
case 1: cs1=1;//左屏
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
_nop_(); _nop_(); _nop_();
cs2=0;
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
_nop_(); _nop_(); _nop_();
break;
case 2: cs1=0;//右屏
_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
_nop_(); _nop_(); _nop_();
cs2=1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -