基于51单片机的液晶显示屏控制系统设计

基于51单片机的液晶显示屏控制系统设计
基于51单片机的液晶显示屏控制系统设计

基于51单片机的液晶显示屏控制系统设计

1 概述

1.1系统背景

液晶显示器件在中国已有二十余年的发展历史。二十余年来,液晶显示器件从实验室走向大规模生产集团,形成了独立的产业部门。现在,液晶显示几乎已经应用于生产,生活的各个领域,人们几乎时时处处都要与这一神奇而又普通的面孔打交道。

液晶显示是集单片机技术、微电子技术、信息处理于一体的新型显示方式。由于液晶显示器具有低压低功耗,显示信息量大易于彩色化,无电磁辐射,长寿命,无污染等特点。LCD是目前显示产业中发展速度最快,市场应用最广的显示器件,成为众多显示媒体中的佼佼者,在越来越多的领域中发挥作用,是目前显示器件中一个理想的选择。

LCD在监控系统中的应用:目前大多数监控系统自带的显示系统为LED数码管显示,这样显示效果比较单一,只能显示监控系统的测量值。而LCD液晶显示器不仅可以显示数值、汉字等,并且可以显示文本和图形。利用LCD和键盘实现人机交互,使监控系统独立工作成为可能。通过监控系统对现场的单回路控制器进行参数设置,对各个单回路控制器的工作进行监控。

LCD在时钟中的应用:在日常生活中我们会经常看到时间的显示,这些显示大都是采用液晶显示器来显示的,而对其中的汉字无法用显示来解决。我们利用LCD液晶模块制成的小屏幕实现了时间的显示,显示格式为“时时:分分:秒秒”。另外,可以增加闹钟功能,时间到了则产生音乐声;还可以增加万年历显示“年月日”等多项功能。

LCD在大屏幕显示中的应用:大屏幕显示的应用范围极广,随着社会发展,公众生活的加强,人们对能够面向广大公众传递信息的显示装置越来越感到必需。使用液晶投影显示大屏幕,不仅有投影仪,指挥用大屏幕,还有液晶投影彩色电视。它可以用一个体积很小的系统装置,实现100英寸以上的非常漂亮的大屏幕电视显示。它与传统的显示媒体相比,具有分辨率极高,透过性好,显示内容丰富,彩色易于控制等优点。

随着计算机技术及电子通信技术的发展,LCD显示屏作为一种新的传媒工具,现已经应用到商业、军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业,大到几十平方米的大屏幕,小到家庭影院用的图文显示屏,以及政府部门应用的电子黑板,证券、银行等部门用的信息数字混合屏。LCD显示屏带来广泛的社会效益和经济效益,具有良好的发展前景。

1.2系统概述

本实验系统分为单片机最小系统板和液晶显示屏两部分。单片机最小系统负责接收个人计算机所编辑的文本及内容,通过RS232串行接口通信完成单片机与PC机之间的数据传送,而个人计算机(即PC机),主要完成显示内容的编辑、字符码的查找、字符数据的发送等工作。基于Windows操作系统下的文本编辑软件有很多种,例如:记事本、Micorsoft Word、写字板等,我们可以采用任何一种编辑软件将要显示的内容(包括汉字、中英文字母、标点符号等)编辑成一个文本文件,然后通过已经编写好的应用程序在特定的字库中依次搜索到文本文件中的内容,并且取出该字符的字模数据,此项工作称为字模数据的提取;字模数据文件的生成也就是将取出的字模按顺序存放到一个十六进制文件中;字符数据建立好之后将其存放在PC机的硬盘上,等到需要的时候通过串行通信软件将字符数据文件发送给液晶显示系统模块。

LCD显示屏包括主控制模块和LCD液晶显示模块。主控制模块负责接收单片机发送过来的字模数据文件,并且协调各个LCD液晶显示模块工作,主控制器模块的核心是T6963C 控制器,为了存储字模数据还在主控制器模块中扩展了一片8K存储器芯片6264;LCD液晶显示模块由两片行驱动器T6A40和三片列驱动器T6A39进行驱动,该模块一边接收主控制模块的数据,一边将数据送LCD液晶显示屏显示,为了方便系统的扩展,各模块之间采用串行口接收数据,并且接到系统串行总线上。

本系统主要是实现单片机与液晶显示模块之间的接口技术,可以采用间接控制方式完成。将液晶显示模块接口与单片机系统板中的某个并行I/O接口连接,计算机通过对该I/O 接口的操作间接的实现对模块的控制。

2系统设计方案

此LCD液晶显示控制系统设计的关键是要实现LCD的显示控制。应该先从显示方式的确定入手,接下来设计相应显示方式的电路,要实现显示内容的实时更新,就必须考虑字模数据的存储及通信电路的设计。

2.1字模数据的存储

由于89C51单片机内部程序存储器(ROM)只有4K空间,本设计采用16×16点阵显示一个汉字,每一行需要两个字节数据,一个汉字占16×2=32字节,汉字一共有6000多个,不可能将庞大的汉字字库存入在单片机内部,即使将预先要显示的内容存入ROM中,也不便于实时控制,所以只有考虑扩展外部数据存储器。

利用Windows自带的字库(即使用软字库)的方式扩展外部数据存储器。通过软件编程直接在字库中找到需要显示字符的区位码并读出其字符码,存于一个文本文件中,待所有显示内容的字符码查询完毕后,将存放所有字符码的文本文件通过串行通信发送给单片机,单片机将接收到的数据存放在外部扩展的数据存储器中,数据接收完毕后,单片机就从存储器中依次读出每一个字符的字符码并送到LCD显示屏显示。该方案与方案一相比,虽然通信过程占整个显示周期的比例相对较大,但是硬件电路设计简单,成本较低,减少了单片机查询硬件字库所需要的时间,提高了单片机动态扫描的速度,字符显示的稳定度较高。

2.2通信电路

串行通信是指一个数据的所有位按一定的顺序和方式,一位一位地通过串行输入/输出口进行传送。由于串行通信是数据的逐位顺序传送,在进行串行通信时,只需一根传输线,其传送的数据位多且通信距离长。串行通信方式如图2-1。

计算机与单片机的数据通信,采用串行通信,与并行通信相比,串行通信具有传输距离远,接口电路与软件编程简单等特点,所以本系统选用串行通信。串行通信接口电路见后面的硬件电路设计。

RXD TXD TXD RXD

图2-1 串行通信方式

3 液晶显示模块简介

液晶显示模块单元电路主要包括显示控制器、行驱动器、列驱动器、电源偏置电路、显示存储器、液晶显示屏、液晶显示模块接口。

(1)显示控制器主要由控制器T6963C组成,可提供与外部MCU的数据接口及对显示存储器的读写操作;并可控制行,列驱动器的时序电路,数据格式和显示格式等。(2)行驱动器由行驱动器T6A40组成,用于把控制器的串行数据转换成LCD屏所需要的并行行数据。

(3)列驱动器由列驱动器T6A39组成,可接受控制器的串行数据并将其转换成LCD屏所需要的并行列数据。

(4)电源偏置电路主要为行、列驱动器提供LCD所需的各种偏置电压。

(5)显示存储器由一块32K的随机存储器(RAM)组成,可为液晶显示模块提供显示数据的存储空间。

(6)液晶显示屏(LCD)提供128行、240列的点阵显示屏幕。

(7)液晶显示模块接口用于提供与单片机的接口。

液晶显示模块的原理框图如图3-1。

行驱

动器

行驱动器液晶显示屏240*128 DOTS

图3-1 液晶显示模块原理框图

3.1显示控制器

