《关于计算器的论文》由会员分享,可在线阅读,更多相关《关于计算器的论文(21页珍藏版)》请在金锄头文库上搜索。
1、 第1页 目 录 第一部分【摘 要】 . 2 第二部分【绪 论】 . 2 第三部分【方案论证与设计】 . 2 31 设计目标和实现方法 . 3 32 方案论证与设计 . 4 第四部分 【硬件模块介绍】 . 5 4.1 运算模块 . 5 4.2 单片机(AT89C51) . 6 4.2.1 单片机(AT89S51)的引脚功能 . 6 4.2.2 引脚介绍 . 错误!未定义书签。 4.3 输入模块 . 错误!未定义书签。 4.3.1 键盘介绍 . 14 4.4 显示模块 . 15 4.4.1 数码 . 错误!未定义书签。 4.4.2 数码管的分类 . 错误!未定义书签。 第五部分【 软件设计】 .
2、 16 5.1 LED 显示程序流程图设计 . 错误!未定义书签。 5.2 读键输入程序流程图设计 . 16 5.3 主程序流程图设计 . 18 第六部分 【 仿真及调试】 . 19 第七部分【总结及附录】 . 20 参考文献 . 21 附录 1 【简易计算器源程序】 . 错误!未定义书签。 附 录 2 【 仿真电路设计图】 . 错误!未定义书签。 一 【摘 要】 计算器在人们的日常中是比较的常见的电子产品之一。可是它还在发展之中,以后必将出现功能更加强大的计算器,基于这样的理念,本次设计是用单片机来设计的八位计算器。该设计系统是以 AT89C51 为单片机,用7SEG为显示位控制, P1 口
3、作为输入端,外接4X4 的键盘,通过键盘扫描来对输入数的控制,并外接驱动电路,系统采用 LCD 数码管作为显示器,软件程序采用均采用 C 语言编写,便于移植与升级。报告详细介绍了整个系统的硬件组成结构、工作原理和系统的软件程序设计。计算器将完成的功能有整数的加,减,乘,除等功能。 二 【绪 论】 随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如雨后春笋般的变化。电子产品的更新速度快就不足惊奇了, 单片机的应用已经越来越贴近生活,用单片机来实现一些电子设计也变得容易起来。 近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产
4、品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。 本设计采用80S51 芯片,实现了利用单片机进行了一个简单计算器设计。允许对输入数据进行加减乘除运算及LED 显示。如果设计对象是更为复杂的计算器系统,其实际原理与方法与本设计基本相同。另外,实例所设计的计算器是用LED 数码管显示的,当然也可以用其他的器件显示,如LED 显示屏,这样就可以显示出更多的字符,在此基础上,还可以编写更加完善的程序来实现更多
5、的计算功能。设计的关键所在,必须非常熟悉单片机的原理与结构,同时还要对整个设计流程有很好的把握,将单片机和其他模块完整的衔接。 a.设计目的 本设计旨在进一步掌握单片机理论知识, 理解嵌入式单片机系统的硬软件设计, 加强对实际应用系统设计的能力。通过本设计的学习,使我掌握单片机程序设计和微机接口应用的基本方法,并能综合运用本科阶段所学软、硬件知识分析实际问题,提高解决毕业设计实际问题的能力,为单片机应用和开发打下良好的基础。 1、对字符液晶显示模块的工作原理,如初始化、清屏、显示、调用及外特性有较清楚的认识,并会使用 LCD(液晶显示模块)实现计算结果的显示;掌握液晶显示模块的驱动和编程,设计
6、 LCD 和单片机的接口电路,以及利用单片机对液晶模块的驱动和操作; 2、在充分分析内部逻辑的概念,进行软件和调试,学会使用,并能够以其为平台设计出具有四则运算能力简易计算器的硬件电路和软件程序。 通过本次课题设计,应用单片机应用基础、计算机应用基础等所学相关知识及查阅资料,完成简易计算器的设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。 通过本次设计的训练, 可以使我在基本思路和基本方法上对基于 MCS-51 单片机的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。 b.设计任务 在本次课程设计中,主要完成如下方面的设计任务: 1、简要阐述单片机
7、技术发展的国内外现状及LED 动态显示和矩阵键盘基本原理; 2、掌握 MCS-51 系列某种产品(例如8051)的最小电路及外围扩展电路的设计方法; 3、了解单片机数据转换功能及工作过程; 4、完成主要功能模块的硬件电路设计及必要的参数确定; 5、用 protel 软件完成原理电路图的绘制; 三 【方案论证与设计】 31 设计目标和实现方法 为了满足计算器的基本要求,可以基本的运算(加减乘除),数据归零和出错警告提示,我们采用基于单片机设计计算器,并用LED 数码管显示数据,4*4 的矩阵键盘实现数据输入。设计仿真和调试要用到Protues 、Keil等软件。 32方案论证与设计 根据功能和指
8、标要求,本系统选用 MCS 51 单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计考虑如下: 另外键盘包括数字键(09)、符号键(+、-、)、清除键和等号键,故只需要16 个按键即可。 系统模块图: 图 3-1 系统模块图 根据需要我们可以采用自上而下的程序设计方法,此方法先从主程序开始设计,然后再编制各从属程序和子程序,层层细化逐步求精,最终完成一个复杂程序的设计。这种方法比较符合人们的日常思维,缺点是一级的程序错误会对整个程序产生影响。程序流程图如图 2-2 所示: 图 3-2 程序流程图 四【 硬件模块介绍】 4.1 运算模块 MCS-51 单片机是在一块芯片中集
9、成了 CPU、RAM、ROM、定时器/计数器和多功能 I/O 等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行 I/O 口、串行口、定时器 /计数器、中断系统及特殊功能寄存器(SFR)。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为: 图 4-1 单片机芯片 4.2 单片机(AT89C51) MCS-51 系列单片机简介 8051 是 MCS-51 系列单片机
10、的典型产品,以这一代表性的机型进行系统的讲解。8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,其内部结构如图 2.1 所示,现在分别加以说明: 图 4.2.1 8051 内部结构图 中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码,CPU 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 数据存储器(RAM): 8051 内部有 128 个 8 位用户数据存储单元和 128 个专
11、用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的 RAM 只有 128 个,可存放读写的数据,运算的中间结果或用户定义的字型表。 程序存储器(ROM): 8051 共有 4096 个 8 位掩膜 ROM,用于存放用户程序,原始数据或表格。 定时/计数器: 8051 有两个 16 位的可编程定时/计数器,以实现定时或计数产生中断,用于控制程序转向。 并行输入输出(I/O)口: 8051 共有 4 组 8 位 I/O 口(P0、 P1、P2 和 P3),用于对外部数据的传输。 全双工串行口: 8051 内置一个全双工串行通
12、信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。 中断系统: 8051 具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有 2 级的优先级别选择。 时钟电路: 8051 内置最高频率达 12MHz 的时钟电路,用于产生整个单片机运行的脉冲时序,但8051 单片机需外置振荡电容。 单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard) 结构, 另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构, 即普林斯顿 (Princeton) 结构。 INTE
13、L的 MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。 MCS-51的引脚说明: MCS-51系列单片机中的8031、8051及 8751均采用40Pin封装的双列直插DIP结构,下图是它们的引脚配置, 40个引脚中, 正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在对这些引脚的功能加以说明:如图 2.3 所示。 图 4.2.3 双列直插式封装引脚图 Pin9:RESET/Vpc复位信号复用脚,当 8051 通电,时钟电路开始工作,在 RESET 引脚上出现 24 个
14、时钟周期以上的高电平, 系统即初始复位。 初始化后, 程序计数器 PC 指向 0000H,P0-P3 输出口全部为高电平,堆栈指针写入 07H,其它专用寄存器被清“0” 。RESET 由高电平下降为低电平后,系统即从 0000H 地址开始执行程序。然而,初始复位不改变 RAM(包括工作寄存器 R0-R7)的状态,8051 的初始态。 8051 的复位方式可以是自动复位, 也可以是手动复位。 此外, RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部 RAM 的数据不丢失。见下图 2.4 为两种复位方式和两种时钟方式: 上电自动复位 手动复位电路 内部时钟方式
15、外部时钟方式 图 4.2.4 复位方式和时钟方式 Pin30:ALE/当访问外部程序器时, ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE 端将有一个 1/6 时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。它还有一个特点是,当访问外部程序存储器时,ALE 会跳过一个脉冲。 如果单片机是 EPROM,在编程其间,将用于输入编程脉冲。 Pin29:当访问外部程序存储器时,此引脚输出负脉冲选通信号,PC 的 16 位地址数据将出现在 P0 和 P2 口上, 外部程序存储器则把指令数据放到 P0 口上, 由 CPU 读入并执行。
16、Pin31:EA/Vpp程序存储器的内外部选通线,8051 和 8751 单片机,内置有 4kB 的程序存储器,当 EA 为高电平并且程序地址小于 4kB 时,读取内部程序存储器指令数据,而超过4kB 地址则读取外部指令数据。如 EA 为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的 8031,EA 端必须接地。 在编程时,EA/Vpp脚还需加上 21V 的编程电压。 单片机(AT89S51)的引脚功能: 51 系列单片机 8031、8051 及 89c51/89s51 均采用 40Pin 封装的双列直接 DIP 结构。上图是它们的引脚配置:40 个引脚中,正电
17、源和地线两根,外置石英振荡器的时钟线两根,4组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用,如图 4.2-3 所示: 图 4-3 引脚图 4.2: 电源引脚 Vcc 40 脚 正电源脚,工作电压为 5V,另有 AT89LV51 工作电压则是 2.7-6V, 引脚功能一样。 GND 20 脚 接地端。 4.2 外接晶体引脚: 外接晶体引脚如图 4-4 所示: 图 4-4 外接晶体管引脚 Pin19:时钟 XTAL1 脚, Pin18:时钟 XTAL2 脚,XTAL1 是片内振荡器的反相放大器输入端,XTAL2 则是输出端,使用外部振荡器时,外部振荡信号应直接加到 XTAL1,而
18、XTAL2 悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz ,时钟频率就为 6MHz 。晶振的频率可以在 1MHz-24MHz内选择。电容取 30PF 左右。 型号同样为 AT89C51 的芯片,在其后面还有频率编号,有 12,16,20,24MHz 可选。大家在购买和选用时要注意了。如 AT89C51 24PC 就是最高振荡频率为 24MHz,40P6 封装的普通商用芯片。 4.2 复位: 在振荡器运行时,有两个机器周期(24 个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51 芯片便循环复位。复位后 P0P3 口均置 1引脚表现为高电平,程
19、序计数器和特殊功能寄存器 SFR 全部清零。当复位脚由高电平变为低电平时,芯片为 ROM 的 0000H 处开始运行程序。常用的复位电路如下图 4-5 所示。 图 4-5 复位电路图 复位操作不会对内部 RAM 有所影响。当 8051 通电,时钟电路开始工作,在 RESET 引脚上出现 24 个时钟周期以上的高电平,系统即初始复位。什么叫复位?复位是单片机重新执行程序代码的意思。8051 的复位方式可以是自动复位,也可以是手动复位,如图 3-6 所示。此外,RESET/Vpd 还是一复用脚,Vcc 掉电期间,此脚可接上备用电源, 以保证单片机内部 RAM 的数据不丢失。 图 4-6 复位方式
20、4.2 输入输出(I/O)引脚: P39-P32 为 P0.0-P0.7 输入输出脚,称为 P0 口,是一个 8 位漏极开路型双向 I/O 口。内部不带上拉电阻,当外接上拉电阻时,P0 口能以吸收电流的方式驱动八个 LSTTL 负载电路。通常在使用时外接上拉电阻,用来驱动多个数码管。 在访问外部程序和外部数据存储器时, P0口是分时转换的地址(低8位)/数据总线, 不需要外接上拉电阻。 P1-P8为P1.0-P1.7输入输出脚, 称为 P1 口, 是一个带内部上拉电阻的 8 位双向 I/0 口。 P1 口能驱动 4 个 LSTTL负载。 通常在使用时外不需要外接上拉电阻,就可以直接驱动发光二极
21、管。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 P21-P28 为 P2.0-P2.7 输入输出脚, 称为 P2 口, 是一个带内部上拉电阻的 8 位双向 I/O口,P2 口能驱动 4 个 LSTTL 负载。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。对内部 Flash 程序存储器编程时,接收高 8 位地址和控制信息。在访问外部程序和 16位外部数据存储器时,P2 口送出高 8 位地址。而在访问 8 位地址的外部数据存储器时其引脚上的内容在此期间不会改变。 P10-P17 为 P3.0-P3.7 输入输出脚, 称为 P3 口, 是一个带内部上拉电阻的 8 位双向 I/
22、O口,P2 口能驱动 4 个 LSTTL 负载,这 8 个引脚还用于专门的第二功能。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 P1P3 端口在做输入使用时,因内部有上接电阻,被外部拉低的引脚会输出一定的电流。除此之外 P3 端口还用于一些专门功能,具体请看下表 4-1: 表 4-1 P3 口功能表 4. 其它的控制或复用引脚 (1) ALE/PROG 30 访问外部存储器时,ALE(地址锁存允许)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE 端仍以不变的频率输出脉冲信号(此频率是振荡器频率的 1/6)。在访问外部数据存储器时,出现一个 ALE 脉冲。对 Flash
23、 存储器编程时,这个引脚用于输入编程脉冲 PROG (2) PSEN 29 该引是外部程序存储器的选通信号输出端。当 AT89C51 由外部程序存储器取指令或常数时,每个机器周期输出 2 个脉冲即两次有效。但访问外部数据存储器时,将不会有脉冲输出。 (3) EA/Vpp 31 外部访问允许端。当该引脚访问外部程序存储器时,应输入低电平。要使 AT89S51 只访问外部程序存储器 (地址为 0000H-FFFFH) ,这时该引脚必须保持低电平。对 Flash 存储器编程时,用于施加Vpp 编程电压。 4.2.1 矩阵按键 键盘是单片机系统中最常用的人机对话输入设备,用户通过键盘向单片机输入数据或
24、指令。键盘控制程序需完成的任务有:监测是否有键按下,有键按下时,若无硬件去抖动电路时,应用软件延时方法消除按键抖动影响;当有多个键同时按下时,只处理一个按键,不管一次按键持续多长时间,仅执行一次按键功能程序。 P3 引脚 兼用功能 P3.0 串行通讯输入(RXD) P3.1 串行通讯输出(TXD) P3.2 外部中断 0( INT0) P3.3 外部中断 1(INT1) P3.4 定时器 0 输入(T0) P3.5 定时器 1 输入(T1) P3.6 外部数据存储器写选通 WR P3.7 外部数据存储器写选通 RD 矩阵按键扫描程序是一种节省I/O口的方法,按键数目越多节省I/O口就越可观,
25、思路:先判断某一列(行)是否有按键按下,再判断该行(列)是哪一只键按下。但是,在程序的写法上,采用了最简单的方法,使得程序效率最高。本程序中,如果检测到某键按下了,就不再检测其它的按键,这完全能满足绝大多数需要,又能节省大量的 CPU 时间。 4.2.2 计算器设计总体思想 根据功能和指示要求,本系统选用以 MCS-51 单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。 具体设计如下: 1、由于要设计的是简单的计算器,可以进行四则运算,为了得到教好的显示效果,采用 LCD 显示数据和结果。 2、另外键盘包括数字键(0-9)、符号键(+、-、*、/)、清除键和等号键,故只需要 1
26、6 个按键即可,设计中采用集成的计算机键盘。 3、执行程序:开机显示零,等待键入数值,当键入数字,通过 LCD 显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入的数值,按等号就会在 LCD 上输出运算结果。4、错误提示:当单片机执行程序中有错误时,会在 LCD 上显示相应的提示,如:当输入的数值或计算器得到的结果大于计算器的显示范围时,计算器会在 LCD 上提示溢出;当除数为 0 时,计算器会在 LCD 上提示错误 4.3 输入模块 计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量
27、的I/O 口资源,因此在很多情况下都不采用这种方式。为此,我们引入了矩阵键盘的应用,采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘。 在行线和列线的每个交叉点上设置一个按键。 这样键盘上按键的个数就为44个。这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率,如图4-8所示: 图 4-3.1 键盘按键 4.3.1 键盘介绍 每个按键都有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。键盘的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功
28、能是什么?还要消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接地;另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。 当无按键闭合时,P10P13 与P14P17 之间开路;当有键闭合时,与闭合键相连的两条I/O 口线之间短路。判断有无按键按下的方法是:第一步,置列线P14P17 为输入状态,从行线P10P13 输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合。第二步,行线轮流输出低电平,从列线P14P17 读入数据,若有某一列为低电平,则对应行线上有键按下。综合一二两步的结果,可确定按键编号。但是
29、键闭合一次只能进行一次键功能操作,因此须等到按键释放后,再进行键功能操作,否则按一次键,有可能会连续多次进行同样的键操作。 图4-3.2 键盘内部电路 4.4 显示模块 当系统需要显示少量数据时, 采用LCD液晶显示屏进行显示是一种经济实用的方法。 P0口作为液晶显示的数据端口,P3.5-P3.7口作为其控制端口,控制LCD液晶显示屏显示输出数据。 最终电路如图4.4.1所示: 图4.4.1 LED液晶显示屏显示 五【软件设计】 5.1 键盘扫描的程序设计 键盘扫描子程序,首先读出P1的低四位,然后读出P1口的高四位。然后键值并显示缓存。然后将键如的值转换为ASCII码然后就可以软件来设置硬件
30、按键各个键代表的内容。 读键程序使用的是反转法读键,不管键盘矩阵的规模大小,均进行两次读键。第一次所有行线均输出低电平,从所有读入键盘信息(列信息) ;第二次所有列线均输出低电平,从所有行线读入键盘信息(行信息) 。数字键按下则将相应的数字送入缓存区,功能键按下则执行相应的程序。 5.2 显示模块的程序设计 显示模块程序首先要对显示模块进行初始化;然后控制光标的位置;定义液晶显示的控制端口,用SBIT指令完成;然后设置清屏、关闭显示、归位、开显示、显示位置的首地址等等。 显示模块的流程图如图5.2所示: 5.3 主程序的设计 主程序主要是用来对LCD 液晶显示屏进行初始化的。 5. 软件的可靠
31、性设计 提高本仪器其可靠性措施主要有: 1、为防止程序跑飞,软件中设置了软件陷阱。 2、为防止程序死循环,软件中使用了看门狗技术。 5.5 读键输入程序流程图设计 为了实现键盘的数据输入功能和命令处理功能,每个键都有其处理子程序,为此每个键都对应一个码键码。为了得到被按键的键码,现使用行扫描法识别按键。列扫描信号进行读入行的信号判断该列是否有列的输出是则进行按照行列计算键盘的值,查表延时程序 开始 检测 LED是否在忙 扫描键盘 Y 加减乘除运算子程序 液晶显示 结束 图 5.2 模块的流程图 取 得 键 码 并 返 回 若 否 则 进 行 再 次 扫 描 。 其 程 序 框 图 如 下 :
32、图 5-5 程序框图 5.6 主程序流程图设计 运算主程序设计 首先初始化参数,送 LED 低位显示“0” ,高位不显示。然后扫描键盘看是否有键输入,若有,读取键码。判断键码是数字键、清零键还是功能键( “+” “-” “*” “/” “=” ) ,是数值键则送 LED 显示并保存数值,是清零键则做清零处理,是功能键则又判断是“=”还是运算键,若是“=”则计算最后结果并送 LED 显示,若是运算键则保存相对运算程序的首地址。运算主程序框图如 3-4 所示: 图 5-6 运算主程序框图 六 【仿真及调试】 在程序设计方法上,模块化程序设计是单片机应用中最常用的程序设计方法。设计的中心思想是把一个
33、复杂应用程序按整体功能划分成若干相对独立的程序模块,各模块可以单独设计、编程和调试,然后组合起来。这种方法便于设计和调试,容易实现多个程序共存,但各个模块之间的连接有一定的难度。根据需要我们可以采用自上而下的程序设计方法,此方法先从主程序开始设计,然后再编制各从属程序和子程序,层层细化逐步求精,最终完成一个复杂程序的设计。这种方法比较符合人们的日常思维,缺点是一级的程序错误会对整个程序产生影响。 功能和操作:加减乘除运算和显示。 上电后,屏幕初始化。 计算。按下数字键,屏幕显示要运算的第一个数字,再按下符号键,然后再按下 数字键,屏幕显示要运算的第二个数字,最后按下“”号键,屏幕上显示出计算结
34、果。 如果要再次计算,可以按下“ON/C”键清零,或者按下单片机的复位键,重新初始化。 七 【总 结】 经过近两个月的努力,终于顺利完成了毕业设计。刚开始,我们头绪不是很清楚,不知道从哪里入手,但通过老师的耐心指导并和同学认真研究设计课题,跑图书馆查资料、确定基本设计方案、对所用芯片功能进行查找、调试、上机仿真等,经历了一次次的困难,却积累了很多宝贵的经验。在整个设计的过程中遇到的问题主要有以下三点,第一:基础知识掌握的不牢固,主要表现在一些常用的电路的形式和功能不清楚,对书本上的内容理解不够透彻。第二:对一些常用的应用软件缺少应用,体现在画电路图和系统的仿真的时候,对这些软件的操作不熟练,浪
35、费了很多时间。第三:相关知识掌握的不够全面,缺少系统设计的经验。 这次设计进一步端了我的学习态度,学会了实事求是,严谨的作风,对自己要严格要求,不能够一知半解,要力求明明白白。急于求成是不好的,我有所感受。如果省略了那些必要的步骤,急于求成,不仅会浪费时间,还会适得其反。我觉得动手之前,头脑里必须清楚该怎么做,这一点是很重要的。就目前来说,我的动手能力虽然差一点,但我想,通过我的不懈努力,在这方面,我总会得到提高。这一点,我坚信。因为别人能做到的,我也一定能做到。 在硬件的制作过程中我走了好多的弯路,主要是在系统还没有设计很有把握就开始动手制作了。后来发现与设计的要求还有偏差,反复的改过了几次
36、,浪费了大量的时间和体力。感受到设计人员要有耐心,要认真的从要求开始研究。软件的编写过程中费了很大的力气,因为软件的编写要求很高,要很细心,一不小心就会调用错误,很深刻的体会到作为软件编程人员是绝不能粗心大意的。一个程序的完成的速度和质量高低与细心与否有着很大联系。编程时,我充分使用了结构化的思想。这样因为语句较少,程序调试比较方便,功能模块可以逐一的调试,充分体现了结构化编程的优势。当每个模块都完成时,将其功能加到一起就完成了整体的设计 在此次的毕业设计中我最大的体会就是进一步认识到了理论联系实践的重要性。一份耕耘,一份收获。通过这段时间的设计,让我明白科学的思维方法和学习方法是多么重要,只
37、有这样才能够有很高的效率,才能够让自己的工作更完美。总而言之,此次毕业设计让我学到了好多平时在课堂上学不到的东西,增加了我的知识运用能力,增强我的实际操作能力。谢谢老师给我们提供这么好的机会,为我们之后走向社会奠定了一个好的基础。 本次毕业设计让我学到了很多,也学会到了要怎么样去面对困难,不要对知识一知半截,要有的求实的能力,通过老师的帮助我学到了很多在平时的没有注意到的动东西及知识,更美没有深入的的去理解,通过这次我要更加的明确自己。更要注重自己在各方面的锻炼能力,把握机会。这次的设计非常的感谢老师们。 参考文献 1 胡 辉. 单片机原理与应用. 北京:中国水利水电出版社,2007 2 林志琦. 单片机原理接口及应用(C 语言版). 北京:中国水利水电出版社,2007 3 赵克林. C 语言实例教程. 北京:人民邮电出版社,2007 4 姜承昊. 最新 LED 驱动电路设计、 应用与制造新技术新工艺实用手册.北京:中国科学技术文献出版社,2008