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

开通VIP
 

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

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(学位论文-—简易多彩广告灯控制设计.doc)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

学位论文-—简易多彩广告灯控制设计.doc

1、信息与电气工程学院 课程设计说明书 (2012 /2013学年第 二 学期) 课程名称 : 单片机原理及接口技术 题 目 : 简易多彩广告灯控制设计 专业班级 : 自动化10-03 学生姓名 : 学 号: 1004103 指导教师 : 苗敬利、杨怡君等 设计周数 : 2周 设计成绩 :

2、 2013年 6 月 26 日 目 录 1、 课程设计目的 1.1原始数据及主要任务…………………………………………………………………2 1.2技术要求………………………………………………………………………………2 2、课程设计正文 2.1 硬件设计………………………………………………………………………………2 2.1.1确定硬件电路总体设计方案……………………………………………………2 2.1.2单元电路设计……………………………………………………………………3 2.1.2.1时钟电路………

3、……………………………………………………………3 2.1.2.2复位电路……………………………………………………………………3 2.1.2.3键盘输入电路………………………………………………………………4 2.1.2.4数字显示电路………………………………………………………………5 2.1.2.5广告灯电路…………………………………………………………………5 2.1.2.6总电路图……………………………………………………………………6 2.1.3 系统调试…………………………………………………………………………7 2.2 软件设计…………………………………………………………………

4、……………7 2.2.1系统分析…………………………………………………………………………7 2.2.2 系统设计…………………………………………………………………………8 2.2.2.1 按键确认程序………………………………………………………………8 2.2.2.2 数码管显示程序……………………………………………………………8 2.2.2.3延时程序……………………………………………………………………8 2.2.2.4.四种广告灯控制程序………………………………………………………8 2.2.3系统实施…………………………………………………………………………9 3、 课程设计

5、总结……………………………………………………………………………17 4、 参考文献…………………………………………………………………………………18 1、课程设计目的 1.1 原始数据及主要任务 设计并制作出一个以单片机为核心的彩灯闪烁控制系统:(1)确定总体设计方案(2)、设计键盘输入电路(3)、设计显示电路(4)、合理分配地址,编写系统程序(5)、利用Protel设计硬件电路原理图和PCB图(6)、软硬件联机调试 1.2 技术要求 设计一个以MCS-51单片机为核心的简易多彩广告灯闪烁控制系统,2位数码管显示闪烁控制方案,分别显示01、02、03、和10号方案,初

6、始化为00,彩灯灭;2个控制按键,一个加一数字键,一个确定键,循环10个花型的方案。方案01为左循环亮一秒闪烁;方案02为右循环亮一秒闪烁;方案03为“100000000、11000000…11111111”递增间隔1秒闪烁;方案10为“01010101,10101010”间隔一秒闪烁;其余方案灯灭。 2、 课程设计正文 2.1硬件设计 2.1.1确定硬件电路总体设计方案 根据设计要求,首先确定硬件的主要组成部分,主要包括了单片机最小系统中的时钟电路、复位电路和本课设需要的按键控制电路、LED灯显示电路、广告灯方案显示电路,最后由5V直流电源对各部分电路提供电源。总的设计框图如图1。

7、 AT89C51 时钟电路 复位电路 直流5V供电电路 按键控制电路 LED灯显示电路 方案显示电路 图1 硬件设计总框图 2.1.2单元电路设计 2.1.2.1时钟电路 时钟电路提供的时钟信号是单片机工作时必须的控制信号,只有正确的提供了时钟信号,单片机才能严格按照时序执行指令进行工作。时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种事外部时钟方式。本课设采用的是内部时钟方式。 内

8、部是中方式的时钟电路由一个6MHz的晶振和两个30pF的电容组成,时钟电路的电路图如图2。 图2 时钟电路 2.1.2.2复位电路 复位是单片机的初始化操作,除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态,为摆脱死锁状态,也需要复位按键使RST引脚为高电平使单片机复位。 本课设采用51单片机典型手动复位电路,电路由一个200Ω的电阻、一个1KΩ的电阻和一个22uF的极性电容组成。当按下复位键后复位口RST变为高电平,经过两个机器周期单片机复位,单片机从地址为0000H处重新执

9、行程序。复位电路的电路图如图3。 图3 复位电路 2.1.2.3键盘输入电路 本课设的键盘输入电路由一个加一键和一个确定键组成,每个按键都接一个1KΩ的上拉电阻。 加一键控制方案类型,并通过显示电路的显示,共有10种方案类型,其中第01、02、03、10号方案对应有相应的广告灯显示方案,其余为广告灯全灭。确定键确定方案让广告灯开始闪亮。键盘输入电路如图4. 图4 键盘输入电路 2.1.2.4数字显示电路 数字显示电路主要