显示控制器主要由T6963C组成,它由振荡器、时序控制电路、工作方式设置寄存器及电路,内部字符库CGROM及光标控制电路,显示存储器管理电路以及运算电路和各种功能电路组成。控制部通过振荡器外接晶体振荡器产生振荡脉冲,经时序控制电路调制产生T6963C的工作时钟脉冲系列,根据工作方式设置电路生成各路控制及驱动时序脉冲,从而实现T6963C的工作控制。其引脚图如图3-2。

图3-2 T6963C引脚图

控制部提供了使用引脚电平设置内部工作状态的功能,使T6963C上电后就开始对所连接的液晶显示驱动系统进行正常的控制及驱动。这将避免因上电控制器尚未进行初始化而使液晶显示驱动系统不能正常工作,导致液晶显示屏上出现不希望的显示状态。

3.2驱动方式的设置

驱动方式是指T6963C向液晶显示驱动系统传输显示数据的格式。他根据所要控制的液晶显示驱动系统的数据传输格式的要求而定。T6963C可以实现四种数据传输格式,它由引脚DUAL和SDSEL的电平状态设置。

DUAL:液晶显示器件电极排列形式的设置。

当DUAL=1时,液晶显示器件为单屏结构;当DUAL=0时,液晶显示器件

为双屏结构。

SDSEL:数据传输格式设置。

当SDSEL=1时,数据传输格式为2位并行同步传输;当SDSEL=0时,数据

传输格式为1位串行传输。

这两个设置引脚的电平组合确定了驱动部中数据传输的输出端。如表3-1:DUAL SDSEL 上半屏数据传输线下半屏数据传输线

1 1 HOD,ED —

1 0 ED —

0 1 HOD,ED LOD,ED

0 0 ED ED

表3-1

3.2.1显示窗口长度设置

显示窗口长度是指T6963C所要控制的液晶显示器件水平方向最大的像素点数。显示窗口长度的设置将确定了驱动部向液晶显示驱动系统发送的显示数据的个数,不管实际控制的显示屏的点阵数如何,他已固定了驱动信号的时序关系。该设置由引脚MD3和MD2(显示数据传输量设置端)的电平组合实现,如表3-2:

MD3 MD2 像素点数字符数

1 1 256 32

1 0 320 40

0 1 512 64

0 0 640 80

表3-2

3.2.2显示窗口宽度设置

显示窗口宽度是指T6963C所要控制的液晶显示器件垂直方向最大的像素点数。显示窗口宽度的设置将确定了驱动部向液晶显示驱动系统发送的帧信号时序和占空比系数。该设置由引脚MDS,MD1和MD0(显示帧信号设置端)与DUAL设置端组合实现,如表3-3:DUAL MDS MD1 MD0 像素点行数占空比系数

1/0 0 1 1 16/32 16

1/0 0 1 0 32/64 32

1/0 0 0 1 48/96 48

1/0 0 0 0 64/128 64

1/0 1 1 1 80/160 80

1/0 1 1 0 96/192 96

1/0 1 0 1 112/224 112

1/0 1 0 0 128/256 128

表3-3

3.2.3显示字符的字体设置

显示字符的字体选择实际上是选择字符间距。T6963C内部字符库是5*8点阵字符字模,在垂直方向字模数据中留有一行的间距,是不可变动的;但在水平方向字模数据将一字节的高三位作为字间距处理,即字间距可以为一点距,两点距或三点距,也可以没有。T6963C 可以根据需要通过引脚FS1和FS0(字体选择端)的电平组合来设置字符间距,这里表示为字符的字体。组合设置如表3-4:

FS1 1 1 0 0

FS0 1 0 1 0

字体5*8 6*8 7*8 8*8

表3-4

字体选择的实现是在显示数据传输过程中将一字节的8位字模数据有选择地传输几位。比如仅取8位数据中低5位作为显示数据传输而舍弃高3位,那么显示为5*8点阵字体的字符;或取8位数据中低六位作为显示数据传输而舍弃高2位,那么显示为6*8点阵字体的字符;再或取8位数据中低7位作为显示数据传输而舍弃高1位,那么显示为7*8点阵字体的字符;如果8位数据全部作为显示数据传输,那么显示位8*8点阵字体的字符。这是在文本显示方式下。在图形显示方式下,则将是取舍图形数据有效位的问题了。

振荡器的晶体振荡器的选择

振荡器时钟与控制器所控制的液晶显示驱动系统的驱动帧频(行数)和数据传输量(列数)有关。晶体的频率F

OSC

可以由下列公式计算得来:

F

OSC =2F

SCP

=2*(8M*8N*Fr)

其中F

SCP

——驱动位移时钟频率,即HSCP(LSCP)的脉冲频率;

M——字符数/行,8M即最大驱动的像素数/行;

N——字符行数/帧,8N即最大驱动的像素行数;

Fr——液晶显示器件所需的扫描频率,通常为60或70Hz。

控制部的引脚设置功能使得T6963C能够上电就能正常工作,但也给T6963C通用性带来不便,因而T6963C内置液晶显示模块上。

T6963C不仅具备基本的文本显示和图形显示功能,而且还具备文本属性显示功能,这是T6963C控制器的独特的功能。文本属性显示功能是将文本显示由通常的单字节数据处理扩大成双字节数据处理。在这种功能下把显示存储器区划分为文本代码区和文本属性区。文本代码区是用与存储作为字符显示的字符代码;文本属性区是用与存储作为相应字符显示的字符属性,这种属性由文本属性区单元中一个字节数据的低4位表示,有6种属性。如表3-5:

文本属性码

字符显示效果

d3 d2 d1 d0

0 0 0 0 正向显示,不闪烁

0 1 0 1 负向显示,不闪烁

1 0 0 0 正向显示,闪烁

1 1 0 1 负向显示,闪烁

* 0 1 1 禁止显示(正向)

* 1 * 0 禁止显示(负向)

表3-5

文本属性区的单元与文本显示区对应单元组合在一起控制显示屏上对应的字符块的显示效果。例如:

文本属性数据为05H,则对应的字符显示效果是一个负向显示的“0”。

字符代码为21H,文本属性数据为08H,则对应的字符显示效果是一个正向闪烁显示的“A”。

T6963C的文本属性功能的实现是以牺牲图形显示功能为代价的。T6963C将图形地址指针计数器用作文本属性区的寻址。所以文本属性功能不能与图形显示功能并存。

T6963C具有显示合成功能。它可以将文本显示与图形显示通过某种合成逻辑同时在显示屏上显示。这种合成逻辑有逻辑“与”,逻辑“或”以及逻辑“异或”等,是通过选择器实现的。T6963C还可以将显示屏上显示内容“屏读”或“屏拷贝”,这也是T6963C所独特的功能。T6963C将传送给液晶显示驱动系统的合成数据反馈给复制电路,再由其送到数据栈或图形显示区。

T6963C还具有光标控制器和光标指针寄存器。它用与在文本显示方式下光标的显示控制。光标数据是在文本数据锁存器处与文本字符数据合成后一起送入液晶显示驱动系统的。

T6963C控制部具有管理显示存储器和字符发生器的能力。T6963C内置有128种5*8点阵的ASCI字符字模库CGROM,字符代码为00H~7FH。并允许在显示存储器内开辟一个用户自定义字符8*8点阵字模库CGROM。在使用内部CGROM同时,T6963C也可以支持CGRAM,字符代码定义在80H~FFH。T6963C可以管理64K的显示存储器。它可以把显示存储器分为文本显示区,图形显示区,文本属性区或自定义字符库区等。

T6963C管理显示存储器的引脚有:

ad15~ad0 输出 16位地址总线。

d7~d0 三态 8位数据总线。

r/w 输出读写选择控制线。r/w=1为读操作;r/w=0为写操作。

___

ce输出存储器操作使能信号。低电平有效。

____ 1 ce,____

ce输出存储器操作使能信号。在单屏结构设置(DUAL)时有效。它

们的有效地址范围是:

