当前位置:文档之家› 实验六 点阵LED的图形显示

实验六 点阵LED的图形显示

实验六 点阵LED的图形显示
实验六 点阵LED的图形显示

实验六点阵LED的图形显示

一、实验目的

1.了解点阵的显示原理,掌握数模软件的使用方法。

2.进一步巩固单片机定时和中断原理在C51程序设计中的运用。

二、实验内容

通过对单片机编程来实现LED点阵的图形显示。

三、实验参考原理

3.1 点阵LED的初步认识

点阵LED显示屏作为一种现代电子媒体,具有灵活的显示面积(可分割、任意拼装)、高亮度、长寿命、数字化、实时性等特点,应用非常广泛。

一个数码管是8个LED组成,同理,一个8*8的点阵是由64个LED小灯组成。图3-1就是一个点阵LED最小单元,一个8*8的点阵LED,图3-2是它的内部结构图。

图3-1 8*8点阵LED

3-2 8*8点阵LED结构原理图

点阵LED内部原理图如图3-2所示,图上蓝色方框外侧的就是点阵LED的引脚号,左侧的8个引脚是接的内部LED的阳极,上侧的8个引脚接的是内部LED的阴极。如果9脚是高电平,13脚是低电平的话,最左上角的那个LED小灯就会亮,用程序来实现一下,特别注意,我们现在用的74HC138是原理图上的U4。

#include //包含寄存器的库文件

sbit LED = P0^0;

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

void main()

{

ENLED = 0;

ADDR0 = 0;

ADDR1 = 0;

ADDR2 = 0;

ADDR3 = 0; //74HC138开启三极管

LED = 0; //点亮点阵的一个点

while(1); //程序停止在这里

}

同样的方法,可以点亮点阵的任意一行,74HC 138的导通点阵所用的三极管的方法和数码管很类似,那我们现在来点亮第二行整行的LED。

#include //包含寄存器的库文件

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

void main()

{

ENLED = 0;

ADDR0 = 1;

ADDR1 = 0;

ADDR2 = 0;

ADDR3 = 0; //74HC138开启三极管

P0 = 0x00; //向P0写入0来点亮一行

while(1); //程序停止在这里

}

从这里可以发现,讲一个数码管就是8个LED小灯,一个点阵是64个LED小灯。同样的道理,还可以把一个点阵理解成8个数码管。上节课掌握了6个数码管的同时显示方法,那8个数码管,也就是点阵的8行也应该轻轻松松了,先把这个点阵全部点亮。

#include //包含寄存器的库文件

sbit LED = P0^0;

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

void main()

{

ENLED = 0;

ADDR3 = 0;

TMOD = 0x01; //设置定时器0为模式1

TH0 = 0xFC;

TL0 = 0x67; //定时值初值,定时1ms

TR0 = 1; //打开定时器0

EA = 1; //打开中中断

ET0 = 1; //打开定时器0中断

while(1); //程序停止在这里,定时器运行,等待定时器中断

}

void InterruptTimer0() interrupt 1 //中断函数

{

static unsigned char j = 0;

TH0 = 0xFC; //溢出后进入中断重新赋值

TL0 = 0x67;

P0 = 0xFF; //消隐

switch(j)

{

case 0: ADDR0=0; ADDR1=0; ADDR2=0; j++; P0=0x00;break;

case 1: ADDR0=1; ADDR1=0; ADDR2=0; j++; P0=0x00;break;

case 2: ADDR0=0; ADDR1=1; ADDR2=0; j++; P0=0x00; break;

case 3: ADDR0=1; ADDR1=1; ADDR2=0; j++; P0=0x00;break;

case 4: ADDR0=0; ADDR1=0; ADDR2=1; j++; P0=0x00;break;

case 5: ADDR0=1; ADDR1=0; ADDR2=1; j++; P0=0x00;break;

case 6: ADDR0=0; ADDR1=1; ADDR2=1; j++; P0=0x00;break;

case 7: ADDR0=1; ADDR1=1; ADDR2=1; j=0; P0=0x00;break;

default: break;

} //动态刷新

}

3.2 点阵LED图形显示

LED小灯可以实现流水灯,数码管可以显示数字,那点阵LED就得来显示点花样了。

要显示花样的时候,往往要做出来一些小图形,这些小图形的数据要转换到我们的程序当中去,这个时候就需要取模软件。来给大家介绍一款简单的取模软件,这种取模软件在网上都可以下载到,大家来了解一下如何用,先看一下操作界面,如图3-3所示。

图3-3 字模提取软件界面

鼠标点一下“新建图形”,根据我们板子上的点阵,把宽度和高度分别改成8,然后点确定,如图3-4所示。

图3-4 新建图像

我们点左侧的“模拟动画”菜单,点击“放大格点”选项,一直放大到最大,就可以在8*8的点阵图形中用鼠标填充黑点,就可以来画图形,如图3-5所示。

图3-5 字模提取软件画图

经过我们一番设计,画出来一个心形图形,并且填充满,最终出现我们想要的效果图,如图3-6所示。

图3-6 字模软件心形显示

由于取模软件是把黑色取为1,白色取为0,但我们点阵是1对应LED熄灭,0对应LED 点亮,而我们需要的是一颗点亮的“心”,所以我们要选“修改图像”菜单里的“黑白反显图像”这个选项,并且点击“基本操作”菜单里边的“保存图像”可以把我们设计好的图片进行保存,如图3-7所示。

图3-7 保存图像

保存图像只是为了你下次使用打开方便,你也可以不保存。操作完了这一步后,点一下“参数设置”菜单里的“其他选项”,如图3-8所示。

图3-8 选项设置

