基于89C52单片机的64点阵设计
基于STC89C52单片机最小系统的设计

基于STC89C52单片机最小系统的设计1 设计内容及要求设计题目:基于STC89C52单片机最小系统的设计及制作。
设计要求:输入信号为传感器、电压、电流、开关等形式,单片机型号可以自己选择(51,128,430等),输出控制信号为模拟电压或者数字信号,控制对象可以是电机(直流电机,步进电机)、开关、显示器等。
(注:可以采用单片机、传感器电路模块以及集成电路芯片制作。
)使用器材:感光板及常用PCB制版器材、常用电子装配工具、万用表、示波器及电子元器件(详见附录)。
2 STC89C52单片机2.1 STC89C52单片机简介单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
用专业语言讲,单片机就是在一块硅片上集成了微处理器、存储器及各种输入/输出接口的芯片。
2.2 单片机的特点(1)高集成度,体积小,高可靠性单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然是最小的。
芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪声性能优于一般通用的CPU。
单片机程序指令,常数及表格等固体化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。
(2)控制功能强为了满足对控制对象的要求,单片机的指令系统均有极丰富的条件:分支转移能力、I/O口的逻辑操作机位处理能力,非常适用于专门的控制功能。
(3)低电压,低功耗,便于生产携带为了便于广泛使用于便携式系统,许多单片机内的工作电压仅为 1.8V~3.6V,工作电流仅为数百微安。
(4)易扩展片内具有计算机正常运行所需的部件。
芯片外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。
基于89C52单片机的电子时钟设计_毕业设计

东华理工大学长江学院毕业设计题目基于89C52单片机的电子时钟设计英文题目Electronic Clock Design Based on 89C52学生姓名陈志仁学号09325202专业电子信息工程系别机械与电子工程系指导教师黄河职称讲师二零一三年六月摘要至今,微处置器的进展已有40连年的历史,起初由美国Intel公司首推的4为微处置器Intel4004,实现将单片处置器和运算器等元件集成在一片电路芯片上。
尔后微处置器的迅猛进展,微处置器内集成的元件也愈来愈多,其中包括增加了存储器、I/O接口电路、按时/计数器、串行通信口、中断操纵、系统总线和系统时钟等,大大增强了微处置器的性能,并针对特定的领域制作出最大效率的微处置器。
不同功能的微处置器称为微操纵器,也被咱们简称为单片机。
本文要紧介绍以单片机ST89C52和DS12C887时钟芯片为核心的电子时钟显示,LCD1602为液晶显示器件,此电子时钟显示具有年月日等大体时刻显示,和秒表计时处置、闹钟按时、蜂鸣、温度的设计。
单片机通过对时钟、温度等数据处置后传送至LCD 显示输出,也可通过按键对时刻进行调剂。
通过单片机外围接口的扩展实现温度搜集等功能。
关键词:电子时钟;AT89C52;计时;温度ABSTRACTThis project mainly introduces that the electronic clock which based on microcontroller ST89C52 Liquid crystal display devices's electronic clock display has the date and time timing processing, alarm clock timing and the design of buzzer, through the clock, temperature and other data processing and transmits signals to the LCD display output, also by adjusting button for the expansion of single-chip peripheral interface to achieve temperature acquisition functions.Key words: electronic clock;ST89C52;timing ;temperature第一章绪论系统设计的背景和意义电子时钟设计的背景随着微电子技术的迅猛进展,电子产品技术也取得了专门大的提高,单片机技术也一样水涨船高。
基于STC89C52单片机毕业设计(完整版)-附-原理图-pcb图-源程序-仿真图