ce0 0000H~07FFH

ce1 0800H~0FFFH

T6963C多用于单屏结构的液晶显示驱动系统的控制,但也具备控制双屏结构液晶显示驱动系统的能力。在双屏结构的液晶显示驱动系统的控制中,T6963C自动将ad15地址线作为上下屏的显示存储器的分界,ad15=0的部分为上下屏的显示存储器区,ad15=1为下半屏的显示存储区。计算机设置的显示区域都在上半屏的显示存储区内,而T6963C将自动地从相应的下半屏的显示存储区的区域中提取下半屏的显示数据。这样的处理对计算机写入显示数据时是比较麻烦的,这也许是T6963C少用于双屏结构液晶显示驱动控制系统的原因。

另外,T6963C保留了四个测试引脚,它们是测试信号输入端T1,T2;检测信号输出端CH1,CH2。在T6963C的应用是,这四个引脚不必考虑。

3.3列驱动方式

列驱动器T6A39是80路列驱动器,它采用了CMOS工艺,具有低功耗、耐高压和高速运行等特点。

列驱动器T6A39电路由两路8*5位双向移位寄存器、串/并转换器及液晶显示驱动电路和数据位选择寄存器、数据方向控制器、驱动时序控制器、LCD偏压电路组成。

8*5位双向移位寄存器的作用是把接收到的串行数据转换成符合要求的并行数据,并传递给两组液晶显示驱动电路。

液晶显示驱动电路的作用是在LCD偏压电路供给的偏置电路下,将得到的80位并行数据转换成LCD所需的并行输出数据信号电平。

T6A39的数据输入端为DI1、DI2、DI3、DI4。T6A39的数据接受形式有三种:一位串行、二位并行和四位并行方式。这三种方式通过设置端DUAL,DIR和DF1、DF2的电位组合设置。

T6A39还有两个数据接收使能信号EI01、EI02,正脉冲信号有效,它们中之一作为输入端启动本片数据接收工作,另一个作为输出表示本片数据接收已满,停止接收工作,这两个信号作为级联信号使用,即作为输入的一端与上一级的输出端连接,由上一级数据接

收已满信号启动本级工作,作为输出的一端与下一级的输入端连接,本级数据接收已满,停止接收工作,发出信号以启动下一级的工作。

当几片T6A39级联使用时,第一片T6A39的数据接收使能信号EI01和EI02中作为输入端的那个信号需与T6963C的LP信号相连。

列驱动器T6A39工作原理如下:首先设置好数据位选择电路、数据方向控制电路、驱动时序控制电路,当数据由数据输入端DI1、DI2、DI3、DI4输入到串/并转换器后,该电路将等待接收满8位后把数据并行地移入8*5位双向移位寄存器内,然后在LP与FR信号的作用下通过液晶显示驱动电路将数据输出。

3.4行驱动方式

行驱动器T6A40是68路行驱动器,它采用CMOS工艺,具有低功耗、耐高压和高速运行等特点

行驱动器T6A40电路由两路34位双向移位寄存器、数据方向控制器、SCP极性控制器、液晶显示驱动电路及LCD偏压电路组成。

行驱动器T6A40片内有两个34位双向移位寄存器,串行数据可从DI01和DI02两个端子输入或输出。

数据方向控制器根据单/双屏选择端子DUAL和流向选择端子DIR逻辑电平产生流向控制信号。

SCP极性控制器产生SCP信号,由触发方式选择端子TSW来控制SCP的有效触发方式:当TSW=0时,数据在SCP的上升沿输出至驱动输出端;当TSW=1时,数据在SCP的的下降沿输出至驱动输出端。

行驱动器T6A40 工作原理如下:两个34位双向移位寄存器产生的两个34位并行数据将输出到两个LCD驱动电路中,并在LCD偏压电路作用下产生68位并行LCD行输出信号,最后加到LCD屏的行输入端。

4硬件设计

4.1硬件电路设计要求

(1)控制液晶显示模块实现英文、汉字、图形、及图像的显示。

(2)实现便携式设计。

(3)可提供实现与计算机的数据传输的接口电路。

4.2 总体电路设计构架

单片机系统板主要由单片机、EPROM 、电源电路、RS232接口电路及液晶显示模块接口组成。其电路原理框图如图4-1:

图4-1 总电路原理框图

单片机系统板的功能是控制液晶显示模块进行显示,它的特点是采用了7805整流电源电路为系统板提供5V 电压,可实现便携式设计,另外系统板还配备了一个RS232接口,可以实现与计算机的数据传输。

4.3 单片机与液晶显示模块接口

单片机与液晶显示模块接口的通信这里采用间接访问方式。间接控制方式是将内置T6963C 控制器的液晶显示模块与计算机系统中某个并行I/O 接口连接,计算机通过对该I/O 接口的间接操作来实现对模块的控制。间接控制方式在硬件电路上需要一个8位并行接口与模块的数据线连接,作为数据总线,还需要一个3位并行接口作为时序控制信号线如89C51的P3.2作为C/D ,P3.3作为WR ,以及P3.4作为RD 。由于使用了专用的并行接口连接模块,而且该并行接口自身在计算机系统中有相应的片选地址,所以模块的片选信号可以直接接地作选通态,间接控制方式的接口电路与时序无关,时序完全靠软件编程实现。计算机间接控制方式下与内置T6963C 控制器的液晶显示模块的实用接口电路如下所示。模块的V0端所接的电位器是作为液晶驱动电源的调节器,调节显示的对比度。间接接口电路如图4-2:

电 源 电 路

单 片 机

RS232接

口电路

EPROM 液晶显示

模块

图4-2 间接接口电路

4.4单片机与计算机的通信接口

单片机与计算机的通信采用简化三线的串行通信方式,即把单片机的发送端TXD直接和计算机的接收端RXD相连,接收端RXD直接和计算机的发送端TXD相连,但是单片机的+5V TTL信号电平与PC机的±10V信号电平不相容,所以必须进行电平转换,本设计中采用MAXIM公司生产的MAX232芯片,MAX232包含两路接收器和驱动器,适用于各种EIA232C 和V2.28/V.24的通信接口。MAX232芯片内部有一个电源电压变换器,可以把输入的+5V 电源电压变换成为RS-232C输出电平所需的±10V电压,所以,采用此芯片接口的串行通信系统只需要单一的+5V电源就可以了。不像传统的RS232电平转换器发送器MC1488和接收器MC1489那样必须提供额外的+12V和-12V电源。MAX232芯片引脚图如图4-3:

图4-3 MAX232引脚图图4-4 MAX232串行接口电路

此通信接口电路,只用了MAX232芯片中的一路接收器和驱动器,接至PC机串口的接

口使用RS-232标准的DB9芯接插座。MAX232CPE接线也非常简单,只需要-5V电源,外接四只电容,即可产生+12V和-12V电压,输出标准的RS232接口信号。而且MAX232CPE的价格不贵,所以采用MAX232CPE接口芯片实现RS232接口电路。其接口电路如图4-4。4.5 电源电路

电源电路是由电源变压器,整流,滤波和稳压电路等四部分组成。电源变压器是将交流电网220V的电压变为所需要的电压值,然后通过整流电路交流电压变为脉动的直流电压。由于此脉动的直流电压还含有较大的波纹,必须通过滤波电路加以滤除,从而得到平滑的直流电压。但这样的电压还随电网电压波动(一般有10%左右的波动),负载和温度的变化而变化.因而在整流,滤波之后,还需接稳压电路。稳压电路的作用是当电网电压波动,负载和温度变化是,维持输出直流电压稳定。电源电路如图

4-5:

图4-5 电源电路

5 系统软件设计

5.1内置T6963C控制器软件特性

由于T6963C使用了硬件初始化设置,所以使得其指令功能集中于显示功能的设置上,从而加强了T6963C的显示控制能力。