这个选项设置,要根据我们的图3-2对照来看,大家可以看到单片机的P0总线,控制的是一行,所以我们用的是“横向取模”,如果控制的是一列,就要选“纵向取模”。“字节倒序”这个选项,我们选上是因为图3-2中,我们左边是低位DB0,右边是高位DB7,所以必须选上字节倒序,其他两个选项大家自己了解,点确定后,选择“取模方式”这个菜单,点一下“C51格式”后,在“点阵生成区”自动产生了8个字节的数据,这8个字节的数据就是对应取出来的“模”。

图3-9 取模结果

用软件取模,在这个图片里,黑色的一个格子表示一个二进制的1,白色的一个格子表示一个二进制的0。第一个字节是0xFF,其实就是这个8*8图形的第一行,全黑就是0xFF;第二个字节是0x99,低位在左边,高位在右边,大家注意看,黑色的表示1,白色的表示0,就组成了0x99这个数字。同理其他的数据大家也就知道怎么来的了。

我们把这个数据送到我们的点阵上去,大家看看什么效果。

对于8*8的点阵来说,我们可以显示一些简单的图形,字符等。一个汉字正常占的点数是16*16的,8*8的点阵只能显示一些简单笔画的汉字,大家可以自己取模做出来试试。

四、实验参考源程序

#include //包含寄存器的库文件

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

unsigned char code image[] = {

0xFF,0x99,0x00,0x00,0x00,0x81,0xc3,0xE7

}; //心形图案的取模数据

void main() //主函数

{

ENLED = 0;

ADDR3 = 0;

TMOD = 0x01; //设置定时器0为模式1

TH0 = 0xFC;

TL0 = 0x67; //定时值初值,定时1ms

TR0 = 1; //打开定时器0

EA = 1; //打开总中断

ET0 = 1; //打开定时器0中断

while(1); //程序停止在这里,定时器运行,等待定时器中断

}

void InterruptTimer0() interrupt 1 //中断函数,T0一旦定时溢出,自动进入中断函数内执行{

static unsigned char i = 0;

TH0 = 0xFC; //溢出后进入中断重新赋值

TL0 = 0x67;

P0 = 0xFF; //消隐

switch(i)

{

case 0: ADDR0=0; ADDR1=0; ADDR2=0;i++; P0=image[0];break;

case 1: ADDR0=1; ADDR1=0; ADDR2=0; i++; P0=image[1];break;

case 2: ADDR0=0; ADDR1=1; ADDR2=0;i++;P0=image[2];break;

case 3: ADDR0=1; ADDR1=1; ADDR2=0;i++; P0=image[3];break; //动态刷新

case 4: ADDR0=0; ADDR1=0; ADDR2=1;i++; P0=image[4];break;

case 5: ADDR0=1; ADDR1=0; ADDR2=1;i++;P0=image[5];break;

case 6: ADDR0=0; ADDR1=1; ADDR2=1;i++; P0=image[6];break;

case 7: ADDR0=1; ADDR1=1; ADDR2=1;i=0;P0=image[7];break;

default: break;

}

}

LED点阵显示屏实验报告解析

16?16点阵LED电子显示屏的设计 摘要:文章介绍了基于单片机AT89C51的16?16点阵LED电子显示屏的设计。分别阐述了显示屏显示的基本原理,硬件设计、控制方法及其程序的实现。经过调试和分析,设计的结果能够实现对汉字的静态和动态显示,动态显示的内容有多种方式,同时又可通过上位机更新显示的内容。 关键字:AT89C51;16?16点阵;LED;显示屏 一绪论 LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。 1 LED点阵显示屏概述 LED点阵显示屏的构成型式有多种,其中典型的有两种。一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。 目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。国内的另一种LED显示屏——可编程序型LED显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。 2 LED显示屏控制技术状况 显示屏的控制系统包括输入接口电路、信号控制、转换和数字化处理电路及输出接口电路等,涉及的具体技术很多,其关键技术包括串行传输与并行传输技术、动态扫描与静态锁存技术、自动检测及远程控制技术等。

16×16点阵显示综合实验

《EDA技术综合设计》 课程设计报告 报告题目: 16×16点阵显示综合实验作者所在系部:电子工程系 作者所在专业: 作者所在班级: 作者姓名: 指导教师姓名: 完成时间:

内容摘要 编写16×16点阵字符发生器的程序,通过CLK信号控制它的行驱动信号和列选信号让其依次输出‘中’,‘国’,‘人’三个字,通过硬件实验观察其结果,对于其他的显示花样以及点亮方式,可以根据实际需要自行设计。 关键字:16×16点阵,CLK,显示花样

目录 一概述 (5) 二方案设计与论证 (5) 三程序清单 (5) 四器件编程与下载 (9) 五性能测试与分析 (10) 六实验设备 (10) 七心得体会 (10) 八参考文献 (11)

课程设计任务书

一、概述 在时钟信号的控制下,使16×16点阵管花样点亮,在EDA试验仪中,16×16点阵显示列的驱动已经做好,其列选信号为SELOUT[3..0],送到4线-16线译码电路,译码电路的输出通过8只75451(双2输入与门,OC门)驱动器驱动16×16点阵管的16条共阴极列线;所以在设计点阵控制接口时,其列选信号必须由SELOUT[3..0]输出去控制译码电路。对于信号的频率,采用与七段数码管的位选信号一样的处理方法,即扫描频率大于24Hz;通过CLK信号控制行驱动与列选信号使其动态依次显示”中国人“三个字。其中CLK为时钟输入端,DIN[3..0]为花样显示模式选择,doout[15..0]为行驱动信号输出;SELOUT[3..0]为列选信号输出,去驱动4-16译码电路产生16×16点阵管的列选信号。 二、方案设计与论证 该程序由三个进程信号组成,进程K1通过CLK信号控制扫描频率s以及计数信号q,进而由q的记述周期控制cp信号。进程k2由cp信号控制汉字的扫描周期s0,实现汉字的依次显示,进程k3由扫描信号s控制点阵的行驱动和列选信号,使其准确显示’中国人’三个字。用VHDL语言编写程序,经过上级调试与编译,并下载到硬件观察实验结果。 三、程序清单 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity A1 is

