ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:654.20KB ,
资源ID:7374361      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7374361.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大学生毕业论文单片机实验.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大学生毕业论文单片机实验.docx

1、大学生毕业论文单片机实验(此文档为word格式,下载后您可任意编辑修改!)单片机教学实验箱的开发与研究摘要:在本文中,这个仿真实验箱的设计是为了方便8051单片机的学习,LED灯的仿真示例是AT89C51的一个很基础的应用,大家通过这个实验可以了解Keil Vision编程软件和Proteus 7 Professional仿真软件的使用。这里包含了流水灯,用指拨开关设置音调,音乐播放,秒表和LCD汉子显示以及点阵的滚动显示,电子密码锁等很多有趣的实验,可以增添初学者对单片机的兴趣。关键词:单片机,仿真, AT89C51,实验箱Abstract: In this paper, functiona

2、l based simulator designed to facilitate the study of the 8051 microcontroller, The simulation example of LED lamp is a basing application about AT89C51. everyone programming software and Proteus 7 Professional simulation software. This includes water lights,the switch setting tone, music player, a

3、stopwatch and LCD Chinese characters display and dot matrix rolling display, electronic password lock and many other interesting experiments, can be added to the interest of microcontroller beginners.Keywords: Microprocessor, Simulation, AT89C51, Experimental box前言AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS

4、 8位微处理器,有乘(MUL)、除(DIV)、减(SUBB)、比较(PUSH)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源,内有128个RAM单元及4K的ROM、16位定时计数器、4个8位并行输入口5。汇编语言 (Assembly Language)是面向机器的程序设计语言.是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言,比机器语言易于读写、调试和修改11。仿真实验箱包括流水灯、音乐播放、秒表、LCD显示、LED滚动显示、电子密码锁等应用。1 实例介绍1.1 流水灯1.1.1 LED灯的仿真示例实验要求能对Keil软件和Proteus软件有

5、初步的认识和了解,学会使用Keil软件进行简单的程序编写和调试、链接,学会使用Proteus软件进行简单的实验仿真。单片机仿真实验箱要用到Keil软件和Proteus软件。下面介绍仿真实验的基本步骤11。图1 启动 Keil Vision后的界面(1)建立源文件和工程打开Keil软件,出现如图1所示的界面。单击FileNew,开启一个新的源程序编辑窗口,将下面的源程序输入其中。CLR P1.0HERE:SJMP HEREEND输入完毕后,单击FileSave,给该文件取名保存。一般汇编程序以“.asm”或“.A51”为扩展名,如图2所示。 图2 源程序的保存在项目开发中,除源程序外,还需要选择

6、CPU,确定编译汇编、链接的参数,制定调试的方法等。为管理和使用方便,Keil使用工程将所需设置的参数和文件都加在一个工程中,只对工程进行编译和链接等操作。建立工程的步骤如下:单击ProjectNew Project,出现创建新工程的对话框,如图3所示。要求起一个工程名并保存,一般应把工程和源文件保存在同一个文件夹中。进入下一步,选择目标CPU,如图4所示,这里选择Atmel公司的89C51为例,单击“确定”按钮可返回主界面。图3 新工程的建立工程建好后,会出现如图5所示的对话框,询问是否要将80C51的标准启动代码源程序复制到工程所在文件夹,并将这一源程序文件加入到工程中。使用C语言编程且要

7、修改启动代码时应选“是”,使用汇编语言则应选择“否”。(2)将源程序加入到工程中单击工程工作空间Target1下方的Source Group1,使其反白显示,然后单击鼠标右键,在出现的快捷菜单中选择Add Files to Group Source Group1,出现如图6所示的对话窗口。Keil默认加入C源文件,因此要加入汇编语言源文件,需单击“文件类型”下拉列表右侧的下三角按钮,选“Asm Source file(*.s*;*.src;*.a*)”项,才能将文件夹下的*.asm文件显示出来。将这个文件加入到工程中。如果不再需要其他文件,单击Close按钮关闭这个对话框。图4 为工程选择目标

8、CPU 图5询问是否需要将8051的标准启动代码源程序复制到工程所在文件夹 图6 加入文件对话框 关闭对话框后回到主界面,刚加入的文件名出现在工程管理器的Source Group 1下一级。工程建好后,还要对工程做出进一步的设置,以满足每个工程个性化的要求。如图7,单击Output标签进入输出设置选项卡,一般设置都取默认值。如图8,要选中Greate HEX file。设置完毕后单击“确定”返回主界面,工程文件建立、设置完毕。图7 存储器使用等状况的设置图8 对输出进行控制设置好工程后,即可进行编译、链接。编译过程中的信息将出现在输出窗口的Build页。如果源程序中有语法错误,则会出现错误报告