T6963C模块的控制指令可带1个或2个参数,或无参数。每条指令的执行都是先送入参数,再送入指令代码。而且当向T6963C中读、写数据或向其中写入命令时,必须严格遵循T6963C的时序。如果所送参数多于规定个数,以最后送入的有效。每次操作之前必须先进行状态字检测。显示过程流程图如图5-1:

初始

清零

定入显示数状态读

状态检

指令状态启

状态检查

写参数1(低8位)

写指令

状态检查

写参数2(高8位)

图5-1 显示过程流程图

图5-2 双参数指令传输流程图

以上每一步骤又要完成以下流程:对于无参数或自动指令,以上过程只需1次,单参数指令需两次,而双参数指令则需进行3次(前2次传参数,最后传指令)。图5-2以双参数指令为例给出其指令传输过程。 液晶显示模块指令说明如下: (1)读状态字

格式

T6963C 的状态字由七位标志位组成,它们是:

S0 指令读写状态 1:准备好 0:忙 S1 数据读写状态 1:准备好 0:忙 S2 数据自动读状态 1:准备好 0:忙 S3 数据自动写状态 1:准备好 0:忙 S4 未用

S5 控制器运行检测可能性 1:可能 0:不能 S6 屏读/屏拷贝出错状态 1:出错 0:正确 S7 闪烁状态检测 1:显示 0:关显示 (2)地址指针设置 格式 D1 D2

该指令为双参数(D1,D2)指令。指令代码中的N1,N2,N0取值”1”为有效,”0”为无效,而且不能同时为”1”,根据N 的取值,该指令有三种含义,如表5-1:

S7 S6

S5 S4

S3

S2

S1

S0

1

N2

N1

N0

D1 D2 指令代码 功能

水平位置(低7位有效) 垂直位置(低5位有效) 21H(N0=1) 光标地址设置 偏置地址(低5位有效)

00H 22H(N1=1) CGRAM 偏置地址 低字节

高字节

24H(N2=1) 显示地址设置

表5-1

(3)显示区域设置 格式 D1 D2

该指令是双参数指令,它将在显示存储器内划分出各显示区域的范围。它是由设定显示区域的首地址和宽度来确定该显示区域的范围,同时也确定了显示存储器单元与显示屏上各点像素的对应关系。该指令中N1,N0有四种组合,每种组合有不同的含义。具体功能参见表5-2: N1 N0 D1 D0 指令代码

功能 0 0 低字节 高字节 40H 文本显示区首地址 0 1 字节数 00H 41H 文本显示宽度 1 0 低字节 高字节 42H 图形显示区首地址 1 1

字节数

00H

43H 图形显示区宽度

表5-2

(4)显示方式设置 格式

该指令为显示方式的设置,无参数。它的几个设置位功能如下: CG 位 字符发生器选择位。

当CG=0时,启用内部字符发生器CGROM,该字符库有128种字符,其代码为00H ~

7FH;同时可以建立128种8×8点阵的自定义字符发生器CGRAM,其字符代码规定在80H ~FFH 范围内;

当CG=1时,禁止内部CGROM,字符显示完全取自自定义字符发生器CGRAM,该字符

库为2K 字节容量,字符代码为00H ~FFH 。

N2,N1,N0位为显示方式设置位,它们的组合产生的显示方式如表5-3:

1

N1

N0

1

CG

N2

N1

N0

N2 N2 N0 显示方式 说明

0 0 0 逻辑“或”

文本与图形以逻辑“或”的关系合成显示

0 0 1 逻辑“异或” 文本与图形以逻辑“异或”的关系合成显示 0 1 1 逻辑“与” 文本与图形以逻辑“与”的关系合成显示 1 0 0

文本属性

文本显示特征以双字节表示

表5-3

(5)显示状态设置 格式

该指令设置了当前的显示状态,无参数。该指令有4个设置位,每一位都代表一种显示状态的设置,它们可以同时有效,也可以部分有效,也可以都无效。这4个设置位的功能如下:

N0 光标闪烁设置开关 N0=1为启用光标闪烁;N=0为禁止光标闪烁。 N1 光标显示设置开关 N0=1为启用光标显示;N=0为禁止光标显示。 N2 文本显示设置开关 N0=1为启用文本显示;N=0为禁止文本显示。 N3 图形显示设置开关 N0=1为启用图形显示;N=0为禁止图形显示。 (6)数据自动读写设置 格式

使用该指令将进入或退出数据的自动读或自动写方式。在自动读或自动写方式中,计算机可以连续的将显示数据写入显示存储器中或从显示存储器中读取数据。在每次读或写的操作后,显示地址自动加一。进入自动读方式或自动写方式时,状态位将由S2(自动读方式)或S3(自动写方式)代替S1和S0。在自动读或自动写方式完成时要输入退出自动读写方式命令。在自动读写方式中写入其他指令都是无效的。

该指令中有两位设置位N1,N0。这两位将产生三个子指令,如表5-4:

N1 N0 指令代码 功 能 0 0 B0H 进入自动写方式 0 1 B1H 进入自动读方式 1 *

B2H/B3H

进入自动读写状态

表5-4

1

1

N3

N2

N1

N0

1

1

1

N1

N0

(7)数据一次读写设置

1 1 0 0 0 N

2 N1 N0

格式

该指令是一次读写数据操作指令。在每次读写数据操作后,显示地址都要根据指令代码的设置而修正:加一,减一或不变。该指令在写入数据时所带的一个参数就是所要写入的显示数据。当读数据操作时,该指令不带参数,直接写入指令代码。该指令有三个设置位N2,N1,N0。它们的组合功能如表5-5:

参数D1 N2 N1 N0 指令代码功能

数据 0 0 0 C0H 数据写,地址加一

— 0 0 1 C1H 数据读,地址加一

数据 0 1 0 C2H 数据写,地址减一

— 0 1 1 C3H 数据读,地址减一

数据 1 0 0 C4H 数据写,地址不变

— 1 0 1 C5H 数据读,地址不变

表5-5

5.2初始化子程序设计

初始化部分包括对液晶显示模块的初始化设置、液晶显示模块的显示RAM清零、单片机内部RAM的清零。其中液晶显示模块的初始化设置包括设置显示方式、显示区域的首地址及宽度、光标形状设置。

初始化子程序流程图如图5-3:

开始

设置文本显示区首地址

设置文本显示区宽度

设置图形显示区首地址

设置文本属性区首地址

设置图形显示区宽度

设置文本属性区宽度

光标形状设置

图5-3 初始化子程序流程图

5.3 串行通信子程序设计

单片机与PC 机之间的串行通信主要包括两个过程:由8051传送数据至PC 机;8051接收PC 机传来的数据。

串行通信子程序流程图如图5-4:

开 始

通信初始化 等待PC 机传送数据

判断收到的是否是数据起始标志

开始接收数据,判断是否结束标志

中断返回

继续接收数据

Y

Y

N

N

图5-4 串行通信子程序流程图

5.4显示控制子程序设计

显示应用程序部分主要是单独的显示子程序,通过一个单独的按键进行控制,按一次按键执行一个显示子程序,显示完最后一个显示子程序,自动回到第一个显示子程序,实现循环显示。

显示子程序包括汉字、图形及图象的显示,并且实现了汉字的平移和图形的动态显示。其中汉字的平移是通过执行一个定时中断程序来不断改变显示区域的首地址实现的,由于显示区域的首地址是与液晶显示模块的显示RAM单元的每一字节相对应的,首地址加一意味着显示RAM单元的一个字节的改变,在黑白模式下即对应着八个像素的改变,所以在显示屏上汉字的平移是跳跃式的,间距为八个像素点;而图形的平移是通过显示控制器T6963C的位操作指令实现的,该位操作指令可以实现对显示屏每一像素点的亮暗操作,因而可以实现图形的平滑移动。