16乘16点阵显示实验报告剖析

实验报告 实验名称: [16×16点阵显示实验] 姓名: [] 学号: [201] 指导教师: [解*] 实验时间: [2013年4月25日] 信息与通信工程学院

16×16点阵显示实验 1实验要求 任务1:将所给程序改正使结果为正显示; 任务2:使显示四个字、八个字。 2实验原理 2.1 LED显示器结构和原理 1>8*8LED点阵的结构 图1 8*8LED点阵结构图 从图1中可以看出,8*8LED点阵共由64个发光二极管组成,每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1高电平,且某一列置0低电平,则相应的发光二极管就亮;因此要用8*8LED点阵来显示一个字符或汉字,只需要根据字符或汉字图形中的线条或笔画,通过点亮多个发光二极管来勾勒出字符或汉字的线条或笔画就行了。当要比较完美的显示一般的汉字,单个8*8LED点阵模块很难做到,因为LED的点数(也称为像素点)不够多,因此要显示汉字的话,需要多个8*8LED点阵拼合成一个显示屏。假如用4个8*8LED点阵模块拼成16*16的点阵,即能满足一般汉字的显示。但要显示信息量大的图形,则需要n个多个8*8LED点阵,拼装成一个大屏幕才行。

LED点阵显示器最大的特点是亮度高、功耗较低、寿命长、容易控制等,因此它的应用很广,常用在广场、车站、商业广告等室外的显示。 2>8*8LED点阵的封装和引脚规律 64个发光二极管按照行共阳、列共阴4个一组的方式封装成一个模块,这样8*8LED 点阵模块就有8行、8列共16个引脚。其实物图如图2,电路模块符号图如图3。 图2 8*8LED点阵实物图图3 8*8LED点阵符号图但8*8LED点阵的16个引脚并不是很有规律,千万不要想象成1~8个引脚是行,9~16个引脚是列。而且不同产品的点阵外部引脚排列规律还可能不一样。以下是NLB1388SRA 和LDM1388SRA两个型号点阵引脚对应行、列的关系表: 行号H0 H1 H2 H3 H4 H5 H6 H7 引脚号9 14 8 12 1 7 2 5 列号L0 L1 L2 L3 L4 L5 L6 L7 引脚号13 3 4 10 6 11 15 16 假如你买到一块新的8*8LED点阵,又没有关于它的相关资料,那你只有自己用万用表或通过VCC电源串接一个510欧姆的电阻来检测了。 2.2 LPM_ROM的应用 该模块为逻辑宏模块存储器。其应用过程如下。 1选择模块

微机接口实验-16x16点阵显示

实验04·LED显示器 王梦硕 0930******* 实验目的: 在理解LED点阵工作原理的基础上,实践使用点阵显示字符。 实验原理: 1·点阵式显示器: 发光二级管排列成矩阵,由亮与暗来产生字符或图形。 每一样的阳极连在一起,每一列的阴极连在一起,如右图所 示。 点阵显示器每一列的阴极连在一起,对每一列而言相当 于一个共阴显示器。同时每一行的阳极连在一起,相当于七 段显示器的比划。可采用动态显示电路,以笔画锁存器控制 行信号,以位锁存器控制列信号。 2·74HC595 实验中使用两片8位输出锁存移位寄存器74HC595(三态输出、串入并出),将单片机I/O口发出的串行数据转换为并行数据LD_QA~LD_QP,作为16x16 LED点阵显示器的行线,使用另外两片8位74HC595作为16x16 LED点阵显示器的列线LD_1~LD_16。当行输出高电平、列输出低电平时,可以点亮点阵。74HC595的工作时序图和推荐的连接方法如下: 下图中: ?LD-QA~LD-QP:点阵行控制信号 ?LD-1~LD-16:点阵列控制信号 ?SER(14脚):串行数据输入端 ?-SCLR(10脚):低电平时将移位寄存器的 数据清零。通常将它接Vcc。 ?SCK(11脚):上升沿时将串行数据移入移 位寄存器。 ?RCK(12脚):上升沿时移位寄存器的数据 锁存入数据寄存器。 ?-G(13脚): 高电平时禁止输出(高阻态)。

实验内容: 在16×16LED点阵上分别用静态方式和滚屏方式显示自己的姓(行扫描)。 两个实验部分的电原理图是相同的,如下所示:

1·静态方式: 流程图: 程序代码: L_DAT_H BIT P1.0 L_DAT_L BIT P1.1 L_STR BIT P1.2 L_CLK BIT P1.3 L_OE BIT P1.4 ROWH EQU 40H ;字模信号(顺向取膜,高位在前)ROWL EQU 41H SELH EQU 42H ;行扫描信号

实验七 点阵LED屏汉字显示实验

教案(首页)

实验七点阵LED屏汉字显示 一、实验目的 掌握LED点阵显示的方法,深入了解显示的思路。 二、实验说明 LED点阵显示与LED数码显示原理基本相同,要用LED点阵显示组成图形或者字体需要不断的刷新点阵。 三、实验电路原理图 四、实验设备与器件 DLDP-MCU30单片机最小系统模块;DLDP-MCU27 1、在“DLDP-MCU30单片机最小系统模块”上,将“EA”接“+5V”端。 2、使用排线将DLDP-MCU30单片机模块的P0、P1、P2、P3连接到DLDP-MCU27模块的L1、L9,H1,H9,编写实验程序并编译代码生成.HEX文件。 3、将.HEX文件下载至AT89S52单片机中。 4、观察实验现象,分析实验程序的正确性。 六、参考程序