9、。源程序每修改一次都要再次编译,最终得到如图9所示图9 编译、链接后得到正确的结果的结果,提示生成了HEX格式的文件,在此过程中还会生成一些其他文件用于Keil的仿真与调试。单击桌面“开始所有程序Proteus 7 Professional”打开Proteus软件。如图10所示,单击左侧的器件选择按钮,将出现如图11所示的Pick Device对话框,其中左侧的Category列表框中为器件的分类。 图10 单击器件选择按钮单击其中的Microprocess ICs,可在Sub-category列表框中找到8051 Family,单击后,在中间的列表框中就出现了所有可用的8051系列CPU,找

10、到AT89C51芯片,单击该芯片名,在对话框的右侧分别显示该元件的电路原理图和封装图。选中芯片后单击“OK”按钮,或双击AT89C51,回到主界面,可以看到列表框中多出了AT89C51芯片,用同样的方法选中RESPACK-8和LED-BIBY。在DEVICES列表中单击元件名,然后将鼠标移动到绘图区,鼠标形状变为笔状,在任意位置单击鼠标,则该元件出现在这一位置,并且自动命名。AT89C51元件被自动命名为U1。LED-BIBY即LED灯被命名为D1。单击元件,使其加亮显示,然后单击鼠标右键,可以变换元件的位置,使其合理放置。图11 选择所需要的器件单击左侧工具栏中的第八个按钮,切换到TERMI

11、NALS(终端模式),如图12所示。单击POWER即可既可增加一个电源端,双击该电源端,即出现Edit Terminal Label对话框。单击String后的下拉箭头,选中其中的VCC项即可。在绘图区加入电源,用线连接好。 图12 终端模式单击U1以选中AT89C51芯片,再次单击该芯片,或者双击U1即出现如图13所示的Edit Component对话框。 图13 编辑元件对话框这个对话框中需要设置Program File,即选择该芯片的运行程序。单击Program File后面的类似文件夹形状的按钮,找到先前生成的led灯.hex文件,选好后,还可以设置Clock Frequency,其默

12、认值为12MHz,可设成自己需要的频率,选好程序文件后,单击程序窗口左下角的“运行”按钮,即可看见LED灯被点亮,如图14所示。 图14 程序运行结果1.1.2 流水灯流水灯是一个大家常见的小玩具,在这个实验中将八个灯围成圆形,当灯以不同的方式点亮时,可以变出各种花样,通过这个实验可以了解单片机内部的结构及IO口的作用。流水灯的流程图如图15所示。图15流水灯的流程图按照上文步骤操作后,运行可以看到灯按不同的方式点亮,效果如图16所示。图16 流水灯运行的效果图1.2 音乐播放1.2.1 用指拨开关设置音调随着社会的发展,音乐逐渐成了我们生活中很重要的一部分,电子琴是现代电子科技与音乐结合的产

13、物,这里用AT89C51单片机为核心控制元件,在主控模块上设有7个按键和扬声器,用来设置音调,介绍了电子琴的基本原理。音名与频率的关系11如表1所示。表1 音名与频率的关系音名C4D4E4F4G4A4B4频率Hz262294330349392440494实验所用的系统晶振为12MHz,由产生方波的定时时间与延时常数的对应关系,得音名与设置的R7的值11如表2所示。其中指拨开关接在P2口,扬声器接P1.0引脚。用指拨开关设置音调的流程图如图17所示表2 音名与设置的R7的值 音名设置C4D4E4F4G4A4B4时间s3817340130302865255122732024常数次954850757

14、716637568506R7值188170151143127113101图17 用指拨开关设置音调的流程图按照上文步骤操作运行后,用鼠标单击指拨开关,将各位分别至于ON的位置,可以听到扬声器的声音发生了变化。运行时示波器显示的方波会随着音调发生变化。图18 用指拨开关设置音调的仿真电路1.2.2 简单音乐盒设计一个特殊的“音乐播放器”,核心器件用AT89C51单片机,利用定时器产生 “Do”、“Re”、“Me”等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律。这里以音乐“千年缘”作为示例。简单音乐盒的流程图如图19所示。图19 简单音乐盒的流程图本例的控制信号为

15、P3.5引脚,电路如图20所示。按照上文所示步骤操作,运行后可以实现音乐播放。图20 播放音乐“千年缘”的仿真电路图1.3 点阵滚动显示LED点阵显示器,以发光二极管为像素,1616的点阵共有256个发光二极管,显然单片机没有这么多端口,如果我们采用锁存器来扩展端口,按8位的锁存器来计算,1616的点阵需要2568=32个锁存器。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另一种称为动态扫描的显示方法,即逐行轮流点亮。1616 LED点阵其实就是4块88点阵LED级联而成的,图21为88点阵LED外观及引脚图,其等效电路如图22所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。若想