显示的子程序通过指针从数据库中逐个提取数据送如液晶显示模块的显示RAM进行显示。数据库中的数据为要显示的内容,此汉字字模提取软件不仅可以提取汉字字模的十六进制数据,而且可以提取图象的十六进制数据。

开始

计算显示RAM地址

文本显示区首地

设置显示RAM地址

取汉字代

写入汉字代

结束

图5-5 文本显示汉字流程图

开始

计算图形显示RAM 地址

图形显示区宽度

图形显示区首地址

计算汉字库字符首地址

设置显示RAM地址

取字库地址指

取字模数

写入数

结束

图5-6 文本显示图形流程图

基于51单片机系统设计

基于51单片机的多路温度采集控制系统设计 言: 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。 本次设计的目的在于学习基于51单片机的多路温度采集控制系统设计的基本流程。本设计采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制数字温度传感器,把温度信号通过单总线从数字温度传感器传递到单片机上。单片机数据处理之后,发出控制信息改变报警和控制执行模块的状态,同时将当前温度信息发送到LED进行显示。本系统可以实现多路温度信号采集与显示,可以使用按键来设置温度限定值,通过进行温度数据的运算处理,发出控制信号达到控制蜂鸣器和继电器的目的。 我所采用的控制芯片为AT89c51,此芯片功能较为强大,能够满足设计要求。通过对电路的设计,对芯片的外围扩展,来达到对某一车间温度的控制和调节功能。 关键词:温度多路温度采集驱动电路 正文: 1、温度控制器电路设计 本电路由89C51单片机温度传感器、模数转换器ADC0809、窜入并出移位寄存器74LS164、数码管、和LED显示电路等组成。由热敏电阻温度传感器测量环境温度,将其电压值送入ADC0809的IN0通道进行模数转换,转换所得的数字量由数据端D7-D0输出到89C51的P0口,经软件处理后将测量的温度值经单片机的RXD端窜行输出到74LS164,经74LS164 窜并转换后,输出到数码管的7个显示段,用数字形式显示出当前的温度值。89C51的P2.0、P2.1、P2.2分别接入ADC0809通道地址选择端A、B、C,因此ADC0809的IN0通道的地址为F0FFH。输出驱动控制信号由p1.0输出,4个LED为状态指示,其中,LED1为输出驱动指示,LED2为温度正常指示,LED3为高于上限温度指示,LED4为低于下限温度指示。当温度高于上限温度值时,有p1.0输出驱动信号,驱动外设电路工作,同时LED1亮、LED2灭、LED3亮、LED4灭。外设电路工作后,温度下降,当温度降到正常温度后,LED1亮、LED2亮、LED3灭、LED4灭。温度继续下降,当温度降到下限温度值时,p1.0信号停止输出,外设电路停止工作,同时LED1灭、LED2灭、LED3灭、LED4亮。当外设电路停止工作后,温度开始上升,接着进行下一工作周期。 2、温度控制器程序设计 本软件系统有1个主程序,6个子程序组成。6个子程序为定时/计数器0中断服务程序、温度采集及模数转换子程序ADCON、温度计算子程序CALCU、驱动控制子程序DRVCON、十进制转换子程序METRICCON 及数码管显示子程序DISP。 (1)主程序 主程序进行系统初始化操作,主要是进行定时/计数器的初始化。 (2)定时/计数器0中断服务程序 应用定时计数器0中断的目的是进行定时采样,消除数码管温度显示的闪烁现象,用户可以根据实际环境温度变化率进行采样时间调整。每当定时时间到,调用温度采集机模数转换子程序ADCON,得到一个温度样本,并将其转换为数字量,传送给89C51单片机,然后在调用温度计算子程序CALCU,驱动控制子程序DRVCON,十进制转换子程序MERTRICCON,温度数码显示子程序DISP。

基于51单片机课程设计

基于51单片机课程设计报告 院系:电子通信工程 团组:电子设计大赛1组 姓名: 指导老师:

目录 一、摘要 (3) 二、系统方案的设计 (3) 三、硬件资源 (5) 四、硬件总体电路搭建 (13) 五、程序流程图 (14) 六、设计感想 (14) 七、参考文献 (16) 附录 (17) 附录 1 程序代码 (17)

一、摘要 本设计以STC89C51单片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测电路、温度控制电路。单片机通过对信号进行相应处理,从而实现温度控制的目的。文中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、led控制程序、超温报警程序。 关键词:STC89C51单片机 DS18B20温度芯片温度控制 ,LED报警提示. 二、系统方案的设计 1、设计要求 基本功能: 不加热时实时显示时间,并可手动设置时间; 设定加热水温功能。人工设定热水器烧水的温度,范围在20~70度之间,打开开关后,根据设定温度与水温确定是否加热,及何时停止加热,可实时显示温度; 设定加热时间功能。限定烧水时间,加热时间内超过温度上限或低于温度下限报警,并可实时显示温度。 2、系统设计的框架

本课题设计的是一种以STC89C51单片机为主控制单元,以DS18B20为温度传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录当前的时间。其主要包括:电源模块、温度测量及调理电路、键盘、数码管显示、指示灯、报警、继电器及单片机最小系统。 图1 系统设计框架 3 工作原理 温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机STC8951获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备(压缩制冷器) ,当采集的温度经处理后低于设定温度的下时 , 单片机通过三极管驱动继电器开启升温设备 (加热器) ,这里采用通过LED1和LED2取代!!! 当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声,这里采用HLLED提示。

80c51单片机交通灯课程设计报告1.pdf

80C51单片机交通灯课程设计报告 目录 第一章引言 (3) 第二章单片机概述 (4) 第三章芯片介绍 (6) 3.1AT89S51单片机介绍 (6) 3.1.1简介 (6) 3.1.2主要管脚介绍 (6) 3.274LS164介绍 (8) 3.3共阳数码管介绍 (8) 3.3.1分类简介 (8) 图3.3LED数码管引脚定义 (9) 3.3.2驱动方式 (9) 3.3.3主要参数 (10) 3.3.4应用范围 (10) 第四章系统硬件设计 (11) 4.1硬件设计要求 (11) 4.2硬件设计所用元器件 (11) 4.3硬件设计图 (11) 4.4设计流程图 (12) 第五章系统软件设计 (13) 5.1流程图 (13)

5.2程序设计 (14) 第六章结论 (16) 参考文献 (18)

第一章引言 在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。 1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 智能的交通信号灯指挥着人和各种车辆的安全运行,实现红、黄、绿灯的自动指挥是城乡交通管理现代化的重要课题.在城乡街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黄、绿交通信号灯,其中红灯亮,表示该条道路禁止通行;黄灯亮,表示该条道路上未过停车线的车辆停止通行,已过停车线的车辆继续通行;绿灯亮,表示该条道路允许通行.交通灯控制电路自动控制十字路口两组红、黄、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化。 本文为了实现交通道路的管理,力求交通管理先进性、科学化.分析应用了单片机实现智能交通灯管制的控制系统,以及该系统软、硬件设计方法,实验证明该系统实现简单、经济,能够有效地疏导交通,提高交通路口的通行能力。

(完整word版)基于51单片机的温度控制系统设计

