资源描述
天津工业大学
毕业设计(论文)
基于Proteus的公交车液晶显示报站系统的设计与仿真
姓 名 冯 森 海
学 院 电气工程与自动化
专 业 自 动 化
指导教师 成 怡
职 称 讲 师
2011年 5月30日
天津工业大学毕业设计(论文)任务书
题目
基于proteus的公交车液晶显示报站系统的设计与仿真
学生姓名
冯森海
学院名称
电气工程及其自动化
专业班级
自动化073
课题类型
实际课题
课题意义
公交车液晶显示报站系统,是提升公交服务质量的解决方法之一。本设计选用 A T 8 9 S 5 1 作为控制芯片,设计公交车液晶显示报站系统。设计中采用 K e i l C 5 1 和P r o t e u s软件对时钟的显示进行了仿真,模拟实际效果。
任务与进度要求
2011.1-2011.3:学习单片机编程软件KeilC51和Proteus软件,查找公交车液晶显示报站系统的相关文献资料。
2011.3-2011.4:基于A T 8 9 S 5 1单片机设计公交车液晶显示报站系统硬件电路。
2011.4-2011.5:实现公交车液晶显示报站系统的软件编程。
2011.5-2011.6:完成整调试,准备撰写论文。
主要参考文献
[1] 单片机原理与应用及C51程序设计.谢维成,杨加国.清华大学出版
社.2009.7.
[2] 基于Proteus的单片机系统设计与仿真实例.蒋浑平,周国雄.机械工
业出版社.
起止日期
2011.1-2011.6
备注
院长 教研室主任 指导教师
毕业设计(论文)开题报告表
2011 年 3 月 10 日
姓名
冯森海
学院
电自学院
专业
自动化
班级
073班
题目
基于proteus的公交车液晶显示报站系统的设计与仿真
指导教师
成怡
一、与本课题有关的国内外研究情况、课题研究的主要内容、目的和意义:
公交车液晶显示报站系统,是提升公交服务质量的解决方法之一。本设计选用 A T 8 9 S 5 1 作为控制芯片,设计公交车液晶显示报站系统。设计中采用 K e i l C 5 1 和P r o t e u s软件对时钟的显示进行了仿真,模拟实际效果。
当前国内主要大城市的公交车大都采用人工语音报站,即每到一站由司机或者乘务员按语音键来进行报站。但有时由于受到各种因素如雨雪天路滑、车上拥挤、乘务员心情的变化等的影响,会出现报错站,漏报站的情况,给乘客特别是不熟悉本市地形的乘客带来了不必要的麻烦。于是开发研制自动报站系统成为必然。从而地图匹配与GPS导航成为公交车自动报站的重点和难点,是未来公交车报站的发展方向。
二、进度及预期结果:
起止日期
主要内容
预期结果
2011.4月
2011.5月
2011.6月
硬件电路设计、软件编程、调试;
调试验证,撰写毕业论文;
完成毕业论文,准备答辩
完成硬件设计,软件编程和程序调试。
调试完成,撰写毕业论文,并完成大部分。
完成毕业论文
完成课题的现有条件
单片机QY4,仿真软件Proteus和编译软件KeilC51。
审查意见
指导教师: 年 月 日
学院意见
主管领导: 年 月 日
天津工业大学本科毕业设计(论文)评阅表(论文类)
题目
基于proteus的公交车液晶显示报站系统的设计与仿真
学生姓名
冯森海
学生班级
自动化073
指导教师姓名
成怡
评审项目
指标
满分
评分
选题
能体现本专业培养目标,使学生得到较全面训练。题目大小、难度适中,学生工作量饱满,经努力能完成。
10
题目与生产、科研等实际问题结合紧密。
10
课题调研、
文献检索
能独立查阅文献以及从事其他形式的调研,能较好地理解课题任务并提出实施方案;有分析整理各类信息,从中获取新知识的能力。
15
论文撰写
结构严谨,理论、观点、概念表达准确、清晰。
10
文字通顺,用语正确,基本无错别字和病句,图表清楚,书写格式符合规范。
10
外文应用
能正确引用外文文献,翻译准确,文字流畅。
5
论文水平
论文论点正确,论点与论据协调一致,论据充分支持论点,论证过程有说服力。
15
有必要的数据、资料支持,数据、资料翔实可靠,得出的结论有可验性。
15
论文有独到见解或有一定实用价值。
10
合计
100
意见及建议:
评阅人签名: 年 月 日
天津工业大学毕业设计(论文)成绩考核表
学生姓名
冯森海
学院名称
电自学院
专业班级
自动化073
题目
基于proteus的公交车液晶显示报站系统的设计与仿真
1.毕业设计(论文)指导教师评语及成绩:
成绩:
指导教师签字: 年 月 日
2.毕业设计(论文)答辩委员会评语及成绩:
成绩:
答辩主席(或组长)签字: 年 月 日
3.毕业设计(论文)总成绩:
a.指导教师
给定成绩
b.评阅教师
给定成绩
c.毕业答辩成绩
总成绩
(a×0.5+b×0.2+c×0.3)
摘 要
在嵌入式系统软硬件设计仿真平台Proteus的基础上设计了公交车液晶显示报站系统。硬件电路包括控制器件AT89C51、显示模块AMPIRE128×64和4个操作按键。通过汉字取模软件生成汉字点阵,实现了天津市第35路公交车单线方向的报站仿真。
本系统是以单片机的基本语言C语言来进行软件设计,51的编程语言常用的有二种,一种是汇编语言,一种是C 语言。汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C 语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用C 语言的开发周期通常要小于汇编语言很多。综合以上C 语言的优点,我在学习时选择了C 语言指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。
关键词:公交车报站系统;Proteus;AT89C51;AMPIRE128×64
ABSTRACT
The LCD Bus Stop Announcement system have been designed based on Proteus software,an embedded system hardware and software simulation platform.The hardware circuits includes the control device AT89C51,display module AMPIRE 128× 64 and 4 operation button.Via Chinese modulus software togenerate Chinese characters lattice,and using C language,the simulation of No.35 bus-stop-reporting
in one—way direction was realized in the Tianjin city.
This system edits collected materials the language to proceed with single the basic language of a machine the software designs, the instruction carries out the speed quick, save memory. For the sake of easy to expand with the design adoption mold a logic for turning construction, making procedure designing relation that change, software more shorter and more easier to understand. Make hardware control in software descended to moderate the operation.
Key words:bus—stop—reporting system;Proteus;AT89C51;AMPIRE128×64
前 言
公交车对提升城市形象、促进社会经济发展起到积极推动作用。但在我国偏远的西部和经济还不太发达的一些地方,公交车的发展还明显跟不上人们日益增长的物质需求,如2009年3月,康定县才成为四川藏区第一个开通公交服务的城市。对于我国二级以下的城市,目前公交车报站的情况大多还存在以下问题:①没有自动报站,实行人工报站;②有自动报站,却停留在单一的语言报站上;③LED站台数字编号(比如002)显示;④LED汉字显示屏,但屏幕显示内容单一。这些在乘客对路线不熟悉或在乘车拥挤的情况下,势必会给乘客带来不便。本文设计了公交车报站系统液晶显示汉字的控制电路,并在Proteus仿真平台上完成了模拟。
首先在绪论中介绍了本课题的课题背景、研究意义及完成的功能。本系统是以单片机的基本语言C语言来进行软件设计,可读性和可移植性强。正文中首先简单描述系统硬件工作原理,且附以系统硬件设计框图,论述了本次毕业设计所应用的各硬件接口技术和各个接口模块的功能及工作过程, 并具体描述了AT89C51和液晶模块AMPIRE128×64连接电路的软、硬件调式。阐述了程序的流程和和实现过程。本文撰写的主导思想是软、硬件相结合,以硬件为基础,来进行各功能模块的编写。最后对我所开发的用单片机实现LCD液晶显示器控制原理的设计思想和软、硬件调试作了详细的论述。
目 录
第一章 绪论…………………………………………………………1
1.1课题背景及研究意义…………………………………………………………1
1.1.1 课题背景…………………………………………………………………1
1.1.2 研究意义…………………………………………………………………1
1.2报站器的动态发展趋势………………………………………………………2
1.3本文主要内容…………………………………………………………………2
第二章 硬件电路设计………………………………………………………4
2.1硬件电路设计思路和框图……………………………………………………4
2.2芯片AT89C51…………………………………………………………………4
2.2.1芯片简介…………………………………………………………………4
2.2.2管脚说明…………………………………………………………………5
2.3液晶模块AWPIRE128×64……………………………………………………6
2.4仿真电路设计…………………………………………………………………10
第三章 系统软件设计……………………………………………12
3.1系统流程图设计………………………………………………………………12
3.2Proteus ISIS仿真系统基本知识……………………………………………13
3.2.1系统概述…………………………………………………………………13
3.2.2进入Proteus ISIS…………………………………………………………14
3.2.3Proteus工作界面及窗口说明……………………………………………14
3.2.4Proteus绘图流程举例…………………………………………………14
3.3KEIL Cx51软件的使用……………………………………………………16
3.3.1创建项目…………………………………………………………………16
3.3.2为项目新建文件…………………………………………………………17
3.3.3生成.HEX文件………………………………………………………18
3.4汉字字模提取…………………………………………………………………18
3.5程序功能说明…………………………………………………………………20
3.5.1LCD的初始化…………………………………………………………20
3.5.2写命令…………………………………………………………………20
3.5.3写数据…………………………………………………………………20
3.5.4汉字显示………………………………………………………………21
3.5.5主程序…………………………………………………………………23
3.6仿真结果………………………………………………………………………23
第四章 结论…………………………………………………28
参考文献…………………………………………………………29
附录………………………………………………………………30谢辞………………………………………………………………42
天津工业大学2011届本科毕业设计(论文)
第一章 绪论
1.1课题背景及研究意义
1.1.1课题背景
从1831英国人沃尔特·汉考克为他的国家制造出了世界上第一辆装有发动机的公共汽车起,到今天,公交车已经历经了将近200年的发展过程。从最初的“闷罐头”到如今配套的空调系统;从专人售票到无人售票;从人工报站到半自动语音报站,公交车向着越来越人性化的方向发展。
单片机体积小,重量轻,具有很强的灵活性而且价格便宜,得到越来越广泛的运用,例如工业控制领域、家电产品,智能化仪器仪表,计算机外部设备,特别是机电一体化产品中都有重要的用途。20世纪80年代中期,Intel公司将8051内核使用权以专利互换或出售的形式转给世界许多著名IC制造厂商,这样8051就变成有众多制造厂商支持的,发展出上百个品种的大家族。到目前为止,其它任何一个单片机系列均未发展到如此的规模。正因为51单片的运用是如此广泛,因此学习单片机的运用是非常重要的。学好单片机也是学习其他嵌入式控制器如ARM、DSP的基础,任何嵌入式控制器都离不开单片机种所涵盖的如中央处理器,定时器、中断控制器,IO口控制器, 串行通讯控制器,I2C总线控制器,片内外存储控制器,汇编语言,C语言,操作系统的概念。因此说学好单片机,再去学习其他嵌入式控制器如ARM、DSP是比较简单的。可以说学好单片机是其它进阶微处理器的一个台阶。
1.1.2研究意义
随着城市化进程的加快,公交车作为城市建设的基础设施之一,仍然是绝大多数出行者的首选交通方式。传统由乘务人员人工报站,该方式由于效果太差和工作强度太大,在绝大多数城市已经被淘汰。随着科学技术的日益发展和进步,微型计算机已经在很多领域得到广泛应用。LCD与微机技术结合,比传统的LED显示效果更佳。结合公交车报站的使用特点和运营环境,设计一种由单片机控制、LCD显示的公交车报站显示系统。
公交车报站显示系统的设计应用单片机,LCD显示,使到站信息及提示信息以显示的方式告知市民,为市民提供人形化、完美的服务。
1.2报站器的发展趋势
公共汽车行驶在现代文明程度高的市区,它是一道流动的风景线,因而对整车外形乃至色彩都有更高的要求。作为公共汽车还要求有醒目和减少乘务人员劳动强度的电子报站器,电子显示路牌,无人售票装置,前后电视监视系统等新技术的采用也将越来越普及。
公交车报站器在公交事业中占有举足轻重的地位,它直接影响到公交车的服务质量。目前公交车报站有三种方式,一种是利用GPS全球卫星定位系统的公交车报站系统,在司机座位后面隔板上,安装了一台15英寸的液晶电视和 GPS信号接收器,安装了这套设备后,公交车在语音报站的同时,通过液晶电视还可以显示到站站名的字幕,这样如果没听清报站的话,通过显示屏,乘客也可以一目了然。当出现紧急情况时,调度中心将会给公交车发出相应的信息,以短信的形式传送到显示屏上,同时车载台会发出相应的提示音;驾驶员也可以通过相应的工具进行回复。目前在美国部分城市GPS卫星定位系统已经投入使用,国内也有此类产品的研制开发,其功能强大,系统稳定,但其投资昂贵,尤其是一些中小城市无法承受。另外两种是手动电子报站和人工报站的方式,而它们都离不开司务人员,加大司乘人员的工作强度。手动电子报站一般有司机或者乘务员控制,经常出现错报,误报的情况。
城市公共交通是市民出行的主要交通工具之一。提供舒适,安全、便捷的乘车环境,对于公交企业来说,不仅是应尽的责任,亦是不断追求的目标。
1.3本文主要内容
本文系统的阐述了公交车报站器的相关知识,介绍了该课题的硬件电路的设计,说明了单片机89C51和液晶显示模块AMPIRE128×64的功能,以及如何使用相关仿真软件Proteus和Keil Cx51进行课题的电路仿真。本文分为四个主要章节,其主要内容分别是:
第一章 ,简要介绍了课题研究的相关背景和意义,公交车报站器的发展趋势和本论文的主要内容。
第二章 ,主要介绍了课题的硬件电路设计方案,相关芯片AT89C51的使用,液晶显示模块AMPIRE128×64的指令说明和硬件电路连接图。
第三章 ,主要介绍课题的系统流程图设计,仿真软件Proteus和Keil Cx51的使用,以及课题的软件程序说明和仿真结果。
第四章 ,总结课题的相关内容,说明设计的意义和存在的缺陷。
第二章 硬件电路设计
2.1硬件电路设计思路和框图
公交车液晶报站显示主要解决汉字的液晶显示和按键报站[1-4]。LCD液晶显示模块AMPIRE128×64可以显示字母、数字符号、中文字型及自定图形,只要一个最小的微处理系统,将液晶显示模块的I/O设备直接与之连接,就可以进行控制液晶显示器和数据传输,从而达到理想的显示效果。使用P2口给液晶显示器提供控制信号,P0口给液晶显示器传送数据。由于公交车报站系统有起始站、终点站、上一站和下一站的差别,所以4个采用独立式按键分别进行控制,按键电路从P1口输入信号。
系统设计框图如图2-1所示。主要采用单片机的最小系统AT89C51、LCD液晶显示模块AMPIRE128×64及外围电路组成。
图2-1 系统设计框图
2.2芯片AT89C51
2.2.1芯片简介
AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
2.2.2管脚说明
AT89C51的引脚排列如图2-2所示。
图2-2 AT89C51引脚排列图
下面对设计中用到的管脚进行简要的介绍:
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
2.3液晶模块AWPIRE128×64
液晶显示器件(LCD)独具的低压、微功耗特性使他在单片机系统中特得到了广泛的应用,常用的液晶显示模块分为数显液晶模块、点阵字符液晶模块和点阵图形液晶模块,其中图形液晶模块在我国应用较为广泛,因为汉字不能像西文字符那样用字符模块即可显示,要想显示汉字必须用图形模块。
选择LCD液晶显示模块AMPIRE128×64的汉字图形型液晶显示模块,可显示汉字及图形,图形液晶显示显示器如图2-3所示。
图2-3 LCD电路图
其引脚功能如表2-1所示[5]。
表2-1 AMPIRE12864管脚说明
序号
管脚名称
功 能
1
CS1
左半屏片选端,低电平有效
2
CS2
右半屏片选端,低电平有效
3
GND
地
4
VCC
逻辑电源
5
V0
调节对比度
6
RS
数据/指令控制信号:
1为数据输入,0为指令输入
7
R/W
数据/指令读写控制信号:
1为读出,0为写入
8
E
允许控制信号,R/W为0时,
E信号下降沿锁存DB7~DB0
9~16
DB0~DB7
数据总线
17
RST
复位信号,低电平有效
18
-Vout
驱动电压
其指令描述如下:
(1)显示开/关设置
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
H
H
H
H
H
H/L
功能:设置屏幕显示开/关。
DB0=H,开显示;DB0=L,关显示。不影响显示RAM(DD RAM)中的内容。
(2)设置显示起始行
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
H
H
行地址(0~63)
功能:执行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。
(3)设置页地址
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
H
L
H
H
H
页地址(0~7)
功能:执行本指令后,下面的读写操作将在指定页内,直到重新设置。页地址就是DD RAM 的行地址,页地址存储在X地址计数器中,A2-A0可表示8页,读写数据对页地址没有影响,除本指令可改变页地址外,复位信号(RST)可把页地址计数器内容清零。
DD RAM地址映像表如表2-2所示。
表2-2 RAM地址映像表
Y 地址
0
1
2
………
61
62
63
DB0
∫ PAGE0
DB7
X=0
DB0
∫ PAGE1
DB7
X=1
………………
……
DB0
∫ PAGE6
DB7
X=7
DB0
∫ PAGE7
DB7
X=8
(4)设置列地址
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
H
列地址(0~63)
功能: DD RAM 的列地址存储在Y地址计数器中,读写数据对列地址有影响,在对DD RAM进行读写操作后,Y地址自动加一。
(5)状态检测
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
H
L
BF
L
ON/OFF
RST
L
L
L
L
功能:读忙信号标志位(BF)、复位标志位(RST)以及显示状态位(ON/OFF)。
BF=H:内部正在执行操作; BF=L:空闲状态。
RST=H:正处于复位初始化状态; RST=L:正常状态。
ON/OFF=H:表示显示关闭; ON/OFF=L:表示显示开。
(6)写显示数据
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
H
D7
D6
D5
D4
D3
D2
D1
D0
功能:写数据到DDRAM,DDRAM是存储图形显示数据的,写指令执行后Y地址计数器自动加1。D7-D0位数据为1表示显示,数据为0表示不显示。写数据到DDRAM前,要先执行“设置页地址”及“设置列地址”命令。
(7)读显示数据
CODE:R/W RS IDB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
H
H
D7
D6
D5
D4
D3
D2
D1
D0
基本操作时序:
① 读状态:输入:RS=L,R/W=H,CS1 或CS2=H,E=H
输出:D0~D7=状态字
② 写指令:输入:RS=L,R/W=L,D0~D7=指令码,CS1或CS2=H,E=高脉冲
输出:无
③ 读数据:输入:RS=H,R/W=H,CS1 或CS2=H,E=H
输出:D0~D7=数据
④ 写数据:输入:RS=H,R/W=L,D0~D7=数据,CS1 或CS2=H,E=高脉冲
输出:无
RAM 地址映射图到LCD 显示屏由两片控制器控制,分别用和控制。每个内部带有64X64 位(512字节)的RAM 缓冲区,对应关系如下图2-4所示。
图2-4 LCD地址映射图
(8)操作
1.设定开始页地址和列地址
2.设定读写模式,进行读写操作
2.4 仿真电路设计
控制电路选用单片机AT89C51,本电路接高电平,没有扩展ROM。
利用晶体本身的特性,可以利用晶振和电容搭建震荡电路与AT89C51的XTAL1和XTAL2相连,向单片机提供一个频率较高的时钟脉冲,具体连接见电路连接图。
AT89C51的复位引脚外接开关复位电路。
将液晶的数据输入端DB0~DB7与单片机的P0口相连,进行数据传输操作。因为P0口内部没有上拉电阻,不能输出高电平,所以要接上拉电阻,这样就用到排阻。排阻就是好多电阻连载一起,他们有一个公共端1端为公共端接VCC或地,看你是上拉还是下拉呢,其他接要操作的端口。本电路中P0口需要接上拉电阻,所以排阻的公共端接VCC。
将P2.0,P2.1,P2.2分别与液晶的E,RW,RS端连接,用其组合来控制向LCD中进行数据和指令的读与写操作,P2.4和P2.3分别和CS1和CS2端连接,用来控制液晶左右屏的显示。另外背光灯的电源正极、液晶显示模块的电源正极以及LCD驱动电压输入端都接在+5V的稳压电源上,背光灯负极和模块的电源负极统一接地。
为了便于司机操作,采用4个独立式按键对显示进行控制,分别与单片机的P1.0~P1.3相连,分别代表4种功能:起点站、上一站、下一站和终点站。
报站系统液晶显示的电路连接图如图2-5所示。
图2-5 公交车报站系统液晶显示仿真电路
第三章 系统软件设计
3.1系统流程图设计
本设计针对天津市第35路公交车,共有7站,对单边线路的报站进行了仿真。软件流程图如上图3-1所示。
图3-1 系统流程图
系统上电后,对液晶模块进行初始化,并进行清屏。按键部分采用扫描法,当检测到按键按下时,进行键值判断,并进行相应显示程序的跳转,实现公交报站的功能。整个程序的详细流程如下:
Stepl:对LCD进行初始化,即根据系统的需要对液晶控制器的各项参数进行设置,显示开关、显示起始行、光标位置等设置,再对LCD所有单元写零清屏后准备显示。
Step2:扫描P1端口,等待按键的按下,进行键值判断,不同的按键对应不同的分支:
(1)K1按键:表示是起始站,显示欢迎词,在LCD上固定显示:“欢迎您乘坐康定城第2路公交车!”;
(2)K2、K3按键:分别表示上一站和下一站,可方便进行站台调节,在LCD上显示:“1 站到了!下一站2 。其中1 和2 分别是本站和下一站的站台名,如本线路要涉及5个站台(除去起始站和终点站)。而“站到了!”和“下一站”是公交
线路中各站都要显示的,则固定显示,故按键改变的只是模块的左半屏上半部分和右半屏下半部分内容的显示。
(3)K4键:表示终点站,显示欢送词,在LCD上固定显示:“终点站到了,请乘客依次从后门下车”。一定延迟后表明本次运行结束。
Step3:若没有到终点站,返回Step2。
3.2Proteus ISIS仿真系统基本知识
3.2.1系统概述
Proteus是英国Labcenter公司开发的电路分析与实物仿真软件[6]。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:①实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。②支持主流单片机系统的仿真。③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。④具有强大的原理图绘制功能。Proteus 软件所提供了30 多个元件库,数千种元件。元件涉及到数字和模拟、交流和直流等。对于一个仿真软件或实验室,测试的仪器仪表的数量、类型和质量,是衡量实验室是否合格的一个关键因素。在Proteus 软件包中,不存在同类仪表使用数量的问题。Proteus 还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似但功能更多。
总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。Proteus 与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU 的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。
3.2.2进入Proteus ISIS
双击桌面上的ISIS 6 Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus 6 Professional” →“ISIS 6 Professional”,出现如图3-2所示屏幕,表明进入Proteus ISIS集成环境。
图3-2 启动时的屏幕
3.2.3Proteus工作界面及窗口说明
Proteus的工作界面是一种标准的Windows界面,如图3-2所示。
单击对象选择按钮P会出现如图3-4对话框。
在keywords中输入需要的元器件型号如89C51会出现对话框在Results下选中需要的元器件然后按右下脚的OK关闭对话框,这时元器件列表中就会列出89c51。这时在原件列表中左键选取89c51,在原理图编辑窗口中单击左键,这样89c52就被放到原理图编辑窗口中了。同样放置其他元器件。
3.2.4 Proteus绘图流程举例
1.元件设置,首先按刚才所述选取放置一元件电阻,然后在图形编辑窗口中右键选取电阻,然后单击左键会出现如图3-5对话框然后按需要进行设置即可。
图3-3 Proteus工作界面
图3-4 对象选择界面
图3-5 修改元器件属性界面
2.添加仿真文件(.hex文件)
图3-6 添加十六进制文件界面
连好电路图后右键单击图中的单片机选中,然后单击左键出现如图3-6对话框在program file中单击浏览图标,找到所需要的.hex文件最后单击ok退出。
3.3 KEIL Cx51软件的使用
Keil C51 软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编,PLM 语言和 C 语言的程序设计,界面友好,易学易用。下面介绍Keil C51软件的使用方法。
3.3.1创建项目
启动后进入keil c的编辑界面如图3-7。
此时点击project—New Project菜单选项可
展开阅读全文