云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于protues仿真的AMPIRE 128X64显示器在51单片机平台的显示

基于protues仿真的AMPIRE 128X64显示器在51单片机平台的显示

  • 62 次阅读
  • 3 次下载
  • 2025/5/28 3:38:57

中文资料文库地址:

http://wenku.http://www.china-audit.com//link?url=2RskpTcACLnDJp-GdMjaTVbrq7HNjjeLZ_5Kvkz3Xld-PkmTcTwzUFbEfC_daKr0KcE57b_JYbeD2eX3VRI2qSAV7exIPvhsnWfnPw8ATSu

#include #include

#define uchar unsigned char

sbit CS1=P2^4; sbit CS2=P2^3; sbit RS=P2^2; sbit RW=P2^1; sbit E=P2^0;

void check_busy(); //忙检测 void write_cmd(uchar inst); //写命令 void write_data(uchar dat); //写数据

void set_xy(uchar x,uchar y); //设置显示坐标 void LCD_Init(); //lcd初始化

// 字摸软件提取出的数据,提取字模时要注意参数设置,纵向取模,字节倒序。 uchar code HZ0[6][32]={//;-- 文字: 安 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x80,0x90,0x8C,0x84,0x84,0x84,0xF5,0x86,0x84,0x84,0x84,0x84,0x94,0x8C,0x80,0x00,0x00,0x80,0x80,0x84,0x46,0x49,0x28,0x10,0x10,0x2C,0x23,0x40,0x80,0x00,0x00,0x00}, //;-- 文字: 徽 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x10,0x88,0xC4,0x23,0xAE,0x68,0x2F,0x28,0xAE,0x20,0xD8,0x17,0x10,0xF0,0x10,0x00,0x01,0x00,0xFF,0x48,0x29,0x8D,0xFB,0x09,0xAC,0x48,0x37,0x08,0x36,0x41,0x80,0x00}, //;-- 文字: 工 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x00,0x04,0x04,0x04,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0x04,0x04,0x04,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x20,0x20,0x00}, //;-- 文字: 业 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x00,0x10,0x60,0x80,0x00,0xFF,0x00,0x00,0x00,0xFF,0x00,0x00,0xC0,0x30,0x00,0x00,0x40,0x40,0x40,0x43,0x40,0x7F,0x40,0x40,0x40,0x7F,0x42,0x41,0x40,0x40,0x40,0x00}, //;-- 文字: 大 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFF,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,0x80,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x03,0x0C,0x10,0x20,0x40,0x80,0x80,0x00}, //;-- 文字: 学 --

//;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --

{0x40,0x30,0x11,0x96,0x90,0x90,0x91,0x96,0x90,0x90,0x98,0x14,0x13,0x50,0x30,0x00,0x04,0x04,0x04,0x04,0x04,0x44,0x84,0x7E,0x06,0x05,0x04,0x04,0x04,0x04,0x04,0x00} };

uchar code FZ0[10][32]={ /*-- 文字: I --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},

/*-- 文字: --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*-- 文字: L --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x00},

/*-- 文字: O --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00},

/*-- 文字: V --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x08,0x78,0x88,0x00,0x00,0xC8,0x38,0x08,0x00,0x00,0x07,0x38,0x0E,0x01,0x00,0x00},

/*-- 文字: E --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00},

/*-- 文字: --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*-- 文字: Y --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00},

/*-- 文字: O --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00},

/*-- 文字: U --*/

/*-- 宋体12; 此字体下对应的点阵为:宽x高=8x16 --*/

{0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00} };

/************************延时函数**************************/ void delayus(uchar delay) {

uchar i;

for(i=0;i<=delay;i++) _nop_(); }

/********************忙检查*********************************/ void check_busy() {

uchar a=0;

for(a=0;a<200;a++); //此处为延时,一段时间后确保处于空闲状态

/* //此处为状态查询,查询忙状态,没有使用成功,以后再调试 RW=1;

RS=0; E=1; while(1) {

E=1;

if(!(P0&0x80)) break; a++; if(a>10)

break; } E=1; */

}

/********************写命令函数*********************************/ void write_cmd(uchar inst) {

check_busy(); RS=0; RW=0; E=1; P3=inst; E=0; _nop_(); }

/********************写数据函数*********************************/ void write_data(uchar dat) {

check_busy(); RS=1; RW=0; E=1; P3=dat; E=0; _nop_(); }

/********************初始化函数*********************************/ void LCD_Init() {

write_cmd(0x30);//30H--基本指令操作? delayus(4);

write_cmd(0x0c);//开显示,关光标,不闪烁。 delayus(10);

write_cmd(0x01);//清除显示 delayus(10);

write_cmd(0x06);//光标的移动方向左,DDRAM的地址计数器(AC)加1。 delayus(10);

搜索更多关于: 基于protues仿真的AMPIRE 128X64显示器在5 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

中文资料文库地址: http://wenku.http://www.china-audit.com//link?url=2RskpTcACLnDJp-GdMjaTVbrq7HNjjeLZ_5Kvkz3Xld-PkmTcTwzUFbEfC_daKr0KcE57b_JYbeD2eX3VRI2qSAV7exIPvhsnWfnPw8ATSu #include #include #define uchar unsigned char sbit CS1=P2^4; sbit CS2=P2^3; sbit RS=P2^2; sbit RW=P2^1; sbit E=P2^0;

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com