数码管显示不同字符

合集下载

数码管动态显示实验报告

数码管动态显示实验报告

一、实验目的1. 掌握数码管动态扫描显示的原理和编程实现方法;2. 熟悉单片机与数码管之间的接口连接;3. 学会使用定时器中断控制数码管的动态显示;4. 培养动手能力和问题解决能力。

二、实验原理数码管动态显示是通过单片机控制多个数码管同时显示不同的数字或字符,利用人眼的视觉暂留效应,实现快速切换显示内容,从而在有限的引脚数下显示更多的信息。

实验中,我们采用动态扫描的方式,依次点亮数码管,通过定时器中断控制扫描速度。

三、实验器材1. 单片机开发板(如51单片机、AVR单片机等);2. 数码管(共阳/共阴自选);3. 连接线;4. 电阻;5. 实验台;6. 编译器(如Keil、IAR等)。

四、实验步骤1. 设计电路图:根据实验要求,设计单片机与数码管的连接电路图,包括数码管的段码、位选信号、电源等。

2. 编写程序:使用C语言或汇编语言编写程序,实现数码管的动态显示功能。

(1)初始化:设置单片机的工作模式、定时器模式、端口方向等。

(2)显示函数:编写显示函数,实现数码管的点亮和熄灭。

(3)定时器中断服务程序:设置定时器中断,实现数码管的动态扫描。

3. 编译程序:将编写的程序编译成机器码。

4. 烧录程序:将编译后的程序烧录到单片机中。

5. 连接电路:将单片机与数码管连接好,包括数码管的段码、位选信号、电源等。

6. 运行实验:打开电源,观察数码管的显示效果。

五、实验结果与分析1. 实验结果:数码管按照预期实现了动态显示功能,依次点亮每位数码管,并显示出不同的数字或字符。

2. 分析:(1)通过调整定时器中断的周期,可以改变数码管的扫描速度,从而控制显示效果。

(2)在编写显示函数时,要考虑到数码管的共阳/共阴特性,选择合适的点亮和熄灭方式。

(3)在实际应用中,可以根据需要添加其他功能,如显示时间、温度等。

六、实验总结1. 通过本次实验,掌握了数码管动态显示的原理和编程实现方法。

2. 熟悉了单片机与数码管之间的接口连接,提高了动手能力。

《数码管显示》课件

《数码管显示》课件
具有高亮度、高对比度、低功耗等优点,是未来显示技术的发展方向之一。
具有高分辨率、低成本等优点,但存在视角较小、响应速度较慢等问题。
LCD显示器
具有高亮度、长寿命、低功耗等优点,但存在色彩表现较差等问题。
LED显示器
05
CHAPTER
数码管显示的实际应用案例
数码管常用于智能家居控制面板,显示温度、湿度、时间等信息,方便用户了解家居环境状况。
《数码管显示》ppt课件
目录
数码管显示概述数码管显示原理数码管显示驱动电路数码管显示技术发展趋势数码管显示的实际应用案例
01
CHAPTER
数码管显示概述
是一种通过控制LED灯的亮灭来显示数字或字符的电子显示器件。
数码管显示器

发光原理
显示效果
利用LED灯的发光特性,通过导通或截止控制LED灯的亮灭,以显示不同的数字或字符。
数码管显示器具有高亮度、高清晰度、低功耗等优点,常用于各种电子设备中。
03
02
01
按位数分类
01
一位、两位、三位、四位等数码管显示器,位数越多,可以显示的数字或字符越多。
按显示内容分类
02
七段数码管显示器、点阵式数码管显示器等,不同的显示内容适用于不同的应用场景。
按控制方式分类
03
静态数码管显示器、动态数码管显示器,静态数码管显示器直接控制每个LED灯的亮灭,而动态数码管显示器则是通过扫描方式控制LED灯的亮灭。
02
CHAPTER
数码管显示原理
数码管内部由多个LED灯珠组成,每个灯珠都有一个阴极和阳极,通过控制阴极和阳极的电压来控制灯珠的亮灭。
发光原理
数码管通常有单色和双色两种类型,单色数码管只能发出红、绿、黄等单色光,而双色数码管则能发出红、绿、黄等两种颜色。