基于STC89C52单片机的电子密码锁学生姓名: xx学生学号: xxxxx院(系):电气信息工程学院年级专业: 2010级电子信息工程2班指导教师:***二〇一三年六月摘要随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事情屡见不鲜,电子密码锁具有安全性能高,成本低,功耗低,操作简单等优点使其作为防盗卫士的角色越来越重要。
从经济实用角度出发,采用51系列单片机,设计一款可更改密码,LCD1602显示,具有报警功能,该电子密码锁体积小,易于开发,成本较低,安全性高,能将其存储的现场历史数据及时上报给上位机系统,实现网络实时监控,方便管理人员及时分析和处理数据。
其性能和安全性已大大超过了机械锁,特点有保密性好,编码量多,远远大于弹子锁,随机开锁成功率几乎为零;密码可变,用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降;误码输入保护。
当输入密码多次错误时,报警系统自动启动;电子密码锁操作简单易行,受到广大用户的亲睐。
关键词单片机, 密码锁, 更改密码, LCD1602目录错误!未定义书签。
1 绪论1.1电子密码锁简介 (1)1.2 电子密码锁的发展趋势 (1)2 设计方案 (3)3 主要元器件 (4)3.1 主控芯片STC89C52 (4)3.2 晶体振荡器 (8)3.3 LCD显示密码模块的设计 (9)3.3.1 LCD1602简介 (9)3.3.2 LCD1602液晶显示模块与单片机连接电路 (11)4 硬件系统设计 (12)4.1 设计原理 (12)4.2 电源输入电路 (12)4.3 矩阵键盘 (13)4.4 复位电路 (14)4.5 晶振电路 (14)4.6 报警电路 (15)4.7 显示电路 (15)4.8 开锁电路 (16)4.9 电路总体构成 (16)5 软件程序设计 (18)5.1 主程序流程介绍 (18)5.2 键盘模块流程图 (19)5.3 显示模块流程图 (21)5.4 修改密码流程图 (22)5.5 开锁和报警模块流程图 (23)6 电子密码锁的系统调试及仿真 (25)6.1硬件电路调试及结果分析 (25)6.2软件调试及功能分析 (25)6.2.1调试过程 (25)6.2.2 仿真结果分 (26)7 结论 (29)参考文献 (30)附录: (31)1 绪论1.1电子密码锁简介电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
《2024年基于AT89C51单片机的LED点阵显示系统设计》范文

《基于AT89C51单片机的LED点阵显示系统设计》篇一一、引言在现代电子产品设计中,LED点阵显示技术被广泛用于各类电子设备的用户界面显示,因为它能实现多级动态和色彩显示效果,可以丰富和强化用户体验。
本篇论文将介绍基于AT89C51单片机的LED点阵显示系统设计,包括系统架构、设计原理、实现方法及优化措施。
二、系统架构设计本系统设计主要采用AT89C51单片机作为核心控制器,搭配适当的LED点阵模块。
AT89C51单片机是一款广泛使用的低功耗、高性能的微控制器,其内部包含中央处理器(CPU)、定时器/计数器、并行I/O口等基本模块。
LED点阵模块则负责显示内容,其由多个LED灯珠组成,通过控制每个灯珠的亮灭来实现显示效果。
三、设计原理本系统设计的基本原理是利用AT89C51单片机的并行I/O口控制LED点阵模块的每个灯珠。
通过编程设定每个灯珠的亮灭状态,从而在LED点阵上形成所需的显示内容。
此外,AT89C51单片机还具有定时器/计数器模块,可以用于控制显示内容的刷新频率和动态效果。
四、实现方法实现本系统设计的关键步骤如下:1. 选择合适的LED点阵模块,确定其与AT89C51单片机的接口连接方式。
2. 根据需要显示的字符或图像,规划每个灯珠的亮灭状态。
3. 使用编程语言(如C语言)编写控制程序,通过单片机实现对LED点阵模块的控制。
4. 对程序进行编译和烧写到单片机中,并进行实际测试。
在编写控制程序时,需要根据单片机的时序要求,合理设置每个灯珠的亮灭时间,以实现所需的动态效果。
同时,还需要考虑程序的运行效率和稳定性,确保系统能够长时间稳定运行。
五、优化措施为了进一步提高系统的性能和稳定性,可以采取以下优化措施:1. 优化LED点阵模块的布局和连接方式,减少信号传输过程中的干扰和损耗。
2. 使用抗干扰能力强的电源和地线设计,确保系统在复杂电磁环境下的稳定性。
3. 对程序进行优化和调试,提高程序的运行效率和稳定性。
《2024年基于AT89C51单片机的LED点阵显示系统设计》范文