基于51单片机的水温自动控制系统 0 引言 在现代的各种工业生产中 ,很多地方都需要用到温度控制系统。而智能化的控制系统成为一种发展的趋势。本文所阐述的就是一种基于89C51单片机的温度控制系统。本温控系统可应用于温度范围30℃到96℃。 1 设计任务、要求和技术指标 1.1任务 设计并制作一水温自动控制系统,可以在一定范围(30℃到96℃)内自动调节温度,使水温保持在一定的范围(30℃到96℃)内。 1.2要求 (1)利用模拟温度传感器检测温度,要求检测电路尽可能简单。 (2)当液位低于某一值时,停止加热。 (3)用AD转换器把采集到的模拟温度值送入单片机。 (4)无竞争-冒险,无抖动。 1.3技术指标 (1)温度显示误差不超过1℃。 (2)温度显示范围为0℃—99℃。 (3)程序部分用PID算法实现温度自动控制。 (4)检测信号为电压信号。 2 方案分析与论证 2.1主控系统分析与论证 根据设计要求和所学的专业知识,采用AT89C51为本系统的核心控制器件。AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。其引脚图如图1所示。 2.2显示系统分析与论证 显示模块主要用于显示时间,由于显示范围为0~99℃,因此可采用两个共阴的数码管作为显示元件。在显示驱动电路中拟订了两种设计方案: 方案一:采用静态显示的方案 采用三片移位寄存器74LS164作为显示电路,其优点在于占用主控系统的I/O口少,编程简单且静态显示的内容无闪烁,但电路消耗的电流较大。 方案二:采用动态显示的方案 由单片机的I/O口直接带数码管实现动态显示,占用资源少,动态控制节省了驱动芯片的成本,节省了电 ,但编程比较复杂,亮度不如静态的好。 由于对电路的功耗要求不大,因此就在尽量节省I/O口线的前提下选用方案一的静态显示。

基于51单片机简易电子琴的课程设计

基于51单片机简易电子琴 1 课题背景 单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键。 主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴硬件的组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏要表达的音符。并且分别从原理图,主要芯片,个模块原理及各莫奎的程序的调试来详细阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们想演奏的那首曲目。当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系编写正确就可以达到我们想要的曲目。 2 任务要求与总体设计方案 2.1 设计任务与要求 利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出7个不同的音调,而且有一个按键可以自动播放歌曲,要求按键按下时发声,松开延时一小段时间,中间再按别的键则发另外一音调的声音,当系统扫描到键盘按下,则快速检测出是哪一个按键被按下,然后单片机的定时器启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个按键被按下,则启动中断系统。前面的发音停止,转到后按的键的发音程序。发出后按的键的音调。 2.2 设计方案 2.2.1 播放模块 播放模块是由喇叭构成,它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。 2.2.2 按键控制模块

基于51单片机课程设计报告

单片机课程设计 课题:基于51单片机的交通灯设计 专业:机械设计制造及其自动化 学号: 指导教师:邵添 设计日期:2017/12/18 成绩: 大学城市科技学院电气学院 基于51单片机数字温度计设计报告

一、设计目的作用 本设计是一款简单实用的小型数字温度计,所采用的主要元件有传感器DS18B20,单片机AT89C52,,四位共阴极数码管一个,电容电阻若干。DS18B20支持“一线总线”接口,测量温度围-55°C~+125°C。在-10~+85°C围,精度为±0.5°C。18B20的精度较差,为±2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。 本次数字温度计的设计共分为五部分,主控制器,LED显示部分,传感器部分,复位部分,按键设置部分,时钟电路。主控制器即单片机部分,用于存储程序和控制电路;LED显示部分是指四位共阴极数码管,用来显示温度;传感器部分,即温度传感器,用来采集温度,进行温度转换;复位部分,即复位电路,按键部分用来设置上下限报警温度。测量的总过程是,传感器采集到外部环境的温度,并进行转换后传到单片机,经过单片机处理判断后将温度传递到数码管显示。 二、设计要求 (1).利用DS18B20传感器实时检测温度并显示。 (2).利用数码管实时显示温度。 (3).当温度超过或者低于设定值时蜂鸣器报警,LED闪烁指示。 (4).能够手动设置上限和下限报警温度。 三、设计的具体实现 1、系统概述 方案一:由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 方案设计框图如下:

基于51单片机的温度控制系统的设计

基于单片机的温度控制系统设计 1.设计要求 要求设计一个温度测量系统,在超过限制值的时候能进行声光报警。具体设计要求如下: ①数码管或液晶显示屏显示室内当前的温度; ②在不超过最高温度的情况下,能够通过按键设置想要的温度并显示;设有四个按键,分别是设置键、加1键、减1键和启动/复位键; ③DS18B20温度采集; ④超过设置值的±5℃时发出超限报警,采用声光报警,上限报警用红灯指示,下限报警用黄灯指示,正常用绿灯指示。 2.方案论证 根据设计要求,本次设计是基于单片机的课程设计,由于实现功能比较简单,我们学习中接触到的51系列单片机完全可以实现上述功能,因此可以选用AT89C51单片机。温度采集直接可以用设计要求中所要求的DS18B20。报警和指示模块中,可以选用3种不同颜色的LED灯作为指示灯,报警鸣笛采用蜂鸣器。显示模块有两种方案可供选择。 方案一:使用LED数码管显示采集温度和设定温度; 方案二:使用LCD液晶显示屏来显示采集温度和设定温度。 LED数码管结构简单,使用方便,但在使用时,若用动态显示则需要不断更改位选和段选信号,且显示时数码管不断闪动,使人眼容易疲劳;若采用静态显示则又需要更多硬件支持。LCD显示屏可识别性较好,背光亮度可调,而且比LED 数码管显示更多字符,但是编程要求比LED数码管要高。综合考虑之后,我选用了LCD显示屏作为温度显示器件,由于显示字符多,在进行上下限警戒值设定时同样可以采集并显示当前温度,可以直观的看到实际温度与警戒温度的对比。LCD 显示模块可以选用RT1602C。

3.硬件设计 根据设计要求,硬件系统主要包含6个部分,即单片机时钟电路、复位电路、键盘接口模块、温度采集模块、LCD 显示模块、报警与指示模块。其相互联系如下图1所示: 图1 硬件电路设计框图 单片机时钟电路 形成单片机时钟信号的方式有内部时钟方式和外部时钟方式。本次设计采用内部时钟方式,如图2所示。 单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别为此放大器的输入端和输出端,其频率范围为~12MHz ,经由片外晶体振荡器或陶瓷振荡器与两个匹配电容一 起形成了一个自激振荡电路,为单片机提供时钟源。 复位电路 复位是单片机的初始化操作,其作用是使CPU 和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作,以防止电源系统不稳定造成CPU 工作不正常。在系统中,有时会出现工作不正常的情况,为了从异常状态中恢复,同时也为了系统调试方便,需要设计一个复位电路。 单片机的复位电路有上电复位和按键复位两种形式,因为本次设计要求需要有启动/复位键,因此本次设计采用按键复位,如图3。复位电路主要完成系统 图2 单片机内部时钟方式电路 图3 单片机按键复位电路

基于51单片机的电子琴设计课程设计

目录 前言 (2) 第1章基于51单片机的电子琴设计 (3) 1.1 电子琴的设计要求 (3) 1.2 电子琴设计所用设备及软件 (3) 1.3 总体设计方案 (3) 第2章系统硬件设计 (5) 2.1 琴键控制电路 (5) 2.2 音频功放电路 (6) 2.3 时钟-复位电路 (6) 2.4 LED显示电路 (6) 2.5 整体电路 (6) 第3章电子琴系统软件设计 (7) 3.1 系统硬件接口定义 (7) 3.2 主函数 (8) 3.2.1 主函数程序 (8) 3.3 按键扫描及LED显示函数 (9) 3.3.1 键盘去抖及LED显示子程序 (10) 3.4 中断函数 (11) 3.4.1 中断程序 (12) 第4章电子琴和调试 (12) 4.1 调试工具 (12) 4.2 调试结果 (13) 4.3 电子琴设计中的问题及解决方法 (14) 第5章电子琴设计总结 (15) 参考文献 (16) 附录 (17)

