急需单片机仿真一份,要源代码和仿真电路算法 源代码,什么蜂鸣器啊,什么按键了,什么的都可以,但是是16的

君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
ATmega128单片机仿真系统设计及实现
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口单片机仿真资料.doc -max上传文档投稿赚钱-文档C2C交易模式-100%分成比例文档分享网
单片机仿真资料.doc
文档名称:单片机仿真资料.doc
格式:doc&&&大小:0.49MB&&&总页数:19
可免费阅读页数:19页
下载源文档需要:35元人民币
预览与实际下载的一致,文档内容不会超过预览的范围,下载前请务必先预览,自行甄别内容是否完整、是否存在文不对题等情况(本网站为文档分享平台性质),一旦付费下载,本站不支持退款
我已知晓:实际下载内容以预览为准!
文档介绍:本科生课程论文(设计)比赛记分牌设计专业  电气工程及其自动化班级 电气四班学生姓名 陈昌伟、高灏明、铁守龙赵世玉、石兴邓、涂恒林联系方式014年06月目录1.1课程设计任务书21.2第七组课程设计分工表31.3课题分析41.3.1设计的目的和意义41.3.2Proteus软件51.4硬件设计分析61.4.1总体方案设计61.4.2单片机的选型61.4.3单片机的时钟电路71.4.4单片机的复位电路71.4.5单片机的晶振电路81.4.6单片机的按键电路91.4.7蜂鸣器的驱动电路91.4.8数码管特性及使用91.4.9系统总体电路101.5软件设计分析111.5.1软件系统总体设计方案111.5.2软件系统加1,减1流程图111.5.3数据传送指令121.5.4算术指令121.5.5逻辑指令131.5.6控制转移类指令131.5.7位变量指令131.6仿真分析141.6.1仿真调试141.6.2仿真结果141.7总结151.8附录16参考文献181.1课程设计任务书学生姓名:陈昌伟、高灏明、铁守龙、赵世玉、石兴邓、涂恒林专业班级:电气工程及其自动化四班指导教师:李娜工作单位:电气工程及其自动化题目:比赛记分牌设计一、设计要求:1.启动时显示为0分,计分范围为0~100分。主要功能模块比赛记分牌系统主要功能模块包括根据具体情况选择合适型号的单片机,等硬件设备进行设计。10撰写课程设计论文及提交指导教师签名:年月日1.2第七组课程设计分工表组号姓名学号选题(题目)分数第七组陈昌伟(组长)显示模块;硬件电路与汇编的整合与调试;proteus软件的学习;word电子档的整理;程序的编写高灏明铁守龙赵世玉复位电路的学习石兴邓涂恒林数码管的学习1.3课题分析本设计是根据我们所学习的单片机课程,按照大纲要求对我们进行的一次课程检验,是进行单片1.仿真的概念
  仿真的概念其实使用非常广,最终的含义就是使用可控的手段来模仿真实的情况。
  在嵌入式系统的设计中,仿真应用的范围主要集中在对程序的仿真上。例如,在单片机的开发过程中,程序的设计是最为重要的但也是难度最大的。一种最简单和原始的开发流程是:编写程序-烧写芯片-验证功能,这种方法对于简单的小系统是可以对付的,但在大系统中使用这种方法则是完全不可能的。
  2.仿真的种类
  软件仿真:这种方法主要是使用计算机软件来模拟运行实际的单片机运行,因此仿真与硬件无关的系统具有一定的优点。用户不需要搭建硬件电路就可以对程序进行验证,特别适合于偏重算法的程序。软件仿真的缺点是无法完全仿真与硬件相关的部分,因此最终还要通过硬件仿真来完成最终的设计。
  硬件仿真:使用附加的硬件来替代用户系统的单片机并完成单片机全部或大部分的功能,使用了附加硬件后用户就可以对程序的运行进行控制,例如单步,全速,查看资源,断点等。硬件仿真是开发过程中所必须的。
  3.为什么要使用仿真器?
  在与一些有经验的工程师交谈中,我们会发现有相当一部分工程师在开发中不使用或很少仿真器。向他们询问原因,得到的回答是&仿真器不可靠&。但是他们是如何解决程序开发中遇到的问题呢?通过深入的交流才明他们是照这样的方法来开发程序的:
  (1) 根据自己的设计建立一个符合要求的硬件平台,如果该平台涉及的程序比较复杂,还要搭建一个人机交流的通道。人机交流通道可能是一个简单的发光二极管,蜂鸣器,复杂的可能是串口通讯口,LCD显示屏。
  (2) 写一个最简单的程序,例如只是将发光二极管连续的闪烁。程序编译后烧写到单片机芯片中,验证硬件平台是否工作正常。
  (3) 硬件平台正常工作后编写系统最低层的驱动程序,每次程序更改后都重新烧写单片机芯片验证。如果在程序验证中遇到问题,则可能在程序中加入一些调试手段,例如通过串口发送一些信息到PC 端的超级终端上,用于了解程序的运行情况。
  (4) 系统低层驱动程序完成后再编写用户框架程序,由于这部分已经不涉及到硬件部分,所以程序中的问题用户一般能够发现。
  但是更多的调查表明,使用以上方法的工程师总的看来所设计的程序不是很庞大或很复杂。因为在做简单的项目时,我们可以通过一个发光二极管就可以表达出内部的信息;如果程序复杂,可能需要更多的信息来表示内部的状态,这样可能就需要串口协助调试;如果程序更复杂,硬件更多,实时性更强,那工程师就要更多的增强调试手段,串口可能就不能满足了,需要类似于断点的功能,因为我想知道在某一个时刻单片机内部的状态究竟是怎样?
  如果用户程序的修改非常频繁,可能一次又一次地的烧写芯片占用的时间就很多,这时用户就会想能下载程序并运行的装置。到这里,您会看到,随着用户要求的越来越高,调试装置已经越来越象一个通用的仿真器了。因此我们的建议是:不要回避使用仿真器,因为使用仿真器能提高您的开发速度。
  但是不能否认的是,用户回避使用仿真器也是有原因的。因为仿真器也是一种电子装置,非常依赖于设计者的水平。如果一个仿真器设计者的水平有欠缺,那将给仿真器的使用者带来很大的问题,因为仿真器的使用者将分不清楚究竟是程序的问题还是出在那里。随着电子设备的复杂化,设计工程师面临前所未有的压力。您可以想象,用户发现了程序中有一个问题,首先怀疑是自己系统中的问题,可能是软件方面也可能是硬件方面。因为用户系统处于开发阶段,用户基本上不会怀疑仿真器。在这种情况下,用户将耗费很大的精力在自己的系统中寻找并不存在的问题。如果用户最终发现问题来源于仿真器,并通过烧写芯片验证确实如此,那这个仿真器用户以后可能会逐渐放弃使用仿真器。
  用户放弃使用仿真器,对用户的影响是巨大的。因为放弃使用一个设计不完善的仿真器,也放弃了 使用其它设计完善的仿真器,关键是放弃了合理的开发方法。因此我们的建议是:不要回避使用仿真器,但要挑选好的仿真器。
  4.仿真器的附加服务更加重要
  在购买仿真器的同时,还要注意仿真器厂家的服务,这一点很关键。这里说的服务包含仿真器本身的服务,例如仿真器使用上的指导服务,仿真器的维修服务。这些都是一个产品的最基本的服务,对于仿真器这种特殊产品来将还不是全部的服务。
  使用仿真器来开发产品,会遇到很多问题:产品本身的问题,仿真器的问题,仿真器和用户系统的问题。如果用户开发经验不是很丰富,他并不能排除遇到的问题究竟来源于哪个方面。这时,他可能求助于仿真器生产厂商。如果仿真器的生产厂商只专注于仿真器的设计,而对于其它的单片机应用不熟悉,他可能对用户提出的问题不能作出正确的判断而一味的强调自己的仿真器没有问题。与之相反,一个既熟悉仿真器的使用,又有丰富开发经验的仿真器支持厂商则能协助用户快速的找出问题,实践证明这两种情况带来的效果是完全不一样的。因此我们的建议是:挑选好的仿真器,更要挑选好的技术支持。