c语言数码管显示多位数字的程序

c语言数码管显示多位数字的程序

标题:C语言实现数码管显示多位数字的程序一、引言在嵌入式系统中,数码管是一种常见的数字显示设备,常用于显示温度、湿度、时间等信息。

本文将介绍如何使用C语言编写程序,实现数码管显示多位数字的功能。

二、基本原理数码管是由许多LED灯组成的,每一个LED代表一个数字或者一个字母。

常见的数码管有共阴极数码管和共阳极数码管两种。

在本文中,我们以共阴极数码管为例进行讲解。

1. 共阴极数码管共阴极数码管的基本构造是共阴极和若干个LED管组成的显示器。

共阴极数码管的特点是:所有LED管的阴极是公用的,阳极分别接到每一位数字的引脚上。

通过控制每个数字管的阳极输入信号,可以实现控制数码管显示不同的数字和字符。

2. 显示多位数字要实现显示多位数字,首先需要确定每一个数码管的数据输入引脚,根据接线原理将对应的引脚连接到单片机的IO口。

然后通过C语言编写程序,控制每个数码管显示对应的数字。

三、C语言实现多位数字显示程序示例下面以8051单片机为例,展示一个简单的C语言程序,实现数码管显示多位数字的功能。

```c#include <reg52.h>// 定义控制数码管的引脚sbit DIG1 = P1^0;sbit DIG2 = P1^1;sbit DIG3 = P1^2;sbit DIG4 = P1^3;// 定义数码管显示的数字unsigned char code smgduan[16]={0x3f, //00x06, //10x5b, //20x4f, //30x66, //40x6d, //50x7d, //60x07, //70x7f, //80x6f, //90x77, //A0x7c, //B0x39, //C0x5e, //D0x79, //E0x71 //F};// 数码管扫描函数void display(unsigned char *dat) {DIG1 = 0;P0 = dat[0];DIG1 = 1;DIG2 = 0;P0 = dat[1];DIG2 = 1;DIG3 = 0;P0 = dat[2];DIG3 = 1;DIG4 = 0;P0 = dat[3];DIG4 = 1;}void main(){while(1){unsigned char num[4] = {0, 1, 2, 3}; // 要显示的数字数组 display(smgduan[num[3]]);delay(1);display(smgduan[num[2]]);delay(1);display(smgduan[num[1]]);delay(1);display(smgduan[num[0]]);delay(1);}}```在上述示例中,我们先定义了数码管的引脚和显示的数字所对应的编码。

数码管显示

数码管显示

数码管显示第3讲数码管显示第3讲数码管显示一、数码管显示原理我们最常用的是七段式和八段式LED数码管,八段比七段多了一个小数点,其他的基本相同。

所谓的八段就是指数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形。

数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个LED的阴极连在一起,让其接地,这样给任何一个LED 的另一端高电平,它便能点亮。

而共阳极就是将八个LED的阳极连在一起。

其原理图如下。

其中引脚图的两个COM端连在一起,是公共端,共阴数码管要将其接地,共阳数码管将其接正5伏电源。

一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们的段选线(即a,b,c,d,e,f,g,dp)连在一起,而各自的公共端称为位选线。

显示时,都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。

数码管的8段,对应一个字节的8位,a对应最低位,dp对应最高位。

所以如果想让数码管显示数字0,那么共阴数码管的字符编码为00111111,即0x3f;共阳数码管的字符编码为11000000,即0xc0。

可以看出两个编码的各位正好相反。

如下图。

二、点亮一个数码管下面以七段共阴数码管为例讲述如何点亮一个数码管。