#include #include #define uchar unsigned char #define uint unsigned int uchar code tab1[]={ 0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x84,0x20,0x84,0x20,0x84,0x20, 0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0xFE,0x3F,0x04,0x20,0x00,0x00, };//山 uchar code tab2[]={ 0x40,0x00,0x40,0x00,0xFE,0x3F,0x20,0x00,0x10,0x01,0x10,0x01,0x08,0x01,0xF8,0x1F, 0x00,0x01,0x10,0x05,0x30,0x09,0x18,0x11,0x08,0x31,0x44,0x21,0x80,0x01,0x00,0x01, };//东 uchar code tab3[]={ 0x18,0x06,0x18,0x06,0xD8,0xFF,0x7F,0x06,0x18,0x03,0x1C,0x0F,0xBC,0x0D,0xFE,0x7F, 0x1E,0x0C,0x9B,0x0D,0x98,0x3D,0xD8,0x6C,0x78,0xEC,0x18,0xCC,0x18,0x0F,0x18,0x06, };//栋 uchar code tab4[]={ 0xCC,0x3F,0x18,0x36,0x03,0x36,0xF6,0x73,0xD8,0xF3,0x8F,0xF1,0xCC,0x3C,0xFC,0x19, 0x80,0x01,0xFF,0xFF,0xC0,0x03,0xE0,0x07,0xB0,0x1D,0x9C,0xF1,0x87,0x61,0x80,0x01, };//梁 uchar code tab5[]={ 0xE0,0x30,0x3E,0x33,0x30,0x36,0x30,0x36,0xFF,0x30,0x38,0x33,0x78,0x36,0xFC,0x36, 0x3C,0xF0,0x36,0x3E,0xF3,0x33,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30, };//科

单片机LED点阵显示图形和汉字

本文基于单片机(AT89C51)讲述了16×16 LED汉字点阵显示的基本原理、硬件组成与设计、程序编译与下载等基本环节和相关技术。 2 硬件电路组成及工作原理本产品拟采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路(74HC154)、16×16 LED点阵5部分组成,如图1所示。 其中,AT89C51是一种带4 kB闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1 000次写/擦循环,数据保留时间为10年。他是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。因此,在智能化电子设计与制作过程中经常用到AT89C51芯片。 时钟电路由AT89C51的18,19脚的时钟端(XTALl及XTAL2)以及12 MHz晶振X1、电容C2,C3组成,采用片内振荡方式。

复位电路采用简易的上电复位电路,主要由电阻R1,R2,电容C1,开关K1组成,分别接至AT89C51的RST复位输入端。 LED点阵显示屏采用16×16共256个象素的点阵,通过万用表检测发光二极管的方法测试判断出该点阵的引脚分布,如图2所示。 我们把行列总线接在单片机的IO口,然后把上面分析到的扫描代码送人总线,就可以得到显示的汉字了。但是若将LED点阵的行列端口全部直接接入89S51单片机,则需要使用32条IO口,这样会造成IO资源的耗尽,系统也再无扩充的余地。因此,我们在实际应用中只是将LED点阵的16条行线直接接在P0口和P2口,至于列选扫描信号则是由4-16线译码器74HC154来选择控制,这样一来列选控制只使用了单片机的4个IO口,节约了很多IO 资源,为单片机系统扩充使用功能提供了条件。考虑到P0口必需设置上拉电阻,我们采用4.7 kΩ排电阻作为上拉电阻。 汉字扫描显示的基本过程是这样的:通电后由于电阻R1,电容C1的作用,使单片机的RST复位脚电平先高后低,从而达到复位;之后,在C2,C3,X1以及单片机内部时钟电路的作用下,单片机89C51按照设定的程序在P0和P2接口输出与内部汉字对应的代码电平送至LED点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4接口输出列选扫描信号(低电平驱动),从而选中相应的象素LCD发光,并利用人眼的视觉暂留特性合成整个汉字的显示。

EDA 16x16点阵显示

课程设计报告 课程名称数字系统与逻辑设计 课题名称16*16点阵显示 专业通信工程 班级 学号 姓名 指导教师乔汇东胡瑛 2012年7月2日

湖南工程学院课程设计任务书 课程名称数字系统与逻辑设计课题16*16点阵显示 专业班级通信工程1001班 学生姓名 学号 指导老师乔汇东胡瑛 审批乔汇东 任务书下达日期2012 年6月23日 任务完成日期2012 年7月2日

《数字系统与逻辑设计》课程设计任务书 一、设计目的 全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。 二、设计要求 1、设计正确,方案合理。 2、程序精炼,结构清晰。 3、设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。 4、上机演示。 5、有详细的文档。文档中包括设计思路、设计仿真程序、仿真结果及相应的分析与结论。 三、进度安排 第二十周星期一:课题讲解,查阅资料 星期二:总体设计,详细设计 星期三:编程,上机调试、修改程序 星期四:上机调试、完善程序 星期五:答辩 星期六-星期天:撰写课程设计报告 附: 课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。 正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现;四、系统调试与仿真;五、总结与体会;六、附件(所有程序的原代码,要求对程序写出必要的注释);七、评分表。

单片机实验--LCD显示实验

实验19L C D显示实验 一、实验目的: 学习液晶显示的编程方法,了解液晶显示模块的工作原理。 掌握液晶显示模块与单片机的接口方法。 二、所需设备 CPU挂箱、8031CPU模块 三、实验内容 编程实现在液晶显示屏上显示中文汉字“北京理工达盛科技 有限公司”。 四、实验原理说明 五、实验步骤 1、实验连线 8255的PA0~PA7接DB0~DB7,PC7接BUSY,PC0接REQ,CS8255 接CS0。 2、运行实验程序,观察液晶的显示状态。 六、程序框图 八、附:点阵式LCD 模块 点阵式LCD模块 由一大一小两块液晶 模块组成。两模块均 由并行的数据接口和 应答信号接口两部分 组成,电源由接口总 线提供。 (1)OCMJ2×8液晶 模块介绍及使 用说明 OCMJ中文模块系列液晶显示器内含 GB 2312 16*16点阵国标一级简体汉字和 ASCII8*8(半高)及8*16(全高)点阵英文字库,用户输入区位码或 ASCII 码即可实现文本显示。 OCMJ中文模块系列液晶显示器也可用作一般的点阵图形显示器