前言 音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。电子琴所包含的巨量的音乐信息和强大的音乐表现力可以帮助音乐教学更好地贯彻和落实素质教育,更有效地提高人们的音乐素质和能力。目前,市场上的电子琴可谓琳琅满目,功能也是越来越完备。以单片机作为主控核心,设计并制作的电子琴系统运行稳定,其优点是硬件电路简单、软件功能完善、控制系统可靠、性价比较高等,具有一定的实用与参考价值。这就为电子琴的普及提供了方便。 二、电子琴设计要求本设计主要是用AT89C51单片机为核心控制元件,设计一台电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有7个按键和1个复位按键。本系统主要是完成2大功能:音乐自动播放、电子琴弹奏。关于声音的处理,使用单片机C语言,利用定时器来控制频率,而每个音符的符号只是存在自定义的表中。

基于51单片机最小系统设计

基础强化训练任务书 学生姓名:董勇涛专业班级:电子0902 指导教师:洪建勋工作单位:信息工程学院 题目:基于51单片机最小系统设计 一、训练目的 主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知识、基本动手能力,提高人才培养的基本素质。 二、训练内容和要求 1、基础课程和基本技能强化训练 (1)设计一个基于51单片机最小系统电路; (2)对所设计电路的基本原理进行分析; 2、文献检索与利用、论文撰写规范强化训练 要求学生掌握基本的文献检索方法,科学查找和利用文献资料,同时要求学生获得正确地撰写论文的基本能力,其中包括基本格式、基本排版技巧和文献参考资料的写法、公式编排、图表规范制作、中英文摘要的写法等训练。 3、基本动手能力和知识应用能力强化训练 (1)学习PROTEL软件; (2)绘制电路的原理图和PCB版图,要求图纸绘制清晰、布线合理、符合绘图规范; 4、查阅至少5篇参考文献,按《武汉理工大学课程设计工作规范》要求撰写基础强化训练报告书,全文用A4纸打印。 三、初始条件 计算机;Microsoft Office Word 软件;PROTEL软件 四、时间安排 1、20011年7 月 11日集中,作基础强化训练具体实施计划与报告格式要求的说明; 学生查阅相关资料,学习电路的工作原理。 2、2011年7 月 12日,电路设计与分析。 3、2011年7 月 13日至2010年7 月 14日,相关电路原理图和PCB版图的绘制。 4、2011年7 月15日上交基础强化训练成果及报告,进行答辩。 指导教师签名:年月日系主任(或责任教师)签名:年月日 目录 摘要.................................................................................................................... 错误!未定义书签。

单片机课程设计——基于51单片机的温度监控系统设计

单片机课程设计报告 题目:温度监控系统设计 学院:能源与动力工程学院 专业:测控技术与仪器专业 班级: 2班 成员:魏振杰 二〇一五年十二月

一、引言 温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。对于不同场所、不同工艺、所需温度高低范围不同、精度不同,则采用的测温元件、测方法以及对温度的控制方法也将不同;产品工艺不同、控制温度的精度不同、时效不同,则对数据采集的精度和采用的控制算法也不同,因而,对温度的测控方法多种多样。 随着电子技术和微型计算机的迅速发展,微机测量和控制技术也得到了迅速的发展和广泛的应用。利用微机对温度进行测控的技术,也便随之而生,并得到日益发展和完善,越来越显示出其优越性。 作为获取信息的手段——传感器技术得到了显著的进步,其应用领域较广泛。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。 为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本系统利用传感器与单片机相结合,应用性比较强,本系统可以作为仓库温度监控系统,如果稍微改装可以做热水器温度调节系统、实验室温度监控系统,以及构成智能电饭煲等等。课题主要任务是完成环境温度监测,利用单片机实现温度监测并通过报警信号提示温度异常。本设计具有操作方便,控制灵活等优点。 本设计系统包括单片机,温度采集模块,显示模块,按键控制模块,报警和指示模块五个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度监控,完成了课题所有要求。 二、实验目的和要求 2.1学习DS18B20温度传感芯片的结构和工作原理。 2.2掌握LED数码管显示的原理及编程方法。 2.3掌握独立式键盘的原理及使用方法。 2.4掌握51系列单片机数据采集及处理的方法。 三、方案设计

(完整word版)51单片机课程设计实验报告

51单片机课程设计报告 学院: 专业班级: 姓名: 指导教师: 设计时间:

51单片机课程设计 一、设计任务与要求 1.任务:制作并调试51单片机学习板 2.要求: (1)了解并能识别学习板上的各种元器件,会读元器件标示; (2)会看电路原理图; (3)制作51单片机学习板; (4)学会使用Keil C软件下载调试程序; 用调试程序将51单片机学习板调试成功。 二、总原理图及元器件清单 1.总原理图 2.元件清单 三、模块电路分析 1. 最小系统: 单片机最小系统电路分为振荡电路和复位电路, 振荡电路选用12MHz 高精度晶振, 振荡电容选用22p和30p 独石电容;

图 1 图 2 复位电路使用RC 电路,使用普通的电解电容与金属膜电阻即可; 图 3 当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST 为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST 为低电平。正常工作为低电平,高电平复位。 2. 显示模块: 分析发光二极管显示电路: 图 4 发光二极管显示电路分析:它是半导体二极管的一种,可以把电能转化成光能,常简写为

LED。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,产生自发辐射的荧光。图中一共有五个发光二极管其中一个为电源指示灯,当学习板通电时会发光以指示状态。其余四个为功能状态指示灯,实际作用与学习板有关 分析数码管显示电路 图 5 数码管显示电路分析:数码管按段数分为七段数码管和八段数码管,图中所用为八段数码管(比七段管多了一个小数点显示位),按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管.共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。数码管主要用来显示经电路板处理后的程序的运行结果。图中使用了八个八段数码管,可以显示八个0-15的数字。使用数码管可以直观的得到程序运行所显示的结果.也可以显示预置在学习板上的程序,主要通过16个开关来控制。 四、硬件调试 1、是否短路 用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。 2、焊接顺序 焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试--另一功能部件的焊接,这样容易找到问题的所在。 3、器件功能 1)检查原理图连接是否正确 2)检查原理图与PCB图是否一致 3)检查原理图与器件的DATASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象 5)查询器件的DATASHEET,分析一下时序是否一致,同时分析一下命令字是否正确 6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的 7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,才能找到问题出现在什么地方。 1、详细描述硬件安装过程中出现的故障现象,并作故障分析,及解决方法。 六、软件调试

基于51单片机的交通控制系统模拟设计

基于51单片机的交通控制系统模拟设计 学院:电气与控制工程学院 专业:自动化 姓名:

目录 1. 设计思路 (2) 2.2显示界面方案 (2) 2.3输入方案: (2) 3 单片机交通控制系统总体设计 (2) 3.1单片机交通控制系统的通行方案设计 (2) 3.2单片机交通控制系统的功能要求 (3) 3.3单片机交通控制系统的基本构成及原理 (3) 4智能交通灯控制系统的硬件设计 (4) 4.1系统硬件总电路构成及原理 (4) 4.2系统硬件电路构成 (4) 4.3系统工作原理 (4) 5 系统软件程序的设计 (6) 5.1程序主体设计流程 (6) 参考文献 (17) 设计心得体会 (18) 附录 (19) 基于单片机的交通控制系统模拟设计