l 51系列单片机的P0口没有上拉电阻(其他端口有),所以如果直接接数码管的段选线,那么不能将其点亮。

我们需要为其加上220欧姆的上拉电阻,注意,上拉电阻阻值不能过大。

实验原理图如下。

其中,7SEG-COM-CAT-GRN为七段共阴数码管,显示为绿色。

RES为电阻。

查找电阻时,需要选中下面的Resistors,如下图。

右击选中图中的电阻再左击,弹出的窗口中可改变它的阻值。

如下图。

那七个电阻看上去很乱,其实他们可以用一个排阻(RESPACK-7)代替。

如下图。

到这里原理图就画完了,我们开始写源程序。

让数码管显示字符“0”。

#includevoid main(){P0 = 0x3f; //P0口送字符‘0’的编码}显示效果如下。

数码管显示(全面)

数码管显示(全面)

• 程序设计内容
由于显示的数字0-9的字形码没有规律可循,只能采用 查表的方式来完成P0口对数码管的控制。方法是找出 共阴极数码管显示0-9的字形码,按着数字0-9的顺序, 把这十个字形码放入数组table[]中。
• C语言源程序 • 调试与仿真
4.3 I/O口应用实例与仿真
例4.6 动态数码管显示的proteus仿真及C语言 程序设计
4.3 I/O口应用实例与仿真
• 程序设计内容
(1)动态扫描方法:动态扫描采用各数码管循环轮流 显示的方法,本例中,先让左边第一位数码管显示数 字“1”,延时一定时间后,第二位显示“2”,以此类 推,到第五位显示“5”后,又从“1”开始循环显示。 当循环显示频率较高时,利用人眼的暂留特性,我们 看到这五位数码管仿佛在同时显示,而看不出闪烁显 示现象。这种显示需要一个接口完成字形码的输出 (字形选择),另一接口完成各数码管的轮流点亮 (数位选择)。需要注意一点,由于电路的特性,在 点亮每一位数码管之前,一定要对整个数码管清屏 (场消隐),即让所有位选信号都处于不被选中状态。
g f GND a b a a f e d g b c dp b c d e f g dp a b c d e f g dp
+5V
·
e d GND c dp
(a)
共阴极
(b)
共阳极
使用LED显示器时,要注意区分这两种不同的接法。为了显 示数字或字符,必须对数字或字符进行编码。七段数码管加上一 个小数点,共计8段。因此为LED显示器提供的编码正好是一个字 节。TX-1B实验板用共阴LED显示器,根据电路连接图显示16进制
数码管是如何显示出字符的 数码管静态显示与动态显示原理
显示器及其接口

数码管动态显示的原理

数码管动态显示的原理

数码管动态显示的原理
数码管动态显示的原理是通过快速地在不同的数码管上切换显示不同的数字或字符来实现的。

它主要依靠以下几个关键元素来实现:
1. 数码管:数码管是一种显示设备,通常由七个发光二极管(LED)组成,排列成数字“8”的形状。

每个LED可以独立地
点亮或熄灭,而且在点亮时可以显示不同的数字或字符。

2. 位选信号:位选信号是控制哪个数码管被点亮的信号。

通常使用一个二进制的计数器来产生不同的位选信号,每个信号在不同的时间点上为高电平,用于控制特定位置的数码管。

3. 段选信号:段选信号是控制数码管上哪个LED被点亮的信号。

它由一个逻辑电路产生,根据需要显示的数字或字符来决定哪些LED需要点亮。

通过快速地切换不同的段选信号,可
以实现在不同的数码管上显示不同的内容。

4. 控制电路:控制电路主要由计数器、分频器和逻辑电路组成,用于产生位选信号和段选信号。

计数器用于产生位选信号,分频器用于控制切换速度,逻辑电路用于产生段选信号。

这些信号经过适当的放大和驱动后,可以控制数码管的亮灭以及显示的内容。