之用。提供有位点阵和字节点阵两种图形显示功能,用户可在指定的屏幕位置上以点为单位或以字节为单位进行图形显示。完全兼容一般的点阵模块。 OCMJ中文模块系列液晶显示器可以实现汉字、ASCII 码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。 本系列模块具有上/下/左/右移动当前显示屏幕及清除屏幕的命令。一改传统的使用大量的设置命令进行初始化的方法,OCMJ 中文模块所有的设置初始化工作都是在上电时自动完成的,实现了“即插即用”。同时保留了一条专用的复位线供用户选择使用,可对工作中的模块进行软件或硬件强制复位。规划整齐的10个用户接口命令代码,非常容易记忆。标准用户硬件接口采用REQ/BUSY 握手协议,简单可靠。 硬件接口 接口协议为请求/应答(REQ/BUSY)握手方式。应答BUSY 高电平(BUSY =1)表示 OCMJ 忙于内部处理,不能接收用户命令;BUSY 低电平(BUSY =0)表示 OCMJ 空闲,等待接收用户命令。发送命令到 OCMJ可在BUSY =0 后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ 信号(REQ =1)通知OCMJ请求处理当前数据线上的命令或数据。OCMJ模块在收到外部的REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理,此时,用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY =0?),如果BUSY =0,表明模块对用户的写操作已经执行完毕。可以再送下一个数据。如向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节,模块在接收到最后一个字节

LED灯实验报告

mcs-51单片机接口技术实验 适用:电气类专业本科学生 实验报告 实验一熟悉proteus仿真模拟器,led花样表演 一、实验目的 掌握以下方法: 1.在proteus的环境下,设计硬件原理图; 2.在keilc集成环境下设计c51语言程序; 2.在proteus的环境下,将硬件原理图与软件联接仿真运行。 二、实验环境 1.个人微机,windows操作系统 2.proteus仿真模拟器 3.keilc编程 三、实验题目 基本题:使用8051的并口带动8个led发光二极管显示一种花样表演。提高题:使用一个键切换实现3种以上花样表演。 四、实验类型: 学习、模仿与简单设计型。 五、实验步骤: 0、进入isis,先选择需要的元件,然后设计电原理图,保存文件; 1、在keilc软件集成环境下编写源程序,编译工程文件; 2、将所设计的硬件原理图与目标代码程序相联接; 4、按play键,仿真运行程序。 附,可能用到的元件名称: cpu:at89c51或任一种mcs-51家族cpu; 晶振:crystal; 电容器:capacitors,选22pf 电解电容:cap-elec或genelect10u16v 复位电阻:minres10k 限流电阻:minres330r 按键:button led:led-blue/red/yellow或diode-led (一)接线图如下: (二).基础花样 (四)程序流程图 (五)c程序 #include <> #define uint unsigned int #define uchar unsigned char const tab1[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f, /*正向流水灯*/ 0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,};/*反向流水灯*/ const tab2[]={0xff,0x00,0xff,0x00,0xff,0x00,}; void delay() { uint i,j; for(i=0;i<256;i++) for(j=0;j<256;j++)

图形点阵液晶显示模块操作说明

图形点阵液晶显示模块使用手册 FM12864I 深圳市潮丰实业有限公司 深圳市福田区香梅路华泰综合楼西座7楼 邮政编码:518036 电话:3913268 3913228 3922565 传真:3920100

目录 (一)概述 (1) (二) 外形尺寸图 (1) (三) 模块主要硬件构成说明 (2) (四) 模块的外部接口 (3) (五) 指令说明 (3) (六) 读写操作时序 (5) (七) 应用举例 (6)

一.概述 FM12864I是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可完成图形显示,也可以显示8×4个(16×16点阵)汉字。 主要技术参数和性能: 1.电源:VDD:+5V;模块内自带-10V负压,用于LCD的驱动电压。 2.显示内容:128(列)×64(行)点 3.全屏幕点阵 4.七种指令 5.与CPU接口采用8位数据总线并行输入输出和8条控制线 6.占空比1/64 7.工作温度:-10℃∽+50℃,存储温度:-20℃∽+70℃ 二.外形尺寸图 1.外形尺寸图 2.外形尺寸 表 1 ITEM NOMINAL DIMEN UNIT 模块体积54×50×6.5 mm 视域43.5×29 mm 行列点阵数128×64 dots 点距离0.28×0.35 mm 点大小0.32×0.39 mm