1. 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行显示电路,灯状态电路,按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计,对于本系统,采用单片机C语言编写,对单片机内部结构和工作情况做了充足的研究,了解定时器,中断以及延时原理,总体上完成了软件的编写。 2.单片机交通控制系统方案的比较、设计与论证 2.1 电源提供方案 采用单片机控制模块提供电源。改方案的优点是系统简明扼要, 节约成本;缺点是输出功率不高。 2.2 显示界面方案 采用数码管显示。这种方案只显示有限的符号和数码字符,简单,方便。 2.3 输入方案: 由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用,故选择方案二。 3 单片机交通控制系统总体设计 3.1单片机交通控制系统的通行方案设计 设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如下所示。交通状态从状态1开始变换,直至状态6然后循环至状态1,周而复始。 通过具体的路口交通灯状态的演示分析我们可以把这四个状态归纳如下: ◆南北方向红灯灭,同时绿灯亮,东西方向黄灯灭,同时红灯亮,倒计时30秒。此状态下,东西向禁止通行,南北向允许通行。 ◆南北方向绿灯灭,东西方向红灯灭,同时黄灯亮,倒计时3秒。此状态下,除了已经正在通行中的其他所以车辆都需等待状态转换。

单片机课程设计——基于C51简易计算器

单片机双字节十六进制减法实验设计 摘要 本设计是基于51系列的单片机进行的双字节十六进制减法设计,可以完成计 算器的键盘输入,进行加、减、3位无符号数字的简单运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用5个键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus 仿真。 引言 十六进制减法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阴极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单.................................. 一、设计任务和要求

89C51单片机课程设计之秒表设计实验报告.

这里可以加学校LOGAL 单片机课程设计报告 院系:12级物信系 班别:光信息科学与技术7班 课程名称:秒表设计 姓名:龚俊才欧一景 学号:1210407033 1210407041 指导老师:张涛 2011.12.23

目录 1课程设计的目的和任务 1.1 单片机秒表课程设计的概述 1.2课程设计思路及描述 1.3 课程设计任务和要求 2硬件与软件的设计流程 2.1系统硬件方案设计 2.2软件方案设计 3 程序编写流程及课程设计效果3.1源程序及注释 3.2原理图分析 3.3课程设计效果 4 心得体会 5 相关查阅资料

1. 课程设计的目的和任务 1.1单片机秒表课程设计的概述 一、课程设计题目 秒表系统设计——用STC89C52RC设计一个4位LED数码显示“秒表”,显示时间为 00.00~99.99秒,每10毫秒自动加一,每1000毫秒自动加一秒。 二、增加功能 增加一个“复位”按键(即清零),一个“暂停”和“开始”按键。 三、课程设计的难点 单片机电子秒表需要解决三个主要问题,一是有关单片机定时器的使用;二是如何实现LED 的动态扫描显示;三是如何对键盘输入进行编程。 四、课程设计内容提要 本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片8051、LED数码管以及课程箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本课程设计有两个开关按键:其中key1按键按下去时开始计时,即秒表开始键(同时也用作暂停键),key2按键按下去时数码管清零,复位为“00.00”. 五、课程设计的意义 1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步 的了解。 2)掌握定时器、外部中断的设置和编程原理。 3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。 4)该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的 计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义 六、课程设计仪器 a) 集成电路芯片8051,七段数码管,89C51单片机开发板 b) MCS-51系列单片机微机仿真课程系统中的软件(Keil uvision2)。

基于51单片机的交通灯控制系统设计

目录 一引言 (2) 二概要设计 (2) 2.1 设计思路 (2) 2.2总体设计框图 (2) 三硬件设计 (3) 3.1LED循环电路设计 (3) 3.1.1 89cs51单片机概述 (3) 3.1.2 LED循环说明 (5) 3.2 倒计时显示电路 (5) 3.2.1 74LS164芯片 (5) 3.2.2 共阴极数码显示管 (6) 3.2.3 倒计时电路 (6) 3.2.4 急通车电路 (7) 四软件按设计 (7) 4.1 程序流程图: (7) 4.2 LED红绿灯显示 (8) 4.3倒计时显示 (9) 4.4 急通车控制 (9) 4.5程序代码 (9) 五总结 (9) 参考文献 (9) 附录一: (9) 附录二: (10)

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

毕业设计(论文)-基于AT89S51单片机的教室灯光智能控制系统设计

摘要 摘要 本课题针对教室灯光的控制,分析了教室灯光智能控制的原理和实现方法,提出了基于单片机设计教室灯光智能控制系统的思路,并在此基础上开发了智能控制系统的硬件模块和相应软件部分。 该系统以AT89S51单片机作为控制模块的核心部件,采用热释红外人体传感器检测人体的存在,采用光敏三极管构成的电路检测环境光的强度;根据教室合理开灯的条件,通过对人体存在信号和环境光信号的识别与判断,完成对教室灯光的智能控制,避免了教室用电的大量浪费。系统还具有报警功能;同时还采用了软/硬件的“看门狗”等抗干扰措施。 本系统程序部分采用C语言编写,采用模块化结构设计、条理清晰、通用性好,便于改进和扩充。该系统具有体积小,控制方便,可靠性高,针对性强,性价比高等优点,可以满足各类院校对教室灯光控制的要求,很大程度的达到节能目的。 关键词:智能控制器热释红外传感器单片机 1

引言 引言 当前,随着经济的飞速发展,能源短缺问题日益突出,成为一个国家经济发展的“瓶颈”。作为工业生产和人民生活不可或缺的电力能源更是如此。尤其现今越来越提倡低碳生活,节约能源已经成为一种全球共识,而作为培养社会精英的高校更应该起到榜样的作用。但是目前在校园内,教室灯火通明,却空无一人的现象屡见不鲜,这不仅造成了严重的资源浪费,也对高校的形象造成了很坏的影响。本文所研究的教室灯光控制系统就可以很好地实现节约能源的作用。 1 系统硬件组成 整个系统由中央控制电路、2×4按键电路、光敏传感电路、继电器驱动电路、时钟电路、液晶显示电路六个模块组成。其中,光敏传感电路模块主要完成对教室当前光线明暗程度的判定,时钟电路主要实现时基功能,两者分别提供光照和定时数据供以单片机为核心的中央控制模块进行逻辑判断,单片机最终将运算结果输出到液晶显示屏,同时对教室灯光进行控制。整个系统的硬件框图如图1所示。 1.1 中央控制模块 系统中,中央控制器主要用于接收两个外部数据,由此判断是否定时时间已到,教室光照是否充足。控制器根据这两个外部数据来进行逻辑运算,从而实现定时开关灯、刷新液晶显示屏,同时可以通过键盘设置时间日期、查看相关信息 根据系统设计要求,控制器选择了宏晶科技公司提供的STCl2C4052AD型单片机。该款是一种高速、高可靠性单片机,工作电压5.5~3.4V,Flash程序存储器4K字节,SRAM 为256字节,2个定时器,8路8位A/D转换器,可通过串口实现在线编程、A/D转换、看门狗等功能。 1.2 液晶显示电路 为了实现较好的人机交互界面,在本系统中采用1602液晶显示屏来显示用户的设定作息时间及用户所查询的信息。 点阵字符型液晶显示器是专门用于显示数字、字母、图形符号及少量自定义符号的显示器。这类显示器把LCD控制器/点阵驱动器/字符存贮器全做在一块印刷板上。系统选用日立公司的HD44780液晶显示。HD44780具有简单而功能较强的指令集,可实现字符移动/闪烁等功能。与MCU的传输可采用8位并行传输或4位并行传输2种方式。液晶显示电路如图2所示。 2

(完整版)基于51单片机的4人抢答器课程设计

基于51单片机的4人抢答器设计 设计要求: 以单片机为核心,设计一个4位竞赛抢答器:同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。 设置一个系统清除和抢答控制开关S,开关由主持人控制。 抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。 当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。 工作原理: 通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加1(超过30时置0)。同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。

#include #define uchar unsigned char #define uint unsigned int uchar num; //定义中断变量,num计满20表示1秒时间到uchar num1; //十秒倒计时显示初始值 uchar flag1,flag2; //清零键及开始键按下标志位 uchar flag3,flag4=0; //定义键盘按下标志位 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f}; //数码管编码

相关文档
最新文档