EEWORLD 官方微信
Powered by简介学习过51单片机的朋友,相信大家对蜂鸣器并不陌生。蜂鸣器分有源蜂鸣器和无源蜂鸣器两种,无源蜂鸣器可以通过代码来设置频率。在学习的过程中,我们大都需要做蜂鸣器发声的实验,这里呢,我将和大家分享,基于Keil和Proteus仿真,如何使用无源蜂鸣器演奏乐曲——《敢问路在何方》。希望能和大家多多交流,如有什么不当之处,还望指正。工具/原料Keil和Proteus软件《敢问路在何方》乐谱第一步:在Proteus中搭建硬件仿真电路放置单片机芯片(这里我选择的是AT89C52)。在上一讲《【Keil+Proteus仿真】51单片机实现心形流水灯》中我们已经详细讲过,感兴趣的话,大家可以在百度搜索它的标题,然后就可以看到。首先在搜索框中以关键字来搜索,然后再搜索结果中找到并选中“AT89C52”,接着单击“OK”按钮,最后回到绘图界面中单击左键即可放置单片机。具体操作如下图所示:放置蜂鸣器。同样,先在搜索框中输入“sounder”来搜素蜂鸣器,再在搜索结果中选择SOUNDER,最后放置在绘图区内合适的地方,具体情况如下图所示:连接线路,将蜂鸣器正确地和单片机连接起来。这里我们使用的是P1口的5管脚,具体情况如下图所示:第二步:在Keil中编写实现程序,采用自顶向下设计【说明】:在整个项目工程中,我们采用自顶向下的设计方法,先写PlayMusic()函数,然后再在PlayMusic()函数中调用Buzzer(Tone_Beat[tone],Tone_Beat[beat])函数来使蜂鸣器发出不同频率的声调,再加上延时时间的控制,自然形成节拍,有了音调和节拍,自然就可以演奏乐曲了。这里我们使用定时器中断0来控制节拍,音调则由我们自己编写的延时函数来控制,通过延时来实现发出不同频率的音调。建立工程。其中Buzzer_Music.c文件用于存放关于蜂鸣器的各个功能的子函数,,最后主函数直接调用Buzzer_Music.c源文件中的子函数即可。具体操作如下图所示:在Buzzer_Music.c文件中编写PlayMusic()函数,以便主函数调用。具体情况如图:在Buzzer_Music.c文件中编写Buzzer(int Tone,int Beat)函数,以便PlayMusic()函数调用。具体情况如图:在主函数中编写中断函数,每1ms产生一次中断,用来控制节拍。编写完中断函数后,还要在Buzzer_Music.c文件中编写定时器初始化函数Timer0_Init(),在这里我们采用定时器0中断,具体情况如图:第三步:下载乐谱,根据乐谱编写相关频率和节拍下载电视剧《西游记》主题曲《敢问路在何方》的乐谱。可以在百度文库中下载的到。乐谱如下图:根据乐谱在Buzzer_Music.h头文件中编写关于音调和节拍定义的宏,以便后面使用代码编写乐谱,让程序更加直观。具体情况如下图:根据乐谱在Buzzer_Music.c源文件中用代码编写乐谱(本质上是一个存放着音调和节拍的一维数组)。具体情况如下图:第四步:将Keil编译后生成的hex文件下载到单片机中关于如何将Keil编译后生成的hex文件下载到Proteus中的单片机中,在上一讲的《【Keil+Proteus仿真】51单片机实现心形流水灯》中我们已经详细讲述,这里就不需要再赘述了。感兴趣的话,大家可以在百度中搜索“【Keil+Proteus仿真】51单片机实现心形流水灯”,即可在百度经验中看到。具体情况如下图:运行仿真电路,观察效果。具体情况如下图:尾声:基于Keil和Proteus仿真,如何使用无源蜂鸣器演奏乐曲——《敢问路在何方》,这里已经介绍完了。如果大家觉得还不错的话,记得给好评哦!
51单片机仿真—蜂鸣器演奏乐曲《敢问路在何方》,学习过51单片机的朋友,相信大家对蜂鸣器并不陌生。蜂鸣器分有源蜂鸣器和无源蜂鸣器两种,无源蜂鸣器可以通过代码来设置......
关于这个实验,我们在之前的一篇经验——《51单片机仿真—蜂鸣器演奏乐曲《敢问路在何方》》中已经介绍过了,感兴趣的话,大家可以在百度或者中输入“51单片机......
■ 24小时热门信息
■ 相关热门内容
■ 热门推荐

我要回帖

更多关于 单片机抢答器仿真电路 的文章

 

随机推荐