三.模块主要硬件构成说明(结构框图) IC3为行驱动器。IC1,IC2为列驱动器。IC1,IC2,IC3含有以下主要功能器件。了解如下器件有利于对LCD模块之编程。 1. 指令寄存器(IR) IR是用于寄存指令码,与数据寄存器数据相对应。当D/I=0时,在E信号下降沿的作用下,指令码写入IR。 2.数据寄存器(DR) DR是用于寄存数据的,与指令寄存器寄存指令相对应。当D/I=1时,在下降沿作用下,图形显示数据写入DR,或在E信号高电平作用下由DR读到DB7∽DB0数据总线。DR和DDRAM之间的数据传输是模块内部自动执行的。 3.忙标志:BF BF标志提供内部工作情况。BF=1表示模块在内部操作,此时模块不接受外部指令和数据。BF=0时,模块为准备状态,随时可接受外部指令和数据。 利用STATUS READ指令,可以将BF读到DB7总线,从检验模块之工作状态。4.显示控制触发器DFF 此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY OFF),DDRAM的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。 DDF的状态是指令DISPLAY ON/OFF和RST信号控制的。 5.XY地址计数器 XY地址计数器是一个9位计数器。高3位是X地址计数器,低6位为Y地址计数器,XY地址计数器实际上是作为DDRAM的地址指针,X地址计数器为DDRAM 的页指针,Y地址计数器为DDRAM的Y地址指针。 X地址计数器是没有记数功能的,只能用指令设置。 Y地址计数器具有循环记数功能,各显示数据写入后,Y地址自动加1,Y地址指针从0到63。 6.显示数据RAM(DDRAM) DDRAM是存储图形显示数据的。数据为1表示显示选择,数据为0表示显示非选择。DDRAM与地址和显示位置的关系见DDRAM地址表(见第6页)。 7.Z地址计数器 Z地址计数器是一个6位计数器,此计数器具备循环记数功能,它是用于显示行扫描同步。当一行扫描完成,此地址计数器自动加1,指向下一行扫描数据,RST复位后Z地址计数器为0。

16X16点阵LED显示

毕业设计说明书 课题名称: 16乘16点阵显示电路的电路原理图及pcb绘制 学生姓名 专业 班级 时间 指导教师

姓名 设计题目16乘16点阵显示电路的原理图及pcb 绘制 指导教师 设计目的利用单片机控制显示屏,显示相应字幕掌握PROTEL99SE软件的操作和应用 理解和运用芯片 设计摘要 本设计是一16×16点阵LED电子显示屏的设计。 整机以单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制一个行驱动器 74LS168和两个列驱动器74LS164来驱动显示屏显示。采用4块8×8点阵LED显示模块来组成16×16点阵显示模式。 单片机控制系统程序采用单片机以C语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。所显示字符的点阵数据可以自行编写(即直接点阵画图),也可从标准字库中提取。 论文着重介绍点阵显示的制作过程,即元器件的制作,单个封装,原理图的绘制以及PCB版布线的过程 设计规划1.建立库原件里面的没有的原件,并做出封装 2.绘制点阵点阵显示的原理图 3.对原理图里面的原件进行封装 4.创建链接表 5.导入到PCB里面,并排列连接 6.制造PCB版 7.

姓名 设计题目16乘16点阵显示电路的原理图及pcb绘制指导教师 设计目的利用单片机控制显示屏,显示相应字幕掌握PROTEL99SE软件的操作和应用 理解和运用芯片 设计摘要 本设计是一16×16点阵LED电子显示屏的设计。 整机以单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制一个行驱动器 74LS168和两个列驱动器 74LS164来驱动显示屏显示。采用4块8×8点阵LED显示模块来组成16×16点阵显示模式。 单片机控制系统程序采用单片机以C语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。所显示字符的点阵数据可以自行编写(即直接点阵画图),也可从标准字库中提取。 论文着重介绍点阵显示的制作过程,即元器件的制作,单个封装,原理图的绘制以及PCB版布线的过程 设计规划1.建立库原件里面的没有的原件,并做出封装 2.绘制点阵点阵显示的原理图 3对原理图里面的原件进行封装 4创建链接表 5导入到PCB里面,并排列连接 6制造PCB版

8 8LED点阵显示实验

8 8LED点阵显示实验 一.实验要求 利用实验系统提供的实验模块点阵显示,编程实现中英文字符的显示。 二.实验目的 1.了解LED点阵显示的基本原理和实现方法。 2.掌握点阵汉字库的编码和从标准字库中提取汉字编码的方法。 三.实验电路及连线 点阵显示模块WTD3088的(红色)列输入线接至内部LED的阴极端,行输入线接至内部LED 的阳极端(若阳极端输入为高电平,阴极端输入低电平,则该LED点亮)。发光点的分布如图22-0所示。 Fig 22-0 WTD3088 LED分布 如图22-1示,本实验模块使用74LS374来控制列输入线的电平值。将74LS374的某输出置0,则对应的LED阴极端被置低。如图22-2示,本实验模块使用74LS273来控制行输入线,并通过9013提供电流驱动。将74LS273的某输出置1,则对应的LED阳极端被置高。每次系统重新开启或总清后,74LS273输出为全0,LED显示被关闭。 通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。

Fig 22-1 LED模块及列扫描电路 Fig 22-2 行扫描电路 Fig 22-3地址译码电路 本实验模块使用4块WTD3088组成16×16点阵,以满足汉字显示的要求。为了方便的控制四个单元,使用了一片74LS139译码,产生四个地址片选信号:CLKR1= CSLED,CLKR2= CSLED+1,用于行控制的两片74LS273;CLKC1= CSLED+2,CLKC2= CSLED+3,用于列控制的两片74LS374。实验接线:按示例程序,模块的CSLED接51/96地址的8000H。 四.实验说明

16led点阵显示汇编版

课程设计报告 课程《微机原理课程设计》 题目《LED点阵屏应用》 系别物理与电子工程学院 年级 10级专业光电信息工程 班级光电101 学号 0503101(02/28/33/34)学生姓名陈晨、周翔宇、翟付伟、朱易佳 指导教师居伟骏职称讲师 设计时间 2013年3月17日~29日

目录 目录 (1) 一、绪论 (2) 二、选题分析 (3) 2.1题目内容与要求 (3) 2.1.1具体要求: (3) 三、方案设计 (3) 3.1硬件设计 (3) 3.1.1设计所用元件 (3) 3.1.2硬件连接 (6) 3.2软件设计 (6) 3.2.1编程分析与程序框图 (6) 3.2.2 程序代码 (8) 四、结果及分析 (14) 4.1实验结果 (14) 4.2结果分析 (14) 五、总结与体会 (15) 六、参考文献 (16)