《基于AT89C51单片机的LED点阵显示系统设计》篇一一、引言随着科技的进步和电子设备的普及,LED点阵显示技术已经成为众多电子设备中常见的显示方式。
LED点阵显示系统因其高亮度、低功耗、高可靠性等优点,在许多领域得到广泛应用。
本文将详细介绍基于AT89C51单片机的LED点阵显示系统的设计,包括系统架构、硬件设计、软件设计以及系统测试等方面。
二、系统架构设计本系统以AT89C51单片机为核心控制器,通过驱动电路控制LED点阵的显示。
系统架构主要包括单片机最小系统、LED点阵模块、驱动电路以及电源模块等部分。
其中,单片机最小系统包括时钟电路、复位电路和程序存储器;LED点阵模块负责显示内容;驱动电路用于控制LED点阵的亮灭;电源模块为整个系统提供稳定的电源。
三、硬件设计1. 单片机最小系统设计:选用AT89C51单片机,通过时钟电路和复位电路构成单片机最小系统。
时钟电路采用外部晶振,以提供稳定的时钟信号;复位电路采用上电自动复位和按键复位两种方式,以满足不同情况下的需求。
2. LED点阵模块设计:根据实际需求选择合适尺寸和分辨率的LED点阵模块。
通过排针与单片机连接,实现数据的传输和控制。
3. 驱动电路设计:驱动电路采用共阴极或共阳极方式,根据LED点阵的接线方式设计相应的驱动电路。
通过控制驱动电路的通断,实现LED点阵的亮灭。
4. 电源模块设计:为整个系统提供稳定的电源,根据实际需求选择合适的电源模块和电源芯片。
四、软件设计软件设计主要包括单片机的程序设计和上位机界面设计两部分。
1. 单片机程序设计:采用C语言编写单片机程序,实现LED 点阵的显示控制。
程序包括初始化程序、主程序和中断服务程序等部分。
初始化程序用于配置单片机的IO口、定时器等资源;主程序实现LED点阵的显示内容和控制逻辑;中断服务程序用于处理外部中断事件,如按键操作等。
2. 上位机界面设计:通过PC端软件或手机APP等方式,实现与单片机的通信和数据传输。
基于51单片机的16x64点阵显示屏(终结版)