16、使左上角LED点亮,则令Y0=1,X0=0。应用时限流电阻可放在X轴或Y轴。而1616就是在88原理的基础上将四块88级联而成。以1616点阵为例,把所有同一行的发光管的阴极连在一起,把所有同一列的发光管的阳极连在一起(共阴的接法),先送出对应第1列发光管亮灭的数据并锁存,然后选通第1列使其燃亮一定的时间,然后熄灭;再送出第2列的数据并锁存,然后选通第2列使其燃亮相同的时间,然后熄灭;.第16列之后,又重新燃亮第1列,反复轮回。当轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。图21 88点阵LED外观及引脚图图22 88点阵LED等效电路LED点阵显示

17、模块进行的方法有两种:(1)水平方向扫描:用一个P口输出列码决定哪一列能亮,用另一个P口输出行码,决定该列上哪个LED亮。能亮的列从左到右扫描完16列即显示出一帧完整的图像。图23“北”字的显示点阵(2)竖直方向扫描:用一个P口输出决定哪一行能亮,另一个P口输出列码决定该行上哪些LED灯亮。能亮的行从上向下扫描完16行即显示一帧完整的图像。汉字的显示一般采用图形的方式,事先提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字分左右两半,各占16B,左边为1、3、 5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一个字节,

18、光标位置加1,送第二个字节,换行按列对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。32个字节为“北”的显示点阵如图23所示。 图24 主程序流程图这里要求设计一个1616点阵LED汉字显示屏,显示屏各点亮度均匀、充足,显示的文字应稳定、清晰无串扰。主程序流程图如图24所示。 图25 点阵滚动显示效果图按照上文操作,运行后会看见文字“欢迎乘坐邯郸市13路公共汽车,现在开往河北工程大学,请坐稳扶好,注意安全。”的滚动显示。效果如图25所示。1.4 LCD汉字显示在日常生活中,液晶显示模块已作为很多电子产品的通用器件,如在计算器、万用表等很多家用电子产品中都可以看到,这里以汉字显

19、示为例介绍LCD液晶显示的基本原理。液晶显示汉字原理见1.4。AMPIRE12864管脚共18个。CS1为左半屏片选端,CS2为右半屏片选端;VCC接电源,GND接地,连接滑动变阻器的控制端,RS为数据指令选择信号端,H时输入数据,L时输入指令,RW读写选择信号端,H时为读选择信号,L时为写选择信号,E为LCD使能端,DB0DB7为数据传输端口。RST为复位端。Vout和V0类似,都是液晶显示驱动电压端。其引脚图如图26所示。主程序流程图如图27所示图26 AMPIRE12864的引脚图图27 LCD汉字显示主程序流程图按照上文操作后运行可以看见LCD显示屏上依次出现“谢谢老师”四个字。仿真效

20、果如图28所示。图28 LCD汉字显示效果图1.5 演示实验1. 秒表本实验用单片机和数码管组成数字电子秒表。电路主要有控制器AT89C51,计时与显示电路和回零、启动和停表电路等。秒表的流程图如图29所示。按上文所示步骤操作,运行后可以实现时时间的调整、暂停和复位等操作。仿真效果如图30所示。图29秒表的流程图图30 秒表的仿真效果2.万年历现在所使用的万年历,记录一定时间范围内的具体阳历或阴历的日期的年历,方便有需要的人查询使用,实验电路主要有主控制器单片机、显示电路、温度检测电路和闹钟设置电路,如图31所示。运行后会显示日期、时间、温度、并且可以设置闹钟。 图31 万年历的仿真电路3.电

21、子密码锁电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁电子产品。实验以AT89C51芯片为核心,通过编程来实现的。电子密码锁的仿真电路如图32所示。主要有主控制器AT89C51、密码输入电路、报警电路和液晶显示电路图32 电子密码锁的仿真电路图2 结论本文对软件使用做了基本介绍,又配合了很多具体的实例分析,介绍了仿真的单片机教学实验箱达到的预期效果。由于自身学识水平有限,设计中仍有缺陷,需要在以后的学习中对以下方面做出改进。1.秒表的计时不够精确,LCD显示的汉字歪歪扭扭,达不到更好的效果,点阵滚动显示的汉字不够清楚。2.实验只是现实生活中所有运用的

22、基础理论,距离设计的真正实现还有一定的差距。参考文献1 李文超,浦南江,刘洋,李小虎,李晓磊.技术纵横J,2011:72-90.2 李全利.单片机原理及接口技术M.2版.北京:高等教育出版社,2009.3 陈章龙.国内外单片机的现状及未来发展J.维普资讯,1990,6:2-3.4 张志良.单片机原理与控制技术M; 北京,机械工业出版社,20085 于海生.微型计算机控制技术M; 北京,清华大学出版社,1999.3.6 何利民.单片机应用系统设计M; 北京,北京航天航空大学出版社,1990.7 孙育才.MCS-51系列单片机及其应用M;东南大学出版社.8 周坚.单片机应用与接口技术M;机械工业出版社

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1