一、绪论 微机原理是一门专业基础课程,它的主要内容包括微型计算机体系结构、8086微处理器和指令系系统、汇编语言设计以及微型计算机各个组成部分介绍等内容。通过对微机原理课本以及实验的学习,我们可以了解包括微型计算机体系结构、汇编语言设计、8086微处理器和指令系统等内容。 作为一门计算机应用专业的一门必修课,微机原理与接口技术对于我们了解计算机内部的工作原理,各部件的作用,各部件间的联系是十分重要的。但是只学习课本知识是远远不够的。所以,我们只有通过真实的接触,实际的操作,才能将理论知识和实际应用联系在一起,真正的将理论实际化。我们知道学习和掌握计算机中常用的接口技术以及设计技术,充分理解理论知识对于应用的指导作用是很重要的,只有这样才能进一步加强理论知识与应用相结合的实践和锻炼。因此,我们开展了这次历时两个星期的课程设计,通过这次设计实践能进一步加深我们对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。 本次课程设计主要是为了了解8255芯片的工作原理和相关设计技术,并且通过此次设计,我们对于微型计算机的基本系统结构和软硬件的工作原理会有大体的认识。 学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。这不仅丰富巩固了我们在课堂上学的知识,而且还为我们日后步入社会打下了基础。

8 16X16LED点阵显示程序

16×16按字显示程序: ;P0和P2口输出字型码,P1口输出列线扫描。 ORG 0000H SJMP LOOP ORG 0080H LOOP:MOV A,#00H ;开机初始化,清除画面MOV P0,A ;清除P0口 ANL P2,#00 ;清除P2口 MOV R2,#200 D100MS: MOV R3,#250 ;延时100毫秒 DJNZ R3,$ DJNZ R2,D100MS

MOV 20H,#00H ;字型码指针赋初值 L100: MOV R1,#10 ;每个字的停留时间 L16: MOV R6,#16 ;每个字16个16位码 MOV R4,#00H ;列线扫描指针清零,接4-16译码器,。 MOV R0,20H ;字型码指针存入R0 L3: MOV A,R4 ;列线扫描指针存入A MOV P1,A ;列线扫描输出 INC R4 ;扫描指针加1,指向下一列 MOV A,R0 ; 取码指针存入A MOV DPTR,#TABLE ;取数据表的上半部分的代码 MOVC A,@A+DPTR MOV P0,A ; 输出到P0 INC R0 ;取字型码指针加1,取下一个码。 MOV A,R0 MOV DPTR,#TABLE ;取数据表下半部份的代码 MOVC A,@A+DPTR MOV P2,A ;输出到P2口 INC R0 ;取字型码指针加1,取下一个码。 MOV R3,#02 ;扫描1毫秒 DELAY2:MOV R5,#248 DJNZ R5,$ DJNZ R3,DELAY2 MOV A,#00H ;清除屏幕 MOV P0,A ANL P2,#00H DJNZ R6,L3 ;一个字16个码是否完成? DJNZ R1,L16 ;每个字的停留时间是否到了? MOV 20H,R0 ;取码指针存入20H(静态显示) CJNE R0,#224,L100 ;7个字224个码是否完成? JMP LOOP ;反复循环 16×16滚动显示程序: ORG 0000H SJMP LOOP ORG 0080H LOOP:MOV A,#00H ;开机初始化,清除画面 MOV P0,A ;清除P0口

LCD1602液晶显示实验要点

实验报告 实验名称: [LCD1602液晶显示实验]姓名: 学号: 指导教师: 实验时间: [2013年6月15日] 信息与通信工程学院

LCD1602液晶显示实验 1.实验原理 1.1 基本原理 1.1.1 1602字符型LCD简介 字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。 1.1.2 1602LCD的基本参数及引脚功能 1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图1-2所示: 图1-2 1602LCD尺寸图 1.1602LCD主要技术参数: 显示容量: 16×2个字符 芯片工作电压: 4.5~5.5V 工作电流: 2.0mA(5.0V) 模块最佳工作电压: 5.0V 字符尺寸: 2.95×4.35(W×H)mm 2.引脚功能说明: 1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表: 表1-3引脚接口说明表 编 符号引脚说明编号符号引脚说明 号 1 VSS 电源地9 D 2 数据 2 VDD 电源正极10 D 3 数据 3 VL 液晶显示偏压11 D 4 数据 4 RS 数据/命令选择12 D 5 数据 5 R/W 读/写选择13 D 6 数据 6 E 使能信号14 D 7 数据 7 D0 数据15 BLA 背光源正极 8 D1 数据16 BLK 背光源负极

1.1.3 1602LCD的指令说明及时序 1602液晶模块内部的控制器共有11条控制指令,如表1-4所示: 表1-4 控制命令表 序号指令RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清显示0 0 0 0 0 0 0 0 0 1 2 光标返回0 0 0 0 0 0 0 0 1 * 3 置输入模式0 0 0 0 0 0 0 1 I/D S 4 显示开/关控制0 0 0 0 0 0 1 D C B 5 光标或字符移位0 0 0 0 0 1 S/C R/L * * 6 置功能0 0 0 0 1 DL N F * * 7 置字符发生存贮器 地址 0 0 0 1 字符发生存贮器地址 8 置数据存贮器地址0 0 1 显示数据存贮器地址 9 读忙标志或地址 0 1 BF 计数器地址 10 写数到CGRAM或 DDRAM) 1 0 要写的数据内容 11 从CGRAM或 DDRAM读数 1 1 读出的数据内容 1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)读写操作时序如图1-5和1-6所示: 图1-5 读操作时序

单片机 点阵显示图形