通过以上关键元素的协调工作,数码管动态显示可以实现快速地在多个数码管上显示不同的数字或字符。

这种显示方式广泛应用于数字时钟、计算器、仪表盘等电子设备中。

数码管显示原理范文

数码管显示原理范文

数码管显示原理范文数码管是用来显示数字和一些特殊字符的电子显示装置。

它由多个数字显示单元组成,每个数字显示单元内部由多个发光二极管(LED)组成,这些LED被布置成一个特定的形状,可以显示数字、字母或符号。

数码管通常由七段显示单元组成,每个段通常由一个或多个LED组成。

这些七段分别被命名为a、b、c、d、e、f和g。

根据需要,还可以加上额外的段,如小数点。

数码管的显示原理是通过控制LED的亮灭状态来显示不同的数字和字符。

每个数字和字符需要将不同的段点亮组合以形成。

例如,要显示数字0,将a、b、c、d、e、f这六个段点亮,其它段熄灭。

要显示其他数字或字符,通过控制不同的段的亮灭状态来实现。

数码管的控制方式多种多样,可以通过共阳极和共阴极两种方式来实现。

共阳极是指数码管的正极(阳极)都连接在一起,而数段则连接到各个对应的负极(阴极)。

当阳极通电时,控制相应的阴极为低电平(0V),该段对应的LED点亮。

这种方式下,发光二极管不需要接上约束电流,只需要控制各阴极的电平即可控制其亮灭状态。

共阴极是指数码管的负极(阴极)都连接在一起,而段则连接到各个阳极。

当阳极通电时,将需要点亮的段拉低(0V),对应的LED点亮。

这种方式下,发光二极管需要通过电流限制器来控制亮度和防止过电流。

数码管一般通过复用的方式来实现多个数码管同时显示。

复用即通过不同时段控制不同的数码管点亮,从而达到同时显示多个数字或字符的效果。

复用的周期非常快,人眼无法察觉到数码管的刷新过程。

数码管的控制可以通过硬件电路实现,如使用多路译码器、锁存器和计数器等,也可以通过程序控制来实现,如使用微控制器或其他集成电路。

总之,数码管的显示原理是通过控制LED的亮灭状态来显示不同的数字和字符,通过选择不同的段的亮灭状态组合以形成不同的显示。

数码管可以通过共阳极和共阴极两种方式来控制,同时通过复用的方式来实现多个数码管的同时显示。

数码管二进制和十六进制字符编码表

数码管二进制和十六进制字符编码表

精选文档」、数码管显示字符表一个数码管有八段:a,b,c,d,e,f,g,dp(小数点),即由八段发光二极管组成。

因为发光二极管导通的方向是一定的(导通电压一般取为 1.7V),这八个发光二极管的公共端有两种:可以分别接+5V (即为共阳极数码管)或接地(即为共阴极数码管);故可分共阳极(公共端接高电平或+5V电压)和共阴极(共低电平或接地)两种数码管。

其中每个段均有0 (不导通)和1 (导通发光)两种状态,但共阳极数码管和共阴极数码管显然是不同的。

一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们的段选线(即a,b,c,d,e,f,g,dp )连在一起,而各自的公共端称为位选线。

对于共阳数极码管: 各段选为低电平(即0接地时)选中各数码段,位选为高电平(即1)选中数码管。

对于共阴极数码管:各段选为高电平(即1接+5V时)选中各数码段,位选为低电平(即0)选中数码管。

显示时,都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。

数码管的8段,对应一个字节的8位,a对应最低位,dp对应最高位。

所以如果想让数码管显示数字0,那么共阴数码管的字符编码为00111111 ,即0x3f ;共阳数码管的字符编码为11000000 ,即0xc0。

可以看出两个编码的各位正好相反。