10、有两个共阳极数码管组成,采用静态显示方案,将共阳极数码管的段码由P0、P2口输出,驱动数码管显示。每条支路加一个200Ω的限流电阻。 显示电路复位后显示00,当不断按下加一键是,数码管分别显示01、02、03、04、05、06、07、08、09、10,分别对应十种相应的显示方案。显示电路电路图如图5. 图5 数字显示电路 2.1.2.5广告灯电路 广告灯电路为本课设主要控制的电路,由八个发光二极管组成,每个发光二极管接一个200Ω的限流电阻。广告灯电路如图6. 当确定键按下后,广告灯即开始按照数码管显示的数字显示不同

11、的闪亮方案,其中方案01为左循环亮一秒闪烁;方案02为右循环亮一秒闪烁;方案03为“100000000、11000000…11111111”递增间隔1秒闪烁;方案10为“01010101,10101010”间隔一秒闪烁;其余方案灯灭。 图6 广告灯电路 2.1.2.6总电路图 总电路如图7. 图7 总电路图 2.1.3 系统调试 首先在proteus中画好电路图,加载程序查看仿真效果。对不满足要求的地方,首先检察设计思路是否正确,在设计思路正确的前提下针对错误的类型检察硬件的选择和对应软

12、件的设计是否正确,发现错误后首先考虑是否可以通过改变软件来实现,软件不能实现的再考虑改变硬件电路实现。 本课设在仿真调试中遇到的难点主要是对加一键的确定,由于在方案运行时要求加一键仍然有效,而每种方案中的延时程序与按键的延时去抖程序相互交错,给确定加一键的一次有效按下带来了很大的困难,经常出现按时间短了没有效果,按时间长了又会确认两次的情况。最后几经修改才打到了要求的效果,当上一种方案正在运行时,按下加一键不要松开,等广告灯全灭后再松开,可使加一键每次都成功确认一次。 在硬件实物做好后,加载程序调试,对与仿真情况不符的电路检察焊接情况和硬件的好坏。最后对操作的流畅性进行完善,使硬件电路易于

13、操作,不会出现错误判断。 在硬件调试时,本课设遇到的困难主要是由于查阅资料时的疏漏我们把数码管的c脚和e脚接反了,导致数字无法正常输出。由于硬件电路已经完成,要改动是比较复杂的。后来在研究是发现,所谓的数码管段码其实是人为规定的,变动硬件中的c脚和e脚与变动程序中的c、e两脚对应的电平是一样,所以我将书中的共阳极数码管段码“根据”我们电路进行了修改,换了c、e对应的电平。重新编译加载后,果然显示正常了,从而避免了对硬件的修改。 2.2软件设计 2.2.1系统分析 本课设的程序主要分为按键确认、延时、数码管显示和四种广告灯控制几部分。 按键确认采用典型的延时去抖法,是按键每次按下都只被

14、有效确认一次。延时程序主要用于去抖和广告灯闪亮间隔的控制,数码管显示则是给相应的P口赋值段码。四种广告灯控制用于控制8个发光二极管的闪亮顺序和个数。程序设计的总框图如图8. 开始 判断有无加一键按下 调用显示方案 调用LED显示方案 判断有无确定键按下 图8 程序设计总框图 2.2.2 系统设计 2.2.2.1 按键确认程序 通过void key_detect()子函数采集相应的P口的电平判断按键是否按下,程序见系统实施中的源程序。 2.2.2.2 数码管显示程序 通过v

15、oid display(void)子函数来显示相应的方案数,程序见系统实施中的源程序。 2.2.2.3延时程序 通过void delay(unsigned int )子函数来完成延时功能,程序见系统实施中的源程序。 2.2.2.4.四种广告灯控制程序 通过分别调用void right_loop()、void left_loop()、void other_program()、void ji_ou()四种子函数来显示相应的闪烁方案,程序见系统实施中的源程序。 2.2.3系统实施 本课设所用源程序如下: #include #include u

16、nsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; unsigned int flag = 0; void key_detect(void); void display(void); void delay(unsigned int ); void right_loop(); void left_loop(); void other_program(); void increase(); void ji_ou(); sbit k1=P0^0; //加一键 sbit

17、 k2=P0^1; //确定键 void main() { while(1) { key_detect(); if(flag==11) { flag=0; } display(); } } /**************************************** 函数功能:实现任务一: 流水灯左循环亮1秒闪烁 ****************************************/ void left_loop() { unsigned char temp; temp=0x