按键控制8X8LED点阵屏显示图形 /* 名称:按键控制8X8LED点阵屏显示图形 说明:每次按下K1时,会使8X8LED点阵屏循环显示不同图形。 本例同时使用外部中断和定时中断。 */ #include #include #define uchar unsigned char #define uint unsigned int //待显示图形编码 uchar code M[][8]= { {0x00,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x00}, //图1 {0x00,0x38,0x44,0x54,0x44,0x38,0x00,0x00}, //图2 {0x00,0x20,0x30,0x38,0x3c,0x3e,0x00,0x00} //图3 }; uchar i,j; //主程序 void main() { P0=0xff; P1=0xff; TMOD=0x01; //T0方式1 TH0=(65536-2000)/256; //2ms定时 TL0=(65536-2000)%256; IT0=1; //下降沿触发 IE=0x83; //允许定时器0、外部0中断 i=0xff; //i的初值设为0xff,加1后将从0开始while(1); } //T0中断控制点阵屏显示 void Show_Dot_Matrix() interrupt 1 { TH0=(65536-2000)/256; //恢复初值 TL0=(65536-2000)%256; P0=0xff; //输出位码和段码 P0=~M[i][j]; P1=_crol_(P1,1); j=(j+1)%8; } //INT0中断(定时器由键盘中断启动) void Key_Down() interrupt 0 {

5实验五:点阵LED显示

实验五点阵LED显示 1、实验目的:(1)了解点阵LED显示器的基本原理; (2)掌握单片机控制点阵LED显示程序的设计方法。 2、实验仪器:PC机一台,万利仿真器一套及其开发环境,清华TMC-1开放式单片机实验系统一套。 3、实验原理:点阵的LED显示器是将许多LED用类似矩阵的结构排列在一起组成的显示器件,当用单片机输出控制信号,使得点阵中的LED有些发光,有些不发光,即可显示出特定的信息,包括汉字、图形等,由微机控制点阵LED大屏幕广告宣传牌就是采用的这样的显示技术。 实验仪上设有一个共阳极8×8的点阵LED显示器,其点阵结构如图所示。 该点阵对外引出8条行线,8条列线,如果使某一个LED发光,只要将与其相连接的行线加高电平,列线加低电平;若是使某一列LED发光,只要将8根行线全加高电平,此列线加低电平;若是使某一列LED部分发光,只要将需要发光的行线加高电平,此列线加低电平。实验仪上的点阵LED及驱动连接电路如下一页的电路图所示(其中点阵LED与8051输入输出口之间的连接需要实验者自己连接),这里采用了P2和P1口。8051的P2口输出的数据通过行驱动器(74LS07)加在了点阵LED的8条行线上,8051的P1口输出的数据通过列驱动器(ULN2003A)反相后加在了点阵LED的8条列线上。如果要使该点阵显示某一信息,只要通过P1、P2口输出特定的数据,控制点阵LED逐行或逐列循环发光即可。 例如:如果显示汉字“年”,采用逐列循环发光。首先由“年”的点阵轮廓确定点阵代码。“年”字的点阵轮廓如右图所示,根据“年”字的点阵代码,确定逐列发光的时序如下: 1、P2口输出24H;P1口输出80H,第7列的2个LED发光; 2、P2口输出44H;P1口输出40H,第6列的2个LED发光; 3、P2口输出DCH;P1口输出20H,第5列的5个LED发光; 4、P2口输出54H;P1口输出10H,第4列的3个LED发光; 5、P2口输出7FH;P1口输出08H,第3列的7个LED发光; 6、P2口输出54H;P1口输出04H,第2列的3个LED发光; 7、P2口输出54H;P1口输出02H,第1列的3个LED发光; 8、P2口输出44H;P1口输出01H,第0列的2个LED发光; 在以上每一步骤之间插入 1ms左右的延时,重复进行以上1―8步骤,即可在LED上稳定的显示出“年”字。这里P2口先后输出的8字节数据:24H,44H,DCH,54H,7FH,54H,54H,44H,称为“年”的代码。

几种常见的12864图形点阵模块

几种常见的12864图形点阵模块 12864点阵液晶模块分为带汉字库和不带汉字库两大类,目前带汉字库的通常是ST7 920驱动,它可以工作在汉字字符方式和图形点阵方式,很多制作都用它,如果需要显示较多汉字,用它最为方便。 在显示汉字数量很少的场合,我们可以使用更加廉价的、不带字库的点阵液晶模块,这正是本文重点介绍的。它们的控制电路有KS0108和ST7565两种:KS0108很简单,一共只有7条指令,可是它没有串行接口;ST7565有20多条指令(最常用的也就几条),有串行接口,可选串行或并行工作。KS0108和ST7565的指令和上述带字库的ST7920区别较大,所以初学者买液晶时一定要搞清楚是哪种驱动电路。即使同样的驱动电路,不同厂家或者不同型号的产品,具体细节仍可能不同。例如有的片选信号是高电平有效,有的却是低电平有效,有的把显示区分为左右两半分别选取,有的却不加区分。所以使用前要仔细看厂家说明,如果没有,就要看液晶模块背面给出的具体型号,根据这个型号去查找使用手册。 笔者最近在淘宝网上搜寻到一款12864的图形点阵液晶,只有4cm宽、3.5cm高,显示面积为3.2cm宽、1.95cm高,非常小巧。更加难能可贵的是它可以在3V低电压工作,很适合我们制作小型便携装置。该液晶模块型号是SP12864FPD-12CSBE,由北京集粹电子设备公司出品,它的外形见图A。

图A 12864图形点阵液晶模块图B 小小日历钟(文字界面)图C 小小日历钟(图形界面) 图B、图C所示为笔者用它制作的一个小小日历钟,它的特点是具有可以随意转换的文字和图形界面。文字界面除了显示年月日时分秒,在右上角还有一个小鸡啄米的小动画,图形界面用指针在刻度上指示出时分秒,是不是有点新意呢?图D所示是调频收

相关主题
文本预览
相关文档 最新文档