抢答器的设计(1602显示)

上传人:豆*** 文档编号:128332522 上传时间:2022-08-01 格式:DOC 页数:27 大小:976.50KB
返回 下载 相关 举报
抢答器的设计(1602显示)_第1页
第1页 / 共27页
抢答器的设计(1602显示)_第2页
第2页 / 共27页
抢答器的设计(1602显示)_第3页
第3页 / 共27页
点击查看更多>>
资源描述
前言电子技术和微型计算机的迅速发展,增进微型计算机测量和控制技术的迅速发展和广泛应用,单片机(单片微型计算机)的应用已经渗入到国民经济的各个部门和领域,它起到了越来越重要的作用。单片微型计算机就是将中央解决单元、存储器、定期/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。因此一块芯片就构成了一台计算机。它已成为工业控制领域、智能仪器仪表、尖端武器、平常生活中最广泛使用的计算机。 随着国内经济和文化事业的发展,在诸多公开竞争场合规定有公正的竞争裁决,诸如证券、股票交易及多种智力竞赛等,因此浮现了抢答器。抢答器一般是由诸多电路构成的,线路复杂,可靠性不高,功能也比较简朴,特别是当抢答路数诸多时,实现起来就更为困难。因此我们设计了以单片机为核心的新型智能的抢答器,在保存了原始抢答器的基本功能的同步又增长一系列的实用功能。并简化其电路构造。控制系统的三个模块为:显示模块、存储模块、抢答开关模块。该系统通过开关电路四个按键输入抢答信号,运用1602液晶屏来完毕显示功能,用按键来让选手进行抢答,在液晶屏上显示抢答最快的号码及时间,从而实现整个抢答过程。本文重要简介了单片机抢答器设计及工作原理,以及它的实际用途。系统工作原理本系统采用AT89C52单片机作为核心。工作时,用按键通过开关电路输入各路的抢答信号,经单片机的解决, 输出控制信号,单片机控制的智能抢答器设,计,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。但是,这种电脑,一般是指个人计算机,简称PC机。它由主机、键盘、显示屏等构成。尚有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予多种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简朴运算和控制。由于它体积小,一般都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。目前,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。多种产品一旦用上了单片机,就能起到使产品升级换代的功能,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。目前有些工厂的技术人员或其他业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简朴且极易被仿制。究其因素,也许就卡在产品未使用单片机或其他可编程逻辑器件上。在知识竞赛中,特别是做抢答题时,在抢答过程中,为了更确切的懂得哪一组或哪一位选手先抢答到题,必须要有一种系统来完毕这个任务。若在抢答中,只靠人的视觉(或者是听觉)是很难判断出哪一组(或哪一种选手)先抢答到题的。运用单片机编程来设计抢答器,可以使以上问题得以解决,虽然两组的抢答时间相差几微秒,也能轻松的辨别出哪一组(或哪个选手)先抢答到题的。本文重要简介了抢答器的工作原理及设计,以及它的实际用途。目 录0.摘要31. 四路抢答器的基本理论32.方案设计43. 硬件电路的工作原理54. 软件编程145. 系统调试和成果分析216. 结论及进一步设想24参照文献25附录1 元件清单26课设体会28摘要:抢答器可以在竞赛、文体娱乐活动(抢答活动)中,能精确、公正、直观地判断出抢答成功者。通过抢答者的批示灯、液晶屏显示和声音显示等手段批示出第一抢答者。一般抢答器由单片机以及外围电路构成,分为四路、八路等不同,四路和八路的差别是,抢答器背面的接口有几组,和外形没有关系。通过自主的设计、编程和调试出一种简朴的四路抢答并在液晶屏显示抢答成功者号码;熟悉C语言编程;理解单片机仿真系统的使用措施,达到提高综合运用有关知识的能力;进一步熟悉和掌握Proteus7的使用措施;掌握单片机系统设计所有过程的目的。核心字: 抢答 单片机 液晶屏显示Abstract: responder can be in competition, sports entertainment ( answer activity ), accurate, impartial, visually judged successful answer. The responder indicating lamp, liquid crystal display screen and sound display means is indicative of a first responder. The general answer is controlled by single chip microcomputer and the peripheral circuit, divided into four road, eight road, four road and eight road difference is, responder on the back of the interface has several groups, and the shape of it doesnt matter.Through the independent design, programming and debugging a simple four way contest and in the liquid crystal display screen successful answer number; familiar with C programming language; understand the MCU simulation system the use of methods, to improve the comprehensive use of knowledge related to ability; further familiar with and master the use of Proteus7 method; the master MCU system design whole process objective.Keywords : Vie for answering ,the MCU LCD ,screen display。1. 四路抢答器的基本理论本设计是采用单片机设计的四人比赛用抢答器系统。它具有电路简朴、功能齐全、制作成本低、性价比高等特点,是一种经济、实用的比赛用抢答器。硬件部分重要由单片机AT89c52、74HC573锁存器、1602液晶屏、主持人操作键盘和其他基本外围电子电路构成。2.方案设计抢答器的设计方案要实现如下功能:(1)抢答器同步供4名选手或4个代表队比赛,分别用4个按钮S0 S3表达。(2)设立一种系统清除S1和抢答控制开关S2,该开关由主持人控制。(3)抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在1602液晶屏上显示,同步蜂鸣器发出报警声响提示。选手抢答实行优先锁存,优先抢答选手的编号始终保持到主持人将系统清除为止。(4)抢答器具有定期抢答功能,且一次抢答的时间由主持人设定(如10秒)。当主持人启动开始键后,定期器进行减计时 (5)如果定期时间已到,无人抢答,本次抢答无效,系统严禁抢答,定期显示屏上显示01s。该设计采用AT89C52单片机作为控制系统核心。该系统可以完毕信号辨认,运算控制以及显示功能。抢答器的工作原理是采用单片机最小系统,用查询式键盘进行抢答。通过抢答按键模块,连接按键进行抢答。此电路完毕的功能如图1所示,当主持人宣布抢答开始的时候,按下开始按钮,此时电路进入抢答状态,选手的输入采用了扫描式的输入,之后把相应的信息送往单片机,再由单片机输出到显示输出电路中。此时有人第一按下相应的抢答按钮,通过单片机的控制选择,在液晶屏上显示相应的号码,并锁存,同步严禁其她按钮的输入。系统是采用模块化设计的智能抢答器,主控与参赛者设为终端分系统。主控分系统有:开始与结束控制按钮、时限设定、多种有关显示调控功能等。参赛者分系统设有:抢答按纽、计时显示、提示功能等。图1 抢答器原理图3. 硬件电路的工作原理3.1抢答器的电路图如图(2)所示为电路图,其工作原理为:接通电源后主持人将开关拨到“清零”状态,抢答器处在严禁状态,定期器设定期间,主持人将开关置“开始”,宣布抢答开始时,选手要在规定期间内完毕抢答;定期器倒计时优先判断,编号锁存,扬声器提示。 图2 抢答器仿真电路图若按了清零键后,仿真图为如下所示:硬件电路应能完毕如下功能:参与竞赛者对主持人提出的问题要在最短的时间内作出判断,并按下抢答按键回答问题。当第一种人按下按键后,则在显示屏上显示此竞赛者的号码并进行声音提示,同步电路将其她抢答按键封锁,使其不起作用。若有人在可以抢答之前按键,应当有违规提示。电路应当具有倒计时功能,倒计时时间可以设立并显示,在规定期间内没有人抢答则本题作废。回答完或超时后,由主持人将所有按键恢复,重新开始下一轮。完毕上述功能的电路涉及时间设定开关、声光显示、按键控制以及按键锁存等部分,如图13.6所示。各电路模块的功能如下。 单片机部分:通过读取P3.7P3.3的状态决定倒计时时间;通过读取P1.3P1.0的状态读取按键状况;通过P2.4P2.2控制显示模块以显示按键者的号码和倒计时所剩时间;通过P0.1控制蜂鸣器。 时间设定模块:以拨码开关U3作为倒计时时间的选择信号。若P3.7通过U3接地,倒计时时间为10s;若P3.6通过U3接地,倒计时时间为8s,若P3.5通过U3接地,倒计时时间为6s,若P3.4通过U3接地,倒计时时间为4s。判断时P3.7优先级最高,P3.4优先级最低。 按键模块:KEY1KEY4的信息可以直接传播到P1.3P1.0。单片机一旦检测到有按键按下,立即将P1.4置为低电平,将按键信息锁存,以免后来的按键对其产生影响。KEY1KEY4为抢答按键,KEY5为主持人控制按键。 数码管显示模块:数码管显示模块由一片MAX7219和3个数码管构成。其中U5用来显示按键者的编号,U6、U7在倒计时时显示尚有多长时间,如果有人犯规抢答,U6U7显示“FF”。 蜂鸣器模块:蜂鸣器在主持人发出可以抢答信号、有人按下抢答按键和倒计时时间到等3种状况下发出蜂鸣声。3.2 单片机的最小系统52单片机的最小系统电路图: 图3-1-1 单片机的最小系统图阐明: 复位电路:由电容串联电阻构成,由图并结合电容电压不能突变的性质,可以懂得,当系统一上电,RST脚将会浮现高电平,并且,这个高电平持续的时间由电路的RC值来决定.典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,因此,合适组合RC的取值就可以保证可靠的复位.一般教科书推荐C 取10u,R取8.2K.固然也有其她取法的,原则就要让RC组合可以在RST脚上产生不少于2个机周期的高电平;复位输入高电平有效,当振荡器工作是,RST引脚浮现两个机器周期以上的高电平,使单片机复位。此电路除具有上电复位功能外,若要复位只需按“RST”键,此电源Vcc经电阻分压,在RST端产生一种复位高电平;晶振电路:典型的晶振取11.0592MHz(由于可以精确地得到9600波特率和19200波特率,用于有串口通讯的场合)/12MHz(产生精确的方波便于12分频,以便定期操作); 单片机:一片AT89S51/52或其她51系列兼容单片机; 注意:对于31脚(EA/Vpp),当接高电平时,单片机在复位后从内部ROM的0000H开始执行;当接低电平时,复位后直接从外部ROM的0000H开始执行; 电源部分:接+5伏特的电压。3.3 时钟频率电路的设计单片机必须在时钟的驱动下才干工作.在单片机内部有一种时钟振荡电路,只需要外接一种振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。图3-2 外部振荡源电路一般选用石英晶体振荡器。此电路在加电大概延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率重要由石英晶振的频率拟定。电路中两个电容 C1,C2的作用有两个:一是协助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为30PF。单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表达。如时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12s。3.4复位电路的设计单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图4所示:值得注意的是,在设计当中使用到了硬件复位和软件复位两种功能,由上面的硬件复位后的各状态可知寄存器及存储器的值都恢复到了初始值,而前面的功能简介中提到了倒计时时间的记忆功能,该功能的实现的前提条件就是不能对单片机进行硬件复位,因此设定了软复位功能。软复位事实上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。3.5系统复位使CPU进入初始状态,从0000H地址开始执行程序的过程叫系统复位。从实现系统复位的措施来看,系统复位可分为硬件复位和软件复位。硬件复位必须通过CPU外部的硬件电路给CPU的RESET端加上足够时间的高电位才干实现。上电复位,人工按钮复位和硬件看门狗复位均为硬件复位。硬件复位后,各专用寄存器的状态均被初始化,且对片内通用寄存器的内容没有影响。但是,硬件复位还能自动清除中断激活标志,使中断系统可以正常工作,这样一种事实却容易为不少编码人员所忽视。软件复位就是用一系列指令来模拟硬件复位功能,最后通过转移指令使程序从0000H地址开始执行。对各专用寄存器的复位操作是容易的,也没有必要完全模拟,可根据实际需要去主程序初始化过程中完毕。而对中断激活标志的清除工作常被遗忘,由于它没有明确的位地址可供编程。有的编程人员用00(LJMP 0000H)作为软件陷阱,觉得直接转向0000H地址就完毕了软件复位,就是此类错误的典型代表。软件复位是使用软件陷阱和软件看门狗后必须进行的工作,这时程序出错完全有也许发生在中断子程序中,中断激活标志已置位,它将制止同级中断响应。由于软件看门是高档中断,它将制止说要中断响应,由此可见清除中断激活标志的重要性。在所有的指令中,只有RETI指令可以清除中断激活标志。前文各处提案到的出错解决程序ERR重要完毕这一功能,其她的善后工作交由复位后的系统去完毕。这部分程序如下:POWER DATA 67H ;上电标志寄存单元 ERR: CLR EA ;关中断 MOV DPTR,#ERR1 ;准备返回地址PUSH DPLPUSH DPHRETI ;清除高档中断激活标志ERR1: MOV POWER,#0AAH;重建上电标志 CLR A ;准备复位地址 PUSH ACC ;压入复位地址0000HPUSH ACCRETI ;清除低档中断激活标志,从程序0000H开始执行。这段程序先关中断,以便后续解决能顺利进行,然后用两个RETI指令替代两个LJMP指令,从而清除了两级中断激活标志。有相应软件陷阱捕获来的程序也许没有所有激活两个标志,这也无妨。3.6 数码管显示电路LED显示屏,实现七段数码管的显示三位十六进制数。来进行倒计时,即来限制抢答的时间。其中数码管的显示可以分为两种:静态显示和动态显示。静态显示的段选位和位选位均单独连接,因此占用的I/O接口多,无法扩展多种数码管,在这种采用这种方式,必须要给LED恒定的电压,规定电压始终保持,因此一般在LED和单片机之间加锁存器,这种显示方式亮度高,编程较简朴,构造清晰,管理也较简朴,占用的CPU时间少。 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,此外为每个数码管的公共端COM增长位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接受到相似的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,因此我们只要将需要显示的数码管选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过度时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管事实上各位数码管并非同步点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是同样的,可以节省大量的I/O端口,并且功耗更低。从电路上,按数码管的接法不同又分为共阴和共阳两种。图1-1 是共阴和共阳极数码管的内部电路,它们的发光原理是同样的,只是它们的电源极性不同而已。其数码管的外形如下图所示: 图3-2 数码管的共阴和共阳极接法3.7液晶屏显示电路使用液晶屏显示抢答成功者号码、时间。液晶显示屏(LCD)具有轻薄短小、低耗电量、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,可视面积大,画面效果好,辨别率高,抗干扰能力强的特点。1602LCD的特性+3.3V电压,对比度可调 内含复位电路 提供多种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能 有80字节显示数据存储器DDRAM 内建有192个5X7点阵的字型的字符发生器CGROM 8个可由顾客自定义的5X7的字符发生器CGRAM 1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位构成,每个点阵字符位都可以显示一种字符,每位之间有一种点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正由于如此因此它不能较好地显示图形(用自定义CGRAM,显示效果也不好)。 1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。 目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相似的,因此基于HD44780写的控制程序可以很以便地应用于市面上大部分的字符型液晶。 管脚功能 LCD1602引脚图1602采用原则的16脚接口,其中: 第1脚:VSS为电源地 第2脚:VCC接5V电源正极 第3脚:V0为液晶显示屏对比度调节端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一种10K的电位器调节对比度)。 第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。 第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第6脚:E(或EN)端为使能(enable)端。 第714脚:D0D7为8位双向数据端。 第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。1602LCD特性及应用微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。 操作控制注:有关E=H脉冲开始时初始化E为0,然后置E为1。 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一种字符均有一种固定的代码,例如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。 由于1602辨认的是ASCII码,实验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如A。 如下是1602的16进制ASCII码表地址: 读的时候,先读左边那列,再读上面那行,如:感慨号!的ASCII为0x21,字母B的ASCII为0x42(前面加0x表达十六进制) 指令集1602通过D0D7的8位数据端传播数据和指令。 显示模式设立: (初始化) 0011 1000 0x38 设立162显示,57点阵,8位数据接口; 显示开关及光标设立: (初始化) 0000 1DCB D显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效) 0000 01NS N=1(读或写一种字符后地址指针加1 &光标加1), N=0(读或写一种字符后地址指针减1 &光标减1), S=1 且 N=1 (当写一种字符后,整屏显示左移) s=0 当写一种字符后,整屏显示不移动 数据指针设立: 数据首地址为80H,因此数据地址为80H+地址码(0-27H,40-67H) 其她设立: 01H(显示清屏,数据指针=0,所有显示=0);02H(显示回车,数据指针=0)。按键控制电路键盘是单片机不可缺少的输入设备,是实现人机对话的纽带。键盘按构造形式可以分为非编码键盘和编码键盘,前者用软件措施产生键码,而后者则用硬件措施来产生键码。在单片机中使用的都是非编码键盘,由于非编码键盘构造简朴,成本低廉,非编码键盘的类型诸多,常用的有独立式键盘,行列式键盘等。独立式键盘,键盘接口中使用多少根I/O线,键盘中就有几种按键,键盘接口使用了8根I/O口线,该键盘就有8个按键,这种类型的键盘,其按键比较少,且键盘中各按键的工作互不干扰。因此可以根据实际需要对键盘中的按键灵活的编码。如图3所示。图3 独立式键盘原理图最简朴的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接读取I/O口的状态来获取按键的直接状态编码值,根据这个值直接进行按键辨认,这样形式的键盘构造简朴,按键辨认容易。独立式键盘的缺陷是需要占用比较多的I/O口线,当单片机应用系统键盘中需要的按键比较少或I/O口线比较富余时,可以采用这样类型的键盘。4. 软件编程本设计的抢答器的程序采用的是C程序设计,C语言的明显特点是用二进制来编写程序,程序的各个部分除了必要的信息交流外彼此之间互相独立。这种构造化方式可使程序层次清晰, 便于使用、维护以及调试。C语言是以函数形式提供应顾客的,这些函数可以便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全构造化。虽然C语言也是强类型语言,但它的语法比较灵活,容许程序编写者有较大的自由度。本次设计的主程序中涉及时钟设计程序,定期器中断子程序,数码管显示程序以及按键控制子程序。抢答器主流程图如图4所示:图4 抢答器主程序流程图抢答器定期中断流程图如图5:图5 抢答器定期器中断流程图源程序设计:#include#define uchar unsigned char#define uint unsigned intuchar num;/定义中断变量,num计满20表达1秒时间到uchar num1;/十秒倒计时显示初始值uchar flag1,flag2;/清零键及开始键按下标志位uchar flag3,flag4=0;/定义键盘按下标志位#define LCDPORT P0sbit LCD1602_RS = P20;sbit LCD1602_EN = P21;sbit sp=P22;/定义蜂鸣器端口sbit clear=P10;/定义清零键sbit start=P11;/开始键sbit key1=P12;sbit key2=P13;sbit key3=P14;sbit key4=P15;/key2到key5为选手按键void delay(uint z)/延时函数uint i,j;for(i=z;i0;i-)for(j=110;j0;j-);void WriteCmd_1602(unsigned char cmd)LCD1602_RS = 0;LCDPORT = cmd;delay(1);LCD1602_EN = 1;delay(1);LCD1602_EN = 0;void WriteByte_1602(unsigned char date)LCD1602_RS = 1;LCDPORT = date;delay(1);LCD1602_EN = 1;delay(1);LCD1602_EN = 0;void Init_1602()LCD1602_EN = 0;WriteCmd_1602(0x38);WriteCmd_1602(0x0c); /光标不显示地址 WriteCmd_1602(0x06);WriteCmd_1602(0x01);void beep()/定义蜂鸣器函数sp=0;delay(500);sp=1;/delay(500);void dis(uchar * p)while(*p != 0)WriteByte_1602(*p+);void display_init()WriteCmd_1602(0x80);dis(Serial Number:);WriteCmd_1602(0x80 + 0x40);dis(Surplus Time:);WriteCmd_1602(0x80 + 0x40 + 13);dis(00s);void display_num(uchar a) /选手编号显示函数 WriteCmd_1602(0x80 + 15);WriteByte_1602(a);void clr()/清零函数(主持人按下清零键后数码管显示0) WriteCmd_1602(0x80 + 15);WriteByte_1602(0);void dis10s()/十秒倒计时显示函数uchar shi,ge;shi=num1/10;ge=num1%10;WriteCmd_1602(0x80 + 0x40 + 13);WriteByte_1602(shi + 0x30);WriteCmd_1602(0x80 + 0x40 + 14);WriteByte_1602(ge + 0x30); void player()/选手按键检测函数if(key1=0&flag4=0)delay(10);if(key1=0&flag4=0)display_num(1);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key1);if(key2=0&flag4=0)delay(10);if(key2=0&flag4=0)display_num(2);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key2);if(key3=0&flag4=0)delay(10);if(key3=0&flag4=0)display_num(3);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key3);if(key4=0&flag4=0)delay(10);if(key4=0&flag4=0)display_num(4);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key4);void keyscan()/检测按键if(clear=0&flag2!=1)/判断清零键,判断语句的作用是按下开始键清零键失效delay(10);if(clear=0&flag2!=1)while(!clear);/等待按键释放flag1=0;flag2=0;flag3=0;flag4=0;num=0;num1=10;clr();/清零flag1=1;/按下清零键标志位if(flag1=1)/如果按下清零键if(start=0&flag3=0)/判断开始键,判断语句的作用是按下开始键后开始键失效delay(10);if(start=0&flag3=0)flag2=1;flag3=1;while(!start);if(flag2=1)/按下开始键TR0=1; /启动定期器0dis10s();player();void main()TMOD=0x01;/设立定期器0工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;/开总中断ET0=1; /开定期器0中断Init_1602();display_init();while(1)/始终检测按键keyscan();void T0_ser() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;num+;if(num=20)num=0;num1-;if(num1=0)TR0=0; flag1=0;flag2=0;num=0;num1=10;clr();beep();5. 系统调试和成果分析系统调试涉及硬件调试和软件调试,并且两者是密不可分的。我们设计好的硬件电路和软件程序,只有通过联合调试,才干验证其对的性;软硬件的配人状况以及与否达到设计任务的规定,也只有通过调试,才干发现问题并加以解决、完善,最后开发成实用产品。硬件调试分单元电路调试和联机调试,单元电路实验在硬件电路设计时已经进行,这里的调试只是将其制成印刷电路板后实验电路与否对的,并排除某些加工工艺性错误(如错线、开路、短路等)。这种调试可单独模拟进行,也可通过开发装置由软件配合进行。硬件联机调试则必须在系统软件的配合下进行。软件调试一般涉及分块调试和联机调试两个阶段。程序的分块调试一般在单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一种特殊的程序段,并连同被调程序功能块一起在开发装置上运营;也可配合相应硬件电路单独运营某程序功能块,然后检查与否对的,如果执行成果与预想的不一致,可以通过单步运营或设立断点的措施,查出因素并加以改正,直到运营成果对的为止。这时该 程序功能块已调试完毕,可去掉附加程序段。其他程序功能块可按此法进行调试。程序联机调试就是将已调试好的各程序功能块按总体构造联成一种完整程序,在所研制的硬件电路上运营。从而实验程序整体运营的完整性、对的性和与硬件电路的配合状况。在联调中也许会有某些支路上的程序、功能块因受条件制约而得不到相应的输入参数,这时,调试人员应发明条件进行模拟调试。在联调中如发现硬件问题也应及时修正,直到单片机系统的软件、硬件所有调试成功为止。系统调试完毕后,还要进行一段时间的试运营,从而检查系统的稳定性和抗干扰能力,验证系统功能与否达到设计规定,与否达到预期的效果。具有清零装置和抢答控制,可由主持人操纵。具有定期功能,在10S内无人抢答表达所有参赛选手对本题弃权。10S时仍无人抢答其报警电路工作表达抢答时间耗尽并严禁抢答。电路中的六个按键从上到下分别是清零键、开始键和四组选手的按键。仿真现象及调试成果如图6、图7、图8所示。1)图6为主持人按下清零键后的截图,此时液晶屏两项均显示0.5.1软件调试问题及解决一方面对所用软件及使用措施简介如下:1、Keil是德国开发的一种51单片机开发软件平台,最开始只是一种支持C语言和汇编语言的编译器软件。后来随着开发人员的不断努力以及版本的不断升级,使它已经成为了一种重要的单片机开发平台,但是KEIL的界面并不是非常复杂,操作也不是非常困难,诸多工程师的开发的优秀程序都是在KEIL的平台上编写出来的。可以说它是一种比较重要的软件,熟悉她的人诸多诸多,顾客群极为庞大,要远远超过伟福等厂家软件顾客群,操作有不懂的地方只要找有关的书看看,到有关的单片机技术论坛问问,不久就可以掌握它的基本使用了。2、 总调,即应用软件的链接调试,程序固化,软、硬件结合的应用系统 软硬件联合仿真系统由一种硬件执行环境和一种软件执行环境构成,一般软件环境和硬件环境均有自己的除错和控制界面,Keil与Proteus的整合调试可以实现系统的总调,在该系统中,Keil作为软件调试界面,Proteus作为硬件仿真和调试界面,下面说一下如何在keil中调用proteus进行MCU外围器件的仿真。(1)、安装keil 与 proteus。(2)、把安装proteus MODELS目录下 VDM51.dll文献复制到Keil安装目录的 C51BIN目录中。(3)、修改keil安装目录下 Tools.ini文献,在C51字段加入TDRV5=BINVDM51.DLL (Proteus VSM Monitor-51 Driver),保存。(注意:不一定要用TDRV5,根据本来字段选用一种不反复的数值就可以了。引号内的名字随意)3、打开proteus,画出相应电路,在proteus的debug菜单中选中use remote debug monitor4、在keil中编写C语言程序5、进入KEIL的project菜单option for target 工程名。在DEBUG选项中右栏上部的下拉菜单选中 Proteus VSM Monitor-51 Driver。6、在keil中进行debug吧,同步在proteus中查看直观的成果(如LCD显示)这样就可以像使用仿真器同样调。问题:有时候在自己创立的元器件的管脚上无法实现连线。回答:应当是管脚的间距太小了。由于在ISIS中,每个元器件的管脚都要占据一块区域(就像自己的保护区同样,不容别人随意侵犯),该区域会排斥外部的走线。解决问题的措施是在走线的同步按住 “CTRL”键,直到走线绕过狭窄的保护区。固然最主线的措施是重新编辑元器件,把其管脚间距调大某些。主持人按键来控制总开关,主持人按下开关那么选手开始抢答,此时数码管开始060计数,并且选手们必须在规定的时间内进行抢答,若过了60秒还没抢答那么抢答失效,选手们若有一种在规定的时间内抢答成功则其他的选手不可以再抢答,即该选手抢答成功。图62)主持人按下启动键后的截图,液晶屏显示从10秒开始倒计时。如图7:图73)选手按下时的截图,显示相应的选手编号,例如2号选手,如图8所示:图86. 结论及进一步设想本设计可以实现四路抢答并在液晶屏显示抢答成功者号码及时间,可用于娱乐节目等活动当中。但是这只是个简易的四路抢答器,还可以加入蜂鸣,报警等功能,更可实现多路抢答的功能。我们懂得,声音的频谱范畴约在几十到几千赫兹,若能运用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再运用延时程序控制“高”“低”电平的持续时间,就能变化输出频率,从而变化音调,使喇叭发出不同的声音。参照文献1 李光飞.单片机课程设计实例指引M.北京:北京航天航空大学出版社,2 李朝青.单片机原理及接口技术(第3版)M.北京:北京航空航天大学出版社,3 胡伟.单片机C程序设计及应用实例M.北京:人民邮电出版社,4 冯育长.单片机系统设计与实例指引M.北京:西安电子科技大学出版社,5 高伟.AT89单片机原理及应用M.北京:国防工业出版社,6 何利民.单片机应用系统设计M.北京:北京航空航天大学出版社,19917 李朝青主编.单片机原理与接口技术M.北京:北京航空航天大学出版,19948 黄正谨.综合电子设计与实践M.东南大学出版社,-39 李华.MCS-51系列单片机实用接口技术M.北京:北京航空航天大学出版,199310 Control Circuit Design of AC Frequency Conversion Systems for Speed GoverningA.Proceedings of 4th International Symposium on Test and Measurement(Volume 2)C,11 The measurement of oil consumption on engineA.Proceedings of 4th International Symposium on Test and Measurement(Volume 2)C,12 胡汉才.单片机原理与接口技术M.北京:清华大学出版社,199813蔡朝阳.单片机控制实习与专项制作M.北京:北京航空航天大学出版社,14丁建伟.抢答器电路设计J.兰州工业高等专科学校学报,(04)15胡学海.单片机原理及应用系统设计M.北京:北京电子工业出版社,16魏小龙.MSP430系列单片机接口技术及系统设计实例M.北京:北京航空航天大学出版社,附录1 元件清单元件名称型号数量单片机AT89C521锁存器74HC5731开 关Button7电 阻R(1k)1电 阻R(10k)1晶 振CRYSTAL1电 容10uf2液晶屏16021电 源5v2 课设体会 本次课程设计历时三周,在这三周的时间中,我广泛的查找资料,在图书馆借阅单片机书籍,也在网上观看了郭天祥教师的十天学会单片机的授课视频。初期,根据所学的和查到的资料,可以做出实现四路抢答的部分,但因对液晶屏1602不甚理解, 进度有些缓慢。我们的指引教师蒋教师仔细、耐心的给我简介了某些1602的基本知识,并指引我怎么进行下一步的课程设计。我又仔细的钻研几天,终于实现了液晶屏显示部分。在这里,我要对我的指引教师蒋丽英教师说声谢谢,谢谢您百忙之中能予以指点,让我顺利完毕这次课程设计。这次课程设计让我对学习也有了更深刻的结识,只有打下良好的基本才会学以致用,才会发挥出作用。完毕这次课程设计,让我深刻的结识是单片机对于我们专业的重要性,我对单片机的学习还是不够精通,有了这次课程设计的体会,我一定会运用课余时间更深的理解单片机知识 。结识来源于实践,实践是结识的动力和最后目的,实践是检查真理的唯一原则,因此这个课程设计对我们的作用是非常大的。通过三个星期课程设计制作,过程曲折可谓一语难尽,在此期间我们也失落过,也曾一度热情高涨。从开始时满富盛激情到最后汗水背后的复杂心情,点点滴滴无不令我回味无长。没有通过实践永远都不会懂得成果是如何的,当实践的成果证明了你要得到的结论时那种心情真是不知如何体现。我也非常的坚信只要付出了一定会有收获,并且这个过程是很美的享有!汗水预示着成果也见证着收获。通过本次课程设计,我真正感受到了那种快乐和喜悦!并且懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才干真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!