字母显示:/xTJ cj ZZ? 9共阳极的数码管0~f的段编码:精选文档unsigned char code table[]={ // 共阳极0~f 数码管编码0xc0,0xf9,0xa4,0xb0,//0~30x99,0x92,0x82,0xf8,//4~70x80,0x90,0x88,0x83,//8~b0xc6,0xa1,0x86,0x8e //c~f};共阴极的数码管0~f的段编码是:unsigned char code table[]={〃共阴极0~f 数码管编码0x3f,0x06,0x5b,0x4f, //0~30x66,0x6d,0x7d,0x07, //4~70x7f,0x6f,0x77,0x7c, //8~b0x39,0x5e,0x79,0x71 //c~f};共阳极数码管字符表共阴极数码管字符表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

沈阳工业大学基于单片机的TIMER0控制流水灯设计系别:*** _ ____年级:10级专业:**姓名: ****学号:********** 导师姓名:**职称:教授2017年7月3日1.前言............................................. 错误!未定义书签。

2.系统设计参数要求. (2)3.系统设计 (2)3.1 系统设计总体框图............................ 错误!未定义书签。

3.2 各模块原理说明.............................. 错误!未定义书签。

3.2.1、最小系统AT89C52模块.................. 错误!未定义书签。

3.2.2、74HC245芯片模块...................... 错误!未定义书签。

3.2.3、显示模块功能 (5)3.2.4、控制按钮模块.......................... 错误!未定义书签。

3.3 系统总原理图说明............................ 错误!未定义书签。

3.4 系统印刷版图................................ 错误!未定义书签。

3.5 系统的操作说明.............................. 错误!未定义书签。

3.6 系统操作注意事项............................ 错误!未定义书签。

参考文献.. (11)致谢语 (14)附录................................................ 错误!未定义书签。

附录一.电路总原理图............................. 错误!未定义书签。

附录二.系统印刷电路板图 (11)附录三.电路原件清单............................. 错误!未定义书签。

附录四.源程序................................... 错误!未定义书签。

1.本设计是基于STC89C52单片机的八位数码管显示不同字符设计,使用汇编语言,结合Proteus仿真运行实现,程序运行后,使八位数码管显示不同的字符,采用三级管作为驱动电路驱动数码管关键字:STC89C52,汇编语言,三极管。

2.系统设计参数要求1、用单片机STC89C52设计一个并行数据转换为串行数据。

2、电路供电电源5v。

3、三极管工作电压为5v3.系统设计3.1、原理图3.2、程序截图3.3、数码管动态扫描原理动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数位,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。

A、静态显示驱动:静态驱动也称直流驱动。

静态驱动是指每个数码管的每一个段码都由一个单片机的I/O埠进行驱动,或者使用如BCD码二-十进位*器*进行驱动。

静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O 埠多,如驱动5个数码管静态显示则需要5×8=40根I/O埠来驱动,要知道一个89S51单片机可用的I/O埠才32个呢。

故实际应用时必须增加*驱动器进行驱动,增加了硬体电路的复杂性。

B、动态显示驱动:数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp "的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。

透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位元数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O埠,而且功耗更低。

3.4、三极管工作原理对三极管放大作用的理解,切记一点:能量不会无缘无故的产生,所以,三极管一定不会产生能量。

但三极管厉害的地方在于:它可以通过小电流去控制大电流。

放大的原理就在于:通过小的交流输入,控制大的静态直流。

假设三极管是个大坝,这个大坝奇怪的地方是,有两个阀门,一个大阀门,一个小阀门。

小阀门可以用人力打开,大阀门很重,人力是打不开的,只能通过小阀门的水力打开。

所以,平常的工作流程便是,每当放水的时候,人们就打开小阀门,很小的水流涓涓流出,这涓涓细流冲击大阀门的开关,大阀门随之打开,汹涌的江水滔滔流下。

如果不停地改变小阀门开启的大小,那么大阀门也相应地不停改变,假若能严格地按比例改变,那么,完美的控制就完成了。

在这里,Ube就是小水流,Uce就是大水流,人就是输入信号。

当然,如果把水流比为电流的话,会更确切,因为三极管毕竟是一个电流控制元件。

如果某一天,天气很旱,江水没有了,也就是大的水流那边是空的。

管理员这时候打开了小阀门,尽管小阀门还是一如既往地冲击大阀门,并使之开启,但因为没有水流的存在,所以,并没有水流出来。

这就是三极管中的截止区。

饱和区是一样的,因为此时江水达到了很大很大的程度,管理员开的阀门大小已经没用了。

如果不开阀门江水就自己冲开了,这就是二极管的击穿。

在模拟电路中,一般阀门是半开的,通过控制其开启大小来决定输出水流的大小。

没有信号的时候,水流也会流,所以,不工作的时候,也会有功耗。

而在数字电路中,阀门则处于开或是关两个状态。

当不工作的时候,阀门是完全关闭的,没有功耗。

3.5、复位电路工作原理复位电路的工作原理在书本上有介绍,51单片机要复位只需要在第9引脚接个高电平持续2us就可以实现,那这个过程是如何实现的呢?在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。

所以可以通过按键的断开和闭合在运行的系统中控制其复位。

开机的时候为什么为复位在电路图中,电容的的大小是10uf,电阻的大小是10k。

所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。

也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。

这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。

所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。

在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。

所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。

按键按下的时候为什么会复位在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。

当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。

随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。

根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。

单片机系统自动复位。

总结:1、复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。

2、按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。

四、程序源码ORG 0000HAJMP MAINMAIN: MOV SCON,#10HMOV P0,#0FFHLOOP: CLR P2.5SETB P2.5ACALL DELAYCLR RIMOV P0,SBUF ;把SBUF中的至传送给P0显示ACALL DELAYSJMP LOOPDELAY: MOV R3,#3 ;延时程序LOOP4: MOV R4,#255LOOP5: MOV R5,#255LOOP6: DJNZ R5,LOOP6DJNZ R4,LOOP5DJNZ R3,LOOP4RETEND参考文献[1]李建忠.单片机原理及应用[M].西安电子科技大学出版社,2008[2]胡辉.单片机原理及应用设计[M].中国水利水电出版社,2006[3]徐爱钧.8051单片机实践教程[M].北京电子工业出版社,2005[4]楼然苗,李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,2006[5]邱关源.电路[M].北京:北京高等教育出版社,2006[6]全国大学生电子设计竞赛组委会.北京:北京理工大学出版社,2004年8月.[7]韩全立.赵德申编著.微机控制技术[M].北京:机械工业出版社,2008[8]王守中,聂元铭. 51单片机开发入门与典型实例[M]. 北京:人民邮电出版社,2009[9]钟富昭,张晨. 8051单片机典型模块设计与应用[M]. 北京:人民邮电出版社,2007[10]胡学海. 单片机及应用系统设计[M]. 北京:北京电子工业出版社,2001[11]陈小忠,黄宁.单片机接口技术实用子程序[M],北京:北京人民邮电出版社,2005[12]李广弟.单片机基础.北京:北京航空航天大学出版社,1992.[13]何立民.单片机应用技术大全.北京:北京航空航天大学出版社,1994.[14]张毅刚. 单片机原理及接口技术.哈尔滨:哈尔滨工业大学出版社,1999[15]刘丽莎、黄辉先、汤红忠.单交叉口模糊交通控制器的研究 [M]. 北京:北京高[16]蒋汝根、钱丹浩.基于AT89C52单片机的交通灯模拟控制系统[M]. 北京:机械工业出版社,2006致谢语时光匆匆如流水,转眼便是大学毕业时节,春梦秋云,聚散真容易,在这美丽的季节,我在电脑上敲出了最后一个字,心中涌现的不是想象已久的欢欣,却是难以言喻的失落。

相关文档
最新文档