课程设计题目:微机原理与单片机技术实践课程设计——基于AT89C52的16*64LED点阵的设计基于AT89C52的16*64LED点阵的设计摘要:LED是指发光二极管,在某些半导体的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。
PN结加反向电压,少数载流子难以注入,故不发光。
这种利用注入式点知发光原理制作的二极管叫发光二极管,简称LED。
由于电子显示屏制作简单,安装方便,被广泛应用于各种公共场合,如公交汽车的报站器、广告屏以及公告牌等等。
介绍的LED点阵电子显示屏,其功能有固定汉字、字母、数字的显示;平行左移、右移;固定信息的循环显示;显示屏的亮度连续可调;时间的显示和上位机对显示内容可修改的功能随着LED显示屏在广告传媒领域逐渐崭露头角,其控制系统也如雨后春笋,层出不穷。
由于他的控制系统均是基于嵌入式处理器开发,所以单片机在其中也占有一席之地。
但是,由于LED显示屏控制较复杂,特别是对于显示特殊效果,如循环移动、覆盖霓虹灯效果,要求处理器运算速度快、执行效率高,关键词:AT89C52 74HC154(行驱动器) 74HC595(列驱动器) 16*64点阵 LEDBased on AT89C52 the 16 * 64 LED dot matrix designPick to:LED refers to light-emitting diodes that in some of the semiconductor PN junction,injection of minority carriers and majority carrier will take extra energy compoundin the form of light energy released, which directly convert light energy. PN junction, minority carriers with reverse voltage to infuse, reason not to shine. This kind of use between points made luminous principle known as light-emitting diodes (leds), called diode LED. Because electronic display screen making simple, convenient installation, widely applied in all kinds of public occasions, such as the transit buses stops device, advertising screen and bulletin boards, etc. Introduction of LED dot matrix electronic display screen, its function has the fixed characters, letters, and digital display; Parallel moves left, right shift; Fixed information circulation display; Screen brightness continuous adjustable; Time displays and PC for display content can be modified to functionAs the LED display in advertising media field, the control system of up-and-coming also have mushroomed, emerge in endlessly. Because of his control system based on embedded processors are developed, so microcomputer in which also occupies a place. However, because the LED display control is more complex, especially for show special effects, such as cycle mobile, covering the neon effect, request a fast calculation speed, execution processor of high efficiency,Keywords: AT89C52 74HC154 (line drive) 74HC595 (column drive) 16 * 64 lattice LED目录1系统设计总述 (1)1.1设计任务及要求 (1)1.2方案比较与确定 (2)216*64点阵原理 (3)2.2系统的主要结构 (4)3系统的硬件设计 (5)3.1单片机控制电路 (5)3.2、16*64点阵显示屏设计 (6)3.3 LED点阵显示器的扫描驱动 (8)3.3.1、行驱动电路 (8)3.3.2、列驱动电路 (9)4系统的软件设计 (11)4.1显示驱动程序 (11)4.2系统主程序 (11)5硬件调试及性能 (15)5.1开发环境介绍 (15)5.2 理论性能分析 (15)5.系统调试 (15)致谢 (17)参考文献 (18)附录1:最小系统行列驱动电路原理图 (19)附录2:点阵电路原理图 (19)附录3:最小系统行列驱动PCB图 (20)附录4:两块16*64点阵PCB图 (20)附录5:程序清单 (21)基于AT89S52的超声波测距仪的设计1、系统设计总述从LED材料的不断更新,灰度控制技术的发展,真彩色图像的展现:到驱动电路的灵活、高效,控制系统技术的提高无不体现了LED 行业技术的飞跃发展。
STC89C52的点阵显示论文显示设计论文:基于STC89C52的点阵显示设计

STC89C52的点阵显示论文显示设计论文:基于STC89C52的点阵显示设计摘要:led点阵显示在20世纪80年代以来以一种崭新的形式被广泛运用在社会的各个方面,尤以点阵显示广告牌为甚。
led点阵电子显示屏制作简单,安装方便,被广泛应用于各种公共场合,如银行,飞机场、火车站、汽车站,各种室外广场公告牌或广告牌。
究其原因是其使用寿命长,高亮度,宽视角,低功耗,大对比度,色彩鲜艳,可以显示静动态字符及图画。
本文介绍的是一种以现时运用最广的led 点阵显示广告牌为参考原型而设计的小型点阵显示。
它采用中国本土mcu领航者、8051单片机第一品牌,深圳宏晶科技公司出品的stc89c52rc为主体和基础,使用16*16led点阵,通过串口转usb进行下载更新,显示待定的中文、字符以及数字,显示内容可实现实时更新。
关键词:stc89c52、单片机设计、点阵显示、实时更新一、前言led显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万到几十万个半导体发光二极管像素点均匀排列组成。
利用不同的材料可以制造不同色彩的led像素点。
目前应用最广的是红色、绿色和黄色。
而蓝色和纯绿色led的开发已经达到了实用阶段。
led显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。
在短短的十来年中,led点阵显示屏就以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。
led的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。
led显示屏的应用涉及社会经济的许多领域,主要包括:(1)证券交易、金融信息显示。
(2)机场航班动态信息显示。
(3)港口、车站旅客引导信息显示。
(4)体育场馆信息显示。
(5)道路交通信息显示。
基于AT89C52单片机的点阵设计

