基于Proteus仿真 模拟电路实验与设计汇编
- 格式:ppt
- 大小:2.48 MB
- 文档页数:105
河北建筑工程学院本科毕业设计(论文)学科专业机械电子工程班级机电102班姓名冯立岗指导教师张东辉摘要本设计是基于51系列的单片机进行的单片机实验仿真系统设计,可以进行键盘输入显示、计数器、流水灯、LCD显示字符、抢答器等八个实验的仿真。
单片机实验仿真系统的设计过程在硬件与软件方面进行同步设计。
硬件部分主要由AT89C51单片机,4×4键盘阵列,七段数码管显示,8×8LED显示模块,16×16LED点阵显示模块,流水灯模块,LCD液晶模块,以及抢答器按键电路等组成,系统通过LED及LCD显示数据,所以具有人性化的操作和直观的显示效果。
软件方面主要包括时钟程序、键盘程序,显示程序等。
由于本设计实验项目有多个,考虑到汇编语言并不适于比较繁琐的程序的编写,故本系统以单片机的C 语言进行软件设计,为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,以便更简单地实现实验的选取及显示功能。
所有程序在Keil软件编写完成后调试编译最后生成hex格式的文件导入到Proteus 软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。
关键词:AT89C51;流水灯;抢答器;键盘ABSTRACTIt is a design of single chip experimental simulation system based on the 51 series single chip. It can perform eight experimental simulations including the keyboard input display, counter, water lights, LCD display character, responder.This design’s process is designed to synchronize the hardware and software aspects. The hardware part is mainly composed of AT89C51 microcontroller,4*4 keyboard array, seven segment LED display, 8*8 LED display module, 16*16 dot matrix display module, water light module, LCD liquid crystal module and responder key circuit and other components. The system displays the data via LED and LCD, so it has humanized operation and intuitive display effect. The software includes a clock procedure, the keyboard procedure and the display procedure. Since there are many experimental projects in this design, assembly language does not take into account the relatively cumbersome procedures for the preparation, and the system is designed of the microcontroller C language. In order to facilitate the expansion and change, the software is designed with modular structure, so that the logic programming is more concise and easier to realize the experimental selection and display. All the programs are debugged and compiled after the completion of the written of the keil software. And the final completed files of hex form are debugged in the Proteus software. When there is no problem, embedded the microcontroller into the Proteus software to simulate.Key words: AT89C51;water lights;responder;keyboard目录第1章前言 (1)1.1 单片机现状及发展概述 (1)1.2 单片机的性能特点 (2)1.3 AT89系列单片机简介 (2)1.4 单片机实验仿真系统 (3)第2章 Proteus和Keil软件 (4)2.1 Proteus与Keil的历史及联合仿真 (4)2.2 Proteus与Keil的联合仿真的优势 (5)2.3 Proteus与Keil的使用 (6)2.3.1 Keil C软件的使用 (6)2.3.2 Proteus仿真软件的使用 (9)第3章系统总体设计及方案的确定 (10)3.1 单片机实验仿真系统实验项目的设计 (10)3.2 系统总体设计 (11)3.3 系统总线的设计 (11)3.3 系统设计用到的元件 (12)第4章硬件及电路原理图的设计 (12)4.1 单片机最小系统设计 (12)4.2 流水灯的设计 (14)4.3 4×4矩阵键盘扫描与显示 (14)4.3.1键盘处理 (14)4.3.2 LED显示 (16)4.4 INT0中断三位计数器演示实验 (18)4.5 LCD液晶屏的字符显示实验 (19)4.5.1 液晶显示简介 (20)4.5.2 1602字符型LCD简介 (21)4.5.3 1602LCD的指令说明及时序 (21)4.5.4 1602LCD的指令说明及时序 (23)4.5.5 1602LCD的RAM地址映射及标准字库表 (25)4.5.6 1602LCD的一般初始化(复位)过程 (26)4.6 点阵显示字符实验 (27)4.6.1 LED简介 (28)4.6.2 LED点阵 (29)4.6.3点阵显示原理 (29)4.6.4 显示屏的原理图及结构 (30)4.6.5 显示屏的实验内容 (31)4.7 数码管动态显示实验 (32)4.8 8位计数器实验 (33)第5章系统的软件设计 (34)5.1 系统软件设计流程图 (34)5.2 单片机实验仿真系统原理图 (35)5.3 系统主程序 (36)第6章单片机实验仿真系统的仿真与调试 (38)6.1 利用Keil进行源程序的编译及调试 (38)6.2 利用Proteus调试电路检查系统的运行情况 (39)6.3 单片机实验仿真系统的运行及调试结果 (40)第7章毕业设计小结 (44)参考文献 (46)附录 (47)附:英文原文英文翻译毕业实习报告指导教师:张东辉设计项目计算与说明结果2.3.1 KeilC软件的使用创建工程: Keil C 把用户的每个工程都当作一个项目。
(完整版)PROTEUS仿真100实例《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例第01 篇基础程序设计01 闪烁的LED/* 名称:闪烁的LED说明:LED按设定的时间间隔闪烁*/#include#define uchar unsigned char#define uint unsigned intsbit LED=P1^0;//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){while(1){LED=~LED;DelayMS(150);}}02 从左到右的流水灯/* 名称:从左到右的流水灯说明:接在P0口的8个LED从左到右循环依次点亮,产生走马灯效果*/#include#include#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){P0=0xfe;while(1){P0=_crol_(P0,1); //P0的值向左循环移动DelayMS(150);}}03 8只LED左右来回点亮/* 名称:8只LED左右来回点亮说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果*/#include#include#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;P2=0x01;while(1){for(i=0;i<7;i++){P2=_crol_(P2,1); //P2的值向左循环移动DelayMS(150);}for(i=0;i<7;i++){P2=_cror_(P2,1); //P2的值向右循环移动DelayMS(150);}}}04 花样流水灯/* 名称:花样流水灯说明:16只LED分两组按预设的多种花样变换显示*/#include#define uchar unsigned char#define uint unsigned intuchar code Pattern_P0[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x 00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0 x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xf f,0x0f,0xf0,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xf b,0xfd,0xfe,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00 ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0 xf0,0xf8,0xfc,0xfe, 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff };uchar code Pattern_P2[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x 9f,0x3f,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x 00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0 x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xf f,0x0f,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xd f,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc 0,0x80,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff};//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;while(1){ //从数组中读取数据送至P0和P2口显示for(i=0;i<136;i++){P0=Pattern_P0[i];P2=Pattern_P2[i];DelayMS(100);}}}05 LED模拟交通灯/* 名称:LED模拟交通灯说明:东西向绿灯亮若干秒,黄灯闪烁5次后红灯亮,红灯亮后,南北向由红灯变为绿灯,若干秒后南北向黄灯闪烁5此后变红灯,东西向变绿灯,如此重复。
基于Proteus的虚实结合通信电子电路实验教学Proteus是一款功能强大的电子工程软件,可以在软件中进行电路设计、模拟和测试。
在电子电路实验教学中,Proteus可以用于虚实结合的实验教学。
本文介绍如何利用Proteus进行虚实结合的通信电子电路实验教学。
1. 实验目的本实验主要通过虚实结合的方式,使学生熟悉基于模拟电路的信号调制、解调、放大和滤波等基本知识,并学习数字电路的数模和模数转换等基本原理。
2. 实验器材1)信号发生器2)示波器3)单片机实验板4)串口转USB转换器5)硬件开发工具6)Proteus软件3. 实验内容本实验分为两部分,第一部分为模拟电路实验,第二部分为数字电路实验。
3.1 模拟电路实验在Proteus中,设计一个基于模拟电路的调制解调电路,将语音信号调制到载波上,再解调回来,使学生理解调制、解调及滤波等基本原理。
具体步骤如下:1)首先在Proteus中设计一个语音信号发生器电路,产生模拟语音信号。
2)将产生的语音信号进行调制,调制方式可选用AM或FM调制。
4)设计一个低通滤波器,滤除解调后的高频成分。
这样就可以得到解调后的原始语音信号。
5)将解调后的语音信号经过放大后,再通过示波器进行观察。
如果调制、解调、滤波及放大等部分均正常工作,那么观察到的信号应该与原始信号一致。
在Proteus中设计一个基于数字电路的数模转换和模数转换电路,实现数字信号与模拟信号的互相转换,使学生掌握数字信号处理的基本原理。
具体步骤如下:2)将产生的模拟信号转换为数字信号,可以用单片机等硬件实现。
3)设计一个数模转换电路,将数字信号转换为模拟信号。
4)将转换后的模拟信号进行放大和滤波处理,以得到恢复后的原始信号。
4. 实验效果通过使用Proteus软件进行虚实结合的实验教学,可以达到以下效果:1)实验器材成本较低,可以为学生节约一定的实验费用。
2)学生可以在虚拟环境中进行实验,不仅能够更好地理解实验原理,还能够避免实验中出现的操作失误等问题。
Proteus基本操作和8051最小系统利用Proteus平台搭建一个“8051最小系统”的仿真电路(流水灯为例)一、Proteus基本操作(一)启动Proteus仿真软件:双击“isis”图标,出现isis操作页面。
(二)搭建单片机系统仿真电路:分“器件选取”、“器件放置”和“电路连接”三大步来操作。
〖第一步器件选取〗:isis操作页面的左侧中下部分是电路和器件操作的导航区域,器件选取前“Devices”栏目下为空,器件选取操作的目的是将从器件库中分拣出需要的器件,这些器件排列在“Devices”栏目下。
A:先选择“器件和仪器工具栏”的“放大器符号样”图标(该工具栏的第一个图标),再单击“P”键即弹出“Pick Devices”窗口。
Pick Devices窗口左侧可以输入器件类型名称,或者选择器件类型,窗口中部即出现相应类型的器件,若鼠标选中器件,窗口右侧会出现该器件的引脚图和封装图。
B:在Pick Devices窗口中,先选中器件,后点击窗口右下脚的“确定”按钮,即将器件排列在“Devices”栏目下了。
或者直接双击被选的器件,也能收到同样的操作结果。
C:对于电源、地、输入和输出端等特殊器件,不在“Pick Devices”窗口中选取而在“Pick Terminals”窗口中选取。
只要选择“器件和仪器工具栏”的“输入输出符号样”图标(该工具栏的第八个图标),即变“Devices”栏目为“Terminals”栏目,“Terminals”栏目下已经将电源、地、输入和输出端等特殊器件列出了一部分,如还要增加时,单击“P”键即弹出“Pick Terminals”窗口供选取。
〖第二步器件放置〗:isis操作页面的中右侧是搭建硬件电路系统原理图和显示系统运行状态的区域。
器件放置前或选择“New Design”文件后,器件放置区域同导航区一样栏目内容为空,器件放置操作是把导航区的器件排列在放置区的适当位置,以便于搭建硬件电路系统原理图。
基于Proteus软件的实验板仿真摘要:随着计算机渗透于社会各领域和大规模集成电路的迅速发展,单片机的应用不断走向深入,由于单片机具有功能强、体积小、功耗低、价格便宜、工作可靠、使用方便等特点,越来越广泛地应用各个领域。
因此运用Proteus软件开发出单片机仿真实验板对教学实验具有重要意义,可以为学生提供良好的单片机学习平台。
本设计以AT89C52单片机作为控制器,由D/A转换模块、A/D转换模块,独立按键模块、LCD液晶显示模块组成单片机仿真实验板。
主要运用Proteus仿真软件和Keil 编程软件进行单片机实验板仿真设计,能够通过按键实现信号输入,通过LCD液晶实现信号输出,通过ADC0832实现模拟量到数字量转换,通过DAC0832实现数字量至模拟量转换。
仿真结果表明整个单片机仿真实验板,运行稳定,操作简单,效果明显,能为学生提供单片机的许多仿真实验。
关键字:Proteus,单片机,仿真实验The simulation experiment board based on ProteusAbstract: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仿真实验一、实验目的1、通过实例熟悉proteus软件使用方法。
2、掌握具体电路proteus和keil仿真二、实验要求1、独立完成。
2、设计步骤符合标准规范。
三、实验设备计算机,proteus软件四、内容及步骤一)、实验内容:根据下图所示的电路图使用805l控制共阳七段显示器的显示:先搭建一个“8051基本IO实验”的仿真电路,使用8051的Port 1连接到一个共阳的七段显示器,然后让8051轮流显示0~9。
当您连接好电路,并且完成程序之后,您将看到七段显示器依次显示0~9二)、实习步骤:1、在Protues中,绘制电路图,并调试。
2、编写程序并调试(在Keil c 或实验箱编译系统下均可)。
附录一Keil Vison2使用入门Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,该软件提供丰富的库函数和功能强大的集成开发调试工具。
按下面的步骤建立第一个项目:1、点击Project--- New Project,在“文件名”中输入一个C程序项目名称。
“保存”后的文件扩展名为uv2,这是KEIL uVision2 项目文件扩展名,以后可以直接点击此文件以打开先前做的项目。
2、选择所要的单片机,这里选择常用的Ateml公司的A T89C51。
完成上面步骤后,就可以进行程序的编写了。
3、首先要在项目中创建新的程序文件或加入旧程序文件。
点击File—New按钮,或快捷键Ctrl+N。
出现一个新的文字编辑窗口,4、保存源文件,扩展名为.C。
并将该文件加入到刚才建立的项目中。
5、编译源文件。
点击Build target或Rebuild all target files,查看编译结果是否有错,若有错,则修改源程序。
否则,则可以进行调试。
6、进入调试模式如图2,调试程序。
点击Debug---Start/stop Debug session,进入调试模式。