基于Proteus软件的实验板仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Proteus软件的实验板仿真
摘要:
随着计算机渗透于社会各领域和大规模集成电路的迅速发展,单片机的应用不断走向深入,由于单片机具有功能强、体积小、功耗低、价格便宜、工作可靠、使用方便等特点,越来越广泛地应用各个领域。
因此运用Proteus软件开发出单片机仿真实验板对教学实验具有重要意义,可以为学生提供良好的单片机学习平台。
本设计以AT89C52单片机作为控制器,由D/A转换模块、A/D转换模块,独立按键模块、LCD液晶显示模块组成单片机仿真实验板。
主要运用Proteus仿真软件和Keil 编程软件进行单片机实验板仿真设计,能够通过按键实现信号输入,通过LCD液晶实现信号输出,通过ADC0832实现模拟量到数字量转换,通过DAC0832实现数字量至模拟量转换。
仿真结果表明整个单片机仿真实验板,运行稳定,操作简单,效果明显,能为学生提供单片机的许多仿真实验。
关键字:Proteus,单片机,仿真实验
The simulation experiment board based on Proteus
Abstract:
As computers permeate all areas of society and the rapid development of large scale integrated circuits, single-chip applications continue to go deeper, because MCU has strong function, small size, low power consumption, cheap, reliable, easy to use features, increasingly The more widely used in various fields. Therefore, the use of Proteus software simulation developed microcontroller board is important for teaching experiments can provide students with a good chip learning platform.
The design uses AT89C52 microcontroller as the controller, the D / A converter module, A / D conversion module, independent key module, LCD liquid crystal display module chip simulation board. The main use of Proteus and Keil Microcontroller Experiment board programming software simulation designed to achieve through the key signal input, signal output through the LCD to achieve, achieved through ADC0832 analog-to-digital conversion, the DAC0832 digital to analog conversion amount. Simulation results show that the whole chip simulation board, stable, simple operation, the effect is obvious, to provide students with many MCU simulation.
Keywords: Proteus, microcontroller, simulation
目录
1 绪论 (2)
1.1 项目背景分析 (2)
1.2 技术发展趋势 (2)
1.3 课题的意义 (2)
2 开发工具介绍 (3)
2.1 Proteus软件介绍 (3)
2.2 Proteus应用方式 (3)
2.3 KeilC51软件介绍 (4)
2.4 Keil C51的应用方式 (5)
3 硬件电路设计 (6)
3.1 总体方案设计 (6)
3.2 模块电路设计 (6)
4 仿真运行 (13)
4.1 独立按键仿真 (13)
4.2 LCD液晶显示仿真 (14)
4.3 A/D转换电路仿真 (15)
4.3 D/A转换电路仿真 (16)
5 结论 (17)
参考文献 (18)
1 绪论
1.1 项目背景分析
单片机实验板以单片机为控制核心,实现外围输入输出电路的控制。
真正的实验板系统设计包括硬件电路设计和程序设计,软件调试必须在硬件电路板设计完成、元器件焊接完调试成功后进行,而且电路板制作、元器件焊接比较费时费力。
但如果运用Proteus 仿真软件进行单片机系统设计,不用制作实际的电路板也能够完成单片机开发。
因此运用Proteus进行单片机系统测试成功后再进行硬件电路制作,可以大大提高开发效率、降低开发成本、提高开发速度,这些因素对于嵌入式开发的公司提高效率很有帮助。
同样单片机实验板仿真设计对于教育教学具有重要意义,可以为学生提供良好的单片机学习和开发平台。
1.2 技术发展趋势
21世纪科技发展迅速,计算机软件硬件技术随之发展迅速,运用现有的计算机软件仿真技术,可以很好地仿真单片机实验板系统等实际问题。
当前单片机系统已经广泛地应用到军事技术、工程设计、科学研究、各类产业和商业文化艺术以及日常生活中的方方面面。
由于社会对掌握单片机技术人才的大量需求,使得单片机软硬件工程师成为近几年国内热门的职业,许多高校也已经开设基于单片机系统设计的课程。
基于单片机系统设计是理论与实践结合密切的课程。
但对于热衷于单片机设计开发的学生而言,一般没有足够的资金购买单片机开发板来进行开发设计,因此选择通过软件仿真来学习单片机系统开发是明智的选择。
而且Proteus是目前能够虚拟单片机系统设计的最好的EDA开发工具,是单片机系统开发人员必备仿真工具。
Proteus仿真软件与其它仿真软件最大的不同体现在Proteus不仅可以仿真单片机本身运行情况,而且能仿真单片机外围电路和没有单片机控制的外围电路的运行情况。
因此在硬件仿真和软件程序调试时,我们不再关心程序执行时单片机内部寄存器、存储器内容变化,而从总体的角度直接看程序运行和外围电路工作的过程和结果。
因此这样的仿真系统软件,很大程度上弥补理论和实践之间的矛盾。
1.3 课题的意义
现代电子工程领域中单片机技术发展最迅速,广泛应用于各类嵌入式系统设计中。
单片机技术的发展和推广迅速推动电子工业的发展,最终推广到产业界和教育界仍然是目前业界讨论的热点。
因此运用Proteus仿真软件开发出单片机实验板仿真系统对于教育教学意义重大,可以为学生提供良好的单片机学习和开发平台。
本课题充分运用Proteus仿真软件和Keil C51编程软件的功能,以AT89S52单片机为控制器,实现独立按键、LCD1602液晶显示、ADC0832模数转换、DAC0832数模转换各个模块电路的仿真。
最终设计的单片机仿真实验板可以为学生提供一个简单的虚拟硬件环境,可以进行基本的单片机学习和开发。
2 开发工具介绍
2.1 Proteus软件介绍
Proteus仿真软件是英国Labcenter electronics公司开发的EDA工具软件,不但具有大多数EDA工具软件的仿真功能,而且能仿真单片机和外围器件,毋容置疑Proteus是仿真单片机及外围器件目前最好的仿真软件。
Proteus在国内虽然刚刚推广,但受到许多单片机开发人员、单片机教学教师以及致力于单片机开发应用研究人员的青睐。
Proteus软件是世界著名的仿真软件,在于从原理图设计、代码设计到单片机与外围电路协同仿真,一键就可以切换到PCB设计,完全实现从概念到产品的完整设计。
Proteus也是世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的单片机开发平台,支持8051、8086、HC11、PIC、AVR、ARM、MSP430等系列的处理器型号,2010年还能支持Cortex和DSP系列处理器,每年持续增加许多其他系列处理器型号。
在编译器方面支持IAR、Keil以及其他编译器。
Proteus主要由ISIS和ARES两个软件构成,其中ISIS是原理图编辑仿真软件,ARES是布线编辑软件,本设计主要运用ISIS软件开发设计,具有以下特点:
(1)丰富的器件库:超过27000种元器件,可方便地创建新元件;
(2)智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;
(3)智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;(4)支持总线结构:使用总线器件和总线布线使电路设计简明清晰;
(5)可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供Word、PowerPoint等多种文档使用。
2.2 Proteus应用方式
第一步运行Proteus的ISIS程序后,进入该仿真软件的主界面。
在工作前,要设置菜单下的捕捉对齐和系统下的颜色以及图形界面大小。
通过工具栏中的选择命令,在选择设备窗口中选择本设计所需的元器件,放置好元器件并调整好位置,设置好元器件参数,连线元器件之间的电路,编写好程序;在资源菜单下定义代码生成器菜单命令下,选择程序编译的工具、路径、扩展名等项目;在资源菜单的添加删除资源文件命令下,加入单片机硬件电路的对应程序;通过调试菜单相应命令查看仿真程序和电路的运行状态。
第二步运用Proteus软件进行调试程序。
因为Proteus提供非常丰富的模拟信号和数字信号的测试信号可以用于电路的测试。
对于单片机硬件和软件的调试,不但可以看系统总体执行效果,还可以分步调试看每个步骤具体执行情况。
如果要看程序总体执行效果,只需要执行调试菜单下的生成菜单选择项或者按下快捷键F12就可以启动执行,用调试菜单下的暂停运行菜单选择项或暂停键就可以暂停运行仿真系统;还可以用调试菜单下的停止运行菜单选择项或shift+break组合键停止仿真系统运行。
所有的运行方式都可以选择工具栏中的相应工具进行。
如果要程序要分步调试,应先执行调试菜单下的开始调试菜单选择项命令,此时可以选择跨越、步入和步出命令执行程序或者用快捷键F10、F11、Ctrl+F11进行调试,执行的效果是单步执行、进入子程序执行和跳出子程序执行。
在执行完开始调试命令后,在调试菜单下面出现仿真的所涉及到的软件列表以及单片机系统资源等,可供软件硬件调试时分析和查看。
2.3 Keil C51软件介绍
Keil C51编程软件不但提供丰富的库函数和功能强大的集成开发调试工具Windows 界面,而且只要看看编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常高,大多数语句生成的汇编代码很紧凑,也很容易理解。
如果开发大型软件时更能体现高级语言的优势。
Keil C51软件支持许多公司的MCS51架构单片机,集编辑、编译、仿真于一身,同时还支持PLM语言、汇编语言和C语言的程序设计。
软件开发界面友好,在调试程序、软件仿真方面具有强大功能,通过设置就可以与Proteus的ISIS软件联机调试单片机系统。
Keil C51工具包中uVision与Ishell分别是C51 for Windows和for DOS的集成开发环境,可以完成编辑、编译、连接、调试、仿真等整个开发流程。
本设计运用的是Keil uVision4进行软件编程设计,类似于Visual C++6.0开发环境。
2.4 Keil C51的应用方式
第一步安装Keil C51 uVision4与Proteus 7.8 SP2软件;
第二步把Proteus安装目录下vdm51.dll文件复制到Keil安装目录\C51\bin目录中;
第三步修改Keil安装目录下tools.ini文件,在C51字段加入tdrv5=bin\vdm51.dll;
第四步打开Proteus,绘制硬件电路,在Proteus工具菜单中选中使用远程调试工具;
第五步在Keil软件中编写单片机控制程序;
第六步进入Keil的工程菜单选择目标“工程名”,在调试选项中右栏上部的下拉菜选中51单片机驱动;
第七步在Keil中进行调试,同时可以在Proteus中查看直观的调试结果。
3 硬件电路设计
3.1 总体方案设计
单片机实验板由单片机最小系统,独立按键模块,LCD 液晶显示模块,A/D 转换模块,D/A 转换模块组成。
控制核心部分采用最基本的AT89C52单片机就可以实现基本的控制要求,无论是存储器容量,运算器运算能力都完全满足要求。
液晶显示模块采用LCD1602可以显示32个字符或者数字,也能够满足基本单片机实验板要求。
模数转换模块采用ADC0832双通道8位串行A/D 转换器能够满足基本0-5V 电压模数转换,符合要求。
数模转换采用DAC0832并行8位D/A 转换器将数字信号转换为电压信号,完全满足要求。
单片机实验板结构设计如图3.1所示。
图 3.1 单片机实验板结构设计图
3.2 模块电路设计
3.2.1单片机最小系统设计
本设计采用AT89C52单片机为控制器,负责整个单片机实验板系统的运算和控制,包括所有的数据存储和数据运算,所有的外围器件都是要与单片机控制器进行数据交换,不论是数据读取还是写入都需要单片机,最终实现控制的要求。
AT89C52是美国Atmel 公司生产的8位低电压、高性能单片机,片内具有8KB 的可重复擦写的程序存储器和12B 的随机存取数据存储器,并且采用Atmel 公司的高密度、非易失性存储技术进行批量生产的,完全兼容标准MCS-51指令系统,片内集成通用八位中央处理器CPU 和Flash 存储单元,功能强大的AT89C52单片机广泛应用于各类控制领域。
本设计采用的AT89C52单片机属于AT89C51单片机的增强型,与Intel 公司生产的80C52在硬件组成、引脚排列、指令系统和工作特点方面完全兼容。
工作特性如下:片内程序存储器中有8KB 属于Flash 程序存储器,可擦写1000次以上;片内数据存储 单片机 AT89C52
LCD 液晶显示 独立按键输入 D/A 转换 A/D 转换
器有256KB的RAM;具有32根通用I/O双向口;具有3个独立的可编程定时器;中断系统具有8个中断源、6个中断矢量、2个级优先权的中断结构;串行口是具有1个全双工的可编程串行通信口;具有1个数据指针DPTR;具有低功耗工作模式、空闲模式、掉电模式;具有可编程的3级程序锁定位;工作电源电压为5V左右,典型值为5V;最高工作频率为24MHz。
AT89C52的内部结构框图如图3.2所示。
图3.2 AT89C52的内部结构框图
其中AT89C52的引脚说明如下:
VCC:接+5V电压。
GND:接电源地。
P0口:P0口是8位漏级开路双向I/O口,每脚可吸收8个TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
而且P0能够用于外部程序数据存储器,也可以被定义为八位数据/地址。
FLASH编程时,P0口可以作为原码输入口,当FLASH 进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入口,P1口被外部下拉为低电平时,将输出电流,因为内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口是内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL
门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,也可以作为输入口。
因此作为输入时,P2口的管脚被外部拉低,将输出电流。
也是因为内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,可以利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并可以用作输入口。
作为输入,由于外部下拉为低电平,P3口将输出电流,这是因为上拉的缘故。
RST:复位输入端。
当振荡器复位时,必须保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
高电平时,ALE 端以不变的频率周期输出正脉冲信号,频率为振荡器频率的六分之一。
因此可以用作对外部输出的脉冲或用于定时。
然而必须注意的是:每当用作外部数据存储器时,将跳过1个ALE脉冲。
如果要禁止ALE的输出可在SFR寄存器的8EH地址置0。
此时,ALE只有在执行MOVX,MOVC指令时ALE才能起作用,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位将无效。
PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:当EA保持低电平时,外部程序存储器地址为0000H-FFFFH,不管是否有内部程序存储器。
加密方式为1时,EA将内部锁定为RESET;当EA端保持高电平时,默认为内部程序存储器。
在FLASH编程期间该引脚也可以用于施加12V编程电源。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
最终Proteus软件仿真设计的如图3.3,省去单片机的复位电路和晶振电路,电源电路和晶振电路,实际电路设计是不能省略的。
电源分别是VCC接+5V,GND接地。
RST 引脚接20uF电解电容到VCC,再接1K电阻下拉到地,组成阻容复位电路,单片机上电后自动复位。
晶振电路是XTAL1和XTAL2分别接12M或者11.0592M晶振两端,再接20-30pF瓷片电容拉到地。
图3.3 单片机最小系统电路
3.2.2独立按键电路设计
独立按键设计比较简单,每个按键对应一个IO口,在单片机IO资源充足的时候可以这样设计。
Proteus仿真下按键电路设计如图3.4所示,直接将独立按键的一端接到IO 口,一端接地,这样设计完全可以实现功能,实际电路设计时一般要加上一个1-10K电阻拉高,防止按键没有按下时不会自动恢复高电平,主动拉高有利于实际运用。
本设计四个按键分别接到P3.2、P3.3、P3.4、P3.5。
图3.4 按键电路设计
3.2.3 LCD液晶电路设计
LCD1602液晶电路设计也比较简单,8位并行数据口与单片机P0口连接,3位控制口与单片机P2.5、P2.6、P2.7连接,Proteus仿真LCD1602液晶电路设计如图3.5所示,实际电路设计时还需要加上10K电位器调节背光的亮度。
图3.5 LCD1602液晶显示电路图
Proteus软件中LCD1602液晶选用的芯片是LM016L,即16×2字符LCD显示屏。
数据线D7~D0,控制线分别为RS、RW、E,1根地线VSS;两根电源线VDD和VEE,每行的字符数为16,行数为2,时钟为250KHz,行1的字符的地址为80H~8FH,行2的字符地址为C0H~CFH。
用LCD显示字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它为“0”,为“1”的点亮,为“0”的不亮。
这样就组成某个字符。
由于液晶内部自带字符发生器的控制器,显示字符就比较简单,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
3.2.4 A/D转换电路设计
本设计模数转换采用双通道8位串行A/D转换器ADC0832芯片,用10K的电位器作为模拟量输入信号,通过ADC0832的通道0测量模拟的电压信号,转化为数字信号给单片机,再通过LCD1602液晶显示。
Proteus仿真A/D转换电路如图3.6所示。
图3.6 A/D转换电路
ADC0832是NS(National Semiconductor)公司生产的串行接口8位A/D转换器,通过三线接口与单片机连接,功耗低,性能价格比较高,适宜在袖珍式的智能仪器仪表中使用。
ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
芯片具有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件连接和处理器控制变得更加方便。
通过DI 数据输入端,可以轻易的实现通道功能的选择。
其主要特点如下:8位分辨率,逐次逼近型,基准电压为5V;5V单电源供电;输入模拟信号电压范围为0~5V;输入和输出电平与TTL和CMOS兼容;在250KHZ时钟频率时,转换时间为32us;具有两个可供选择的模拟输入通道;功耗低,15mW。
ADC0832引脚说明如下:CS:片选端,低电平有效;CH0,CH1:两路模拟信号输入端;DI:两路模拟输入选择输入端;DO:模数转换结果串行输出端;CLK:串行时钟输入端;VCC/REF:正电源端和基准电压输入端;GND:电源地。
ADC0832与单片机的接口一般为4条数据线,分别是CS、CLK、DO、DI。
但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。
当要进行A/D转换时,须先将CS端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK提供时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲到来之前DI端必须是高电平,表示启动位。
在第2、3个时钟脉冲到来之前DI端应输入2位数据用于选择通道功能,其功能项见表3.1。
输入形式配置位选择通道
CH0 CH1 CHO CH1
差分输入0 0 + -
0 1 - +
单端输入 1 0 +
1 1 +
表3.1 ADC0832配置位
如表3.1所示,当配置位2位数据为1、0时,只对CH0 进行单通道转换。
当配置2位数据为1、1时,只对CH1进行单通道转换。
当配置2位数据为0、0时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。
当配置2位数据为0、1时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。
到第3个时钟脉冲到来之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。
从第4个时钟脉冲开始由DO端输出转换数据最高位D7,随后每一个脉冲DO端输出下一位数据。
直到第11个脉冲时发出最低位数据D0,一个字节的数据输出完成。
也正是从此位开始输出下一个相反字节的数据,即从第11个时钟脉冲输出D0。
随后输出8位数据,到第19 个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以,ADC0832时序如图3.7所示。
图3.7 A/D转换时序图
3.2.4 D/A转换电路设计
本设计数模转换采用8位并行D/A转换器DAC0832芯片,单片机的数字量转换为模拟量经过uA741放大后输出给电压表显示。
Proteus仿真D/A转换电路如图3.8所示。
图3.8 D/A转换电路
DAC0832是采用CMOS工艺制成的单片直流输出型8位数/模转换器,旨在直接与8080,8048,8085,Z80及其他通用的微型处理器进行相接。
存储的硅铬R-2R电阻梯形网络将参考电流分开,并为电路提供合适的温度处理特性(全范围最大线性温度误差的0.05%)。
电路利用CMOS电流开关和控制逻辑来取得最少的电能损耗和最小的输出泄露电流误差。
特殊的电路也能提供TTL逻辑输入电压的水平兼容。
主要特征如下:双缓冲,单缓冲,或流通数字数据输入;可以很容易地与12位1230
系列D/A转换器进行互换且插脚兼容;可直接与所有流通的微型处理器相接;线性指定
为零,且只能进行全面调整—不是最佳直线拟合;在±10V全参考4象限倍增中工作;
可用于电压转换模式;逻辑输入满足TTL电压水平说明(1.4V逻辑门限值);需要时,
可运行“STAND ALONE”;存在于20插脚小型或者模塑芯片运载包中。
引脚说明如下:DI0~DI7:8位数据输入线。
CS:片选信号输入,低电平有效。
ILE:
WR:输入寄存器写选通输入信号,低电平有效。
数据锁存允许控制信号,高电平有效。
1
WR:DAC寄存器写选通信号(输入),低电平有效。
XFER:数据传送控制信号(输入),2
低电平有效。
Ioutl、Iout2:电流输出,Ioutl+Iout2=常数。
Rf b:反馈电阻端。
内部接反馈电阻,外部通过该引脚接运放输出端。
VREF:基准电压,其值为-l0V~+l0V。
AGND:模拟地,为模拟信号和基准电源的参考地。
DGND::数字地,为工作电源地和数字逻辑地,两种地线可在基准电源处进行单点共地。
Vcc:芯片工作电源,其值为+5V~+l5V。
4 仿真运行
4.1 独立按键仿真
独立按键调试比较简单,四个按键分别表示加、减、加、减,按下键就会看到液晶上数字变化,左边表示加,右边表示减,每次加1、减1或者加2、减2。
按键仿真程序如图4.1所示,Keil C51编译通过后生成HEX文件,导入Proteus软件后,仿真结果如图4.2所示。
图4.1 独立键盘仿真程序
图4.2 独立按键仿真效果图
4.2 LCD液晶显示仿真
LCD液晶显示仿真的是静态显示两个简单的字符串,Keil C51编写的仿真程序如图4.3所示,仿真效果如图4.4所示。
图4.3 LCD液晶显示仿真程序
图4.4 LCD液晶显示仿真效果图
4.3 A/D转换电路仿真
A/D转换是通过调节10K的电位器就可以看到液晶显示的电压值变化。
Keil C51编写的仿真程序如图4.5所示,仿真效果如图4.6所示。
图4.5 A/D转换仿真程序
图4.6 A/D转换仿真效果图
4.3 D/A转换电路仿真
D/A转换是单片机进行数字量转换为模拟量的死循环,这样就会看到电压表从小到大连续变化的过程。
D/A转换仿真程序如图4.7所示,仿真效果如图4.8所示。
图4.7 D/A转换仿真程序
图4.8 D/A转换仿真效果图
5 结论
在这次电路设计中,我们确实遇到不少的问题,不过在老师和同学的帮助下,以及自己的努力下,我们还是完成电路设计。
做仿真结果前,我要做一步很重要的工作,就是Proteus和Keil的联调工作,但我学习很久还是不能实现联调工作,在我们心急如焚的时候,老师和同学给予我很多帮助,后来在他们在帮助下我顺利的完成这项工作。
毕业设计是本科学习阶段非常难得的一次理论与实际相结合的学习机会,通过这次完整的单片机实验板仿真系统设计,我脱离了单纯的理论知识学习状态,学会运用理论与实际设计结合锻炼了我综合运用所学专业基础知识的能力,解决实际问题的能力,同时也提高我查阅文献资料、设计规范、设计手册的专业水平,而且通过对毕业设计整体的掌握,对局部的取与舍,对设计细节的斟酌处理,都锻炼了我的能力,丰富了经验,更重要我的意志力,耐力以及抗压能力都得到很大程度的提升,这是我最大的收货,也是进行毕业设计的意义所在吧。