2013届本科毕业设计(一号黑体居中)基于AT89C52单片机的点阵设计(二号黑体居中)院(系)名称物理和电子信息学院(小三号黑体)专业名称电子信息科学和技术(小三号黑体)学生姓名张三丰(小三号黑体)学号090524111(小三号Times New Roman)指导教师何大壮教授(小三号黑体)完成时间2013年5月8日(小三号黑体)目录摘要 (I)Abstract (I)第1章引言 (1)1.1单片微型计算机 (1)1.1.1 单片机的特点 (1)1.1.2 单片机的起源及发展过程和趋势 (1)1.1.3 单片机的使用 (1)1.2 LED电子显示屏概述 (3)1.2.1 显示技术 (3)1.2.2 LED的简介和显示使用 (3)1.2.3 LED电子显示屏 (4)第2章方案论证 (5)2.1功能概述 (5)2.2方案实现 (5)2.2.1显示屏控制部分的选择 (6)2.2.2 显示方式的选择 (6)2.2.3电源模块 (7)2.3.4单片机芯片的选择 (7)第3章点阵屏的硬件设计 (8)3.1点阵显示器的设计 (8)3.1.1 AT89C52单片机的性能及功能 (9)3.2单片机各组成电路 (11)3.2.1各个电路的介绍 (12)3.2.2具体电路及功能分析 (13)3.3点阵电路原理图 (15)第4章点阵屏的软件设计 (16)4.1 软件总体设计及功能描述 (16)4.1.1 系统主要程序的设计 (16)4.2 单片机系统资源的分配 (17)4.3源程序 (18)第5章软硬件的调试 (24)5.1单片机的测试 (24)5.2软硬件的调试 (25)(1)硬件的调试 (25)(2)软件的调试 (25)5.3整机的调试 (26)5.4印刷电路板的制作 (26)第6章结论 (27)致谢 (28)参考文献 (28)摘要由于单片机技术的不断发展和高亮度LED发光管的出现使得大屏幕高亮度LED 电子广告屏成为可能,和传统的霓虹灯广告在显示效果以及可修改性上都有着无法比拟哦优势,为了能简单的实现基于单片机的LED显示系统控制,本次设计主要使用了AT89C52单片机来控制点阵屏对数字、字符的显示,设计使用的是8*8点阵LED单色图文显示屏,一般来说,点阵屏的显示方式多种多样,大体上可以分为动态显示和静态显示,本次设计能在目测条件下LED显示屏各点亮度均匀,充足,可显示字符和数字等,显示的字符和数字稳定、清晰无串扰,显示有逐字显示和滚动显示等显示方式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本设计主题为LED点阵,运用动态扫描的方式通过单片机控制8*8LED点阵显示不同的图案。
一、本设计仿真电路图如下:布线布局如图:因Proteus软件中uln2803芯片设置与实际不符,所以未进行电脑仿真。
二、实验代码如下:#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intuchar code tab_a[] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};uchar code tab_xin[] = {0x00, 0x66, 0xff, 0xff, 0xff, 0x7e, 0x3c, 0x18};//心形矩阵阳极数据uchar code tab_xiao[] = {0x66, 0x99, 0x24, 0x18};//笑矩阵阳极数据uchar code tab_ku[]= {0x7e, 0x24, 0x24, 0x24, 0x18, 0x24};//哭矩阵阳极数据void time(uchar);void the_first ();void the_second ();void the_third();void the_forth();void the_fifth();/**************主函数(P1控制阴极-与tab_b匹配,p2控制阳极-与tab_a匹配)********************/uint sum = 0, num, i;void main(){while (1){TMOD = 0x01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA = 1; //开总中断ET0 = 1; //开定时器0中断TR0 = 1; //启动定时器0the_first();time(50);the_second();time(50);the_third();time(50);the_forth();time(50);the_fifth();}/**************主函数(P1控制阴极-与tab_b匹配,p0控制阳极-与tab_a匹配)********************//******************外围灯亮子程序*********************/void the_first(){uchar temp;num = 3;while (num){time(50);P0 = 0xff;P1 = 0xff;time(50);P0 = 0x00;P1 = 0x00;num--;}/***************第一行**************/temp = tab_a[7];P1 = tab_a[0];while (temp != tab_a[0]){P0 = temp;temp = _cror_(temp, 1);time(50);}/***************第一行**************//***************第一列**************/temp = tab_a[0];while (temp != tab_a[7]){P1 = temp;P0 = tab_a[0];temp = _crol_(temp, 1);time(50);}/***************第一列**************//***************第八行**************/temp = tab_a[0];P1 = tab_a[7];while (temp != tab_a[7])P0 = temp;temp = _crol_(temp, 1);time(50);}/***************第八行**************//***************第八列**************/temp = tab_a[7];while (temp != tab_a[0]){P1 = temp;P0 = tab_a[7];temp = _cror_(temp, 1);time(50);}/***************第八列**************/P1 = 0x00;P0 = 0x00;}/******************外围灯亮子程序*********************//******************灯柱左右移动子程序*****************/void the_second (){for(num = 0; num < 1; num++) //FROM left to right 3 time { for(i=0;i<8;i++) { P1=tab_a[i]; P0=0xff; time(50);}} for(num = 0; num < 1; num++) //FROM right to left 3 time { for(i=0;i<8;i++) { P1=tab_a[7-i]; P0=0xff; time(50);}} for(num = 0; num < 1; num++) //FROM top to bottom 3 time { for(i=0;i<8;i++) { P1=0xff; P0=tab_a[7-i]; time(50);}} for(num = 0; num < 1; num++) //FROM bottom to top 3 time { for(i=0;i<8;i++) { P1=0xff; P0=tab_a[i]; time(50);}} P1 = 0x00;P0 = 0x00;}/******************灯柱左右移动子程序*****************//****************** 显示心形*****************/void the_third(){while (i != 25){if(8 == num) num = 0;switch(num){case 0: P0 = tab_xin[0]; break;case 1: P0 = tab_xin[1]; break;case 2: P0 = tab_xin[2]; break;case 3: P0 = tab_xin[3]; break;case 4: P0 = tab_xin[4]; break;case 5: P0 = tab_xin[5]; break;case 6: P0 = tab_xin[6]; break;case 7: P0 = tab_xin[7]; break;default: break;}P1 = tab_a[num];num++;time(50);P0 = 0x00;P1 = 0x00;i++;}i = 1000;num = 0;while(i){P1 = 0x00;switch(num){case 0: P0 = tab_xin[0]; break;case 1: P0 = tab_xin[1]; break;case 2: P0 = tab_xin[2]; break;case 3: P0 = tab_xin[3]; break;case 4: P0 = tab_xin[4]; break;case 5: P0 = tab_xin[5]; break;case 6: P0 = tab_xin[6]; break;case 7: P0 = tab_xin[7]; break;default: break;}P1 = tab_a[num];time(1);P0 = 0x00;P1 = 0x00;if(num == 8) num = 0;}}/****************** 显示心形*****************//****************** 笑*****************/void the_forth(){i = 1000;num = 0;while(i){P1 = 0x00;switch(num){case 0: P0 = tab_xiao[0]; P1 = tab_a[1]; break;case 1: P0 = tab_xiao[1]; P1 = tab_a[2]; break;case 2: P0 = tab_xiao[2]; P1 = tab_a[5]; break;case 3: P0 = tab_xiao[3]; P1 = tab_a[6]; break;default: break;}time(1);num++;P0 = 0x00;P1 = 0x00;i--;if(num == 4) num = 0;}}/****************** 笑*****************//****************** 哭*****************/void the_fifth(){i = 1000;num = 0;while(i){P1 = 0x00;switch(num){case 1: P0 = tab_ku[1]; P1 = tab_a[2]; break;case 2: P0 = tab_ku[2]; P1 = tab_a[3]; break;case 3: P0 = tab_ku[3]; P1 = tab_a[4]; break;case 4: P0 = tab_ku[4]; P1 = tab_a[6]; break;case 5: P0 = tab_ku[5]; P1 = tab_a[7]; break;default: break;}time(1);num++;P0 = 0x00;P1 = 0x00;i--;if(num == 5) num = 0;}}/****************** 哭*****************//****************** 中断程序*****************/void interrupt_1 () interrupt 1{TH0=(65536-5000)/256;TL0=(65536-5000)%256;sum++;}/****************** 中断程序*****************//****************** 计时子程序*****************/void time(uchar t){while(t){if(sum == 1){sum = 0;t--;}}}/****************** 计时子程序*****************/三、实物效果如下图所示:(因点阵无法在单层版上实现布线,所以采用万能版焊接然后用杜邦线连起来)第11页共4页。