18、7f; while(1) { temp=_crol_(temp,1); delay(100); P1=temp; delay(100); P1=0xff; if(k1==0) { P1=0xff; //灯全灭 delay(20); if(k1==0) { P1=0xff; flag++; delay(10); } while(!k1); //检测是否松开按键r delay(20); while(!k1); break;

19、 } } } /**************************************** 函数功能:实现任务二: 流水灯右循环亮1秒闪烁 ****************************************/ void right_loop() { unsigned char temp; temp=0xfe; while(1) { temp=_cror_(temp,1); delay(100); P1=temp; delay(100); P1=0xff;

20、if(k1==0) { delay(20); if(k1==0) { P1=0xff; flag++; delay(10); } while(!k1); //检测是否松开按键r delay(20); while(!k1); break; } } } /****************************************** 函数功能:所有灯灭 ******************************************/ voi

21、d other_program() { P1=0xff; delay(10); if(k1==0) { delay(10); if(k1==0) { P1=0xff; flag++; delay(10); } while(!k1); //检测是否松开按键r delay(20); while(!k1); } } /******************************************* 函数功能:实现任务三: 递增间隔1秒闪烁 ***********

22、/ void increase() { unsigned int i = 0; unsigned char a[]={0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00}; while(1){ if(i>8){ i=0; } P1=a[i]; delay(100); P1=0xff; delay(100); i++; if(k1==0) { delay(10); if(k1==0)

23、{ P1=0xff; flag++; delay(10); } while(!k1); //检测是否松开按键r delay(20); while(!k1); break; } } } /******************************************** 函数功能:实现任务十: 实现奇偶间隔1秒闪烁 ********************************************/ void ji_ou() { unsigned char

24、 a[]={0x55,0xaa}; unsigned int i = 0; while(1){ if(i>1){ i=0; } P1=a[i]; delay(100); P1=0xff; delay(100); i++; if(k1==0) { delay(10); if(k1==0) { P1=0xff; flag++; delay(10); } while(!k1); //检测是否松开按键 delay(20); while(

25、k1); break; } } } /**************************************************** 函数功能:数码管上的显示 ****************************************************/ void display(void) //显示函数 { unsigned int shi,ge; shi=flag/10;//取十位 ge=flag%10; //取个位 P2=table[shi]; //送十位数

26、 delay(1); P3=table[ge]; //送个位数 delay(1); } /*********************************************************************************************************************** 函数功能:按键检测 *********************************************************************************************************

27、/ void key_detect() { if(k1==0) { delay(10); if(k1==0) { flag++; } while(!k1); //检测是否松开按键r } else if(k2==0) { delay(10); if(k2==0) { switch(flag) { case 1:left_loop(); break; case 2:right_loop();break;

28、 case 3:increase();break; case 10:ji_ou();break; default:other_program(); } } while(!k2); //检测是否松开按键r } } /********************************************* 函数功能:延时 入口参数:z *********************************************/ void delay(unsigned int z) { unsigned int

29、 x,y; for(x=z;x>0;x--) for(y=619;y>0;y--); } 3、课程设计总结 经过了两周的忙碌,课程设计圆满结束了,我在本次课程设计中主要负责程序的编写和调试。刚开始看到课设要求时,感到完全无法下手,不知道该怎么把平时所学的每个元件的知识与要求联系起来,后来经过和其他组员商量,决定先画出程序流程图,再从流程图入手逐步找的每个环对应的元件。 本课设所用程序为C语言,主要利用对加一按键的判断对标志变量flag进行从1到10轮赋值,其中对按键的判断中用到了典型的延时去抖程序。利用得到的flag值确定数码管的段码,将段码直接赋给P口,控制数码管的

30、显示。然后再判断确定键按下后利用switch开关语句对flag进行判断,调用对应的广告灯子程序,控制P口的电平变化,来实现广告流水灯的控制。在程序调试过程中,深切体会到了细节决定成败这句话的正确性,平时再使用产品时总觉得道理很简单,觉得按一下按键就是让某个电路接通,可真正自己设计时才发现用程序去确定一次按键是要考虑很多因素的,就连断开的一瞬间也得考虑到,利用这个电平变化来控制程序走向。每一点疏漏都会使目标无法完成,幸好有可以利用proteus进行仿真,可以最大程度上减少对硬件的修改。 在最后的调试中我还体会到了了解元器件原理的重要性,由于查阅资料时的疏漏我们把数码管的c脚和e脚接反了,导致数

31、字无法正常输出。由于硬件电路已经完成,要改动是比较复杂的。后来在研究是发现,所谓的数码管段码其实是人为规定的,变动硬件中的c脚和e脚与变动程序中的c、e两脚对应的电平是一样,所以我将书中的共阳极段码“根据”我们电路进行了修改,换了c、e对应的电平。重新编译加载后,果然显示正常了,从而避免了对硬件的修改。 通过本次课程设计,我对单片机的工作原理及编程方法有了更深的了解,对与之配套的硬件电路也有了全新的认识。 4、参考文献 [1] 李朝青.单片机原理及接口技术(简明修订版).杭州:北京航空航天大学出版社,1998 [2] 李广弟.单片机基础[M].北京:北京航空航天大学出版社,1994

32、 [3] 阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989 [4]  何立民.单片机应用技术大全.北京:北京航空航天大学出版社, 1994 [5]  张毅刚. 单片机原理及接口技术.哈尔滨:哈尔滨工业大学出版社,1990 [6]  谭浩强.单片机课程设计. 北京:清华大学出版社,1989 [7]  张义,陈敌北.例说8051.人民邮电出版社 [8]  肖婧.单片机入门与趣味实验设计.北京:北京航空航天大学出版社,2008 [9]  胡汉才. 单片机原理及其接口技术.北京:清华大学出版社,2002 课程设计 评 语 课程设计 成 绩 指导教师 (签字) 年 月 日 19/20

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服