河北工程大学单片机课设99秒码表_第1页
河北工程大学单片机课设99秒码表_第2页
河北工程大学单片机课设99秒码表_第3页
河北工程大学单片机课设99秒码表_第4页
河北工程大学单片机课设99秒码表_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息与电气工程学院课程设计说明书(2011/2012学年第 二 学期)课程名称:单片机应用课程设题 目:99秒码表专业班级:学生姓名:学 号:指导教师:设计周数:两周设计成绩:2012年6月21日一、课程设计目的1.1 概述单片机原理及应用课程设计是学生综合运用所学知识,全面掌握单片微型计算机及其接口的工作原理、编程和使用方法的重要实践环节。通过独立或协作提出并论证设计方案,进行软、硬件调试,最后获得正确的运行结果,可以加深和巩固对理论教学和实验教学内 容的掌握,进一步建立计算机应用系统整体概念,初步掌握单片机软、硬件开发方法,为 以后进行实际单片机软、硬件应用开发奠定良好的基础。课程设计的主

2、要内容:根据单片机原理及应用课程的要求,主要进行两个方面的设计,即单片机最小系统和接口技术应用设计。其中,单片机最小系统主要要求学生熟悉单片机的内部结构和引脚功能、引脚的使用、复位电路、时钟电路、4个并行接口和一个串行接口的实际应用,从而可构成最小应用系统,并编程进行简单使用。接口技术应用设计主要要求学生能综合运用单片机、存储器、常用接口芯片构成单片机应用系统,有针对性地进行软、硬件设计与开发。1.2 设计要求设计并制作出一个以单片机为核心的计时控制系统:设计方案;设计键盘输入电路;设计显示电路;合理分配地址,编写系统程序;用 protel设计硬件电路原理 图和pcb图;软硬件联机调试(1)开

3、始时,显示“ 00”,第1次按下按键后开始计时。(2)第2次按下按键后,计时停止。(3)第3次按下按键后,计时归零。(4)程序循环。二、设计正文2.1 整体设计采用单片机的to定时器,使其工作在方式 1,产生一个100ms定时中断,循环10次, 到1s时,秒加1;到99秒时清零,循环显示。显示数码管由于使用的数码管只有两个, i/o 口足够用,故采用静态显示。(1)在“单片机系统”区域中,把单片机的p0.0 - p0.7端口连接到一个数码管的ah端口上;要求: p0.0对应着a, p0.1对应着b,p0.7对应着ho(2)在“单片机系统”区域中,把单片机的p2.0 p2.7端口连接到数码管驱动

4、芯片741s245的a0 a7端口,741s245的b0 b7端口分别接另一个数码中的ah端口上;要求:p0.0对应着a, p0.1对应着b,p0.7对应着ho(3)按键设计:单片机的p1.7管脚通过按键开关接地,不按下开关时 p1.1 口保持高电平。2.2器件清单基本电路板器件:器件名称规格型号数量器件名称规格型号数量单片机stc90c52ad1瓷片电容22p 或 30p2rs232驱动max2321独石电容0.22uf(224)5接线插孔座排母86针电解电容1.0uf / 50v2电解电容10uf / 50v3晶体谐振器6mhz1电解电容47uf(22uf)4发光二极管()33接线端子电源

5、用1金属膜电阻200 a1按钮小(0.2 x0.3 )1金属膜电阻6.8k1db9插座db9o 座1金属膜电阻3.3k3dip插座dip401金属膜电阻1m1dip插座dip161万能板器件:电阻:1k (9个)330 (7个)按键开关:1个电容:30pf (2个)741s245: (1个)底座:dip20(1个)共阴极数码管:(2个)万能电路板:1个导线若干2.3主要器件说明(1)单片机 stc90c52adstc90c52ad勺引说明和功能说明如下:xtal1 :接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个 放大器构成了片内振荡器。它采用外部振荡器时,些引脚应接地。xt

6、al2 :接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生 器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。rst : at89s51的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚 电位提升到高电位,并持续两个机器周期以上的时间,at89s51便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。p0 口 (p0.0p0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是地址 总线(低8位)和数据总线复用。外部不扩展而单片应用时,则作一般双向i/o 口用。p0 口每一个引脚可以推动 8个lsttl负载。p2 口 (

7、p2.0p2.7) 口是具有内部提升电路的双向 i/o端口(准双向并行i/o 口),当访 问外部程序存储器时,它是高 8位地址。外部不扩展而单片应用时,则作一般双向 i/o 口用。每一个引脚可以推动 4个lstl负载。p1 口(p1.0p1.7) 口是具有内部提升电路的双向i/o端口(准双向并行i/o 口),其输出可以推动4个lsttl负载。仅供用户作为输入输出用的端口。p3 口(p3.0p3.7) 口是具有内部提升电路的双向i/o端口(准双向并行i/o 口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容 的读取或写入控制等功能。adc0/t2/p10iadc

8、1/t2ex/p1j izz adc2 pl 二匚 adc3/pi.3iadc4小l4匚adc5/pl5izzadc6.rxd/pl6 uadc7/txd/pl7 匚rstczrxdzp3.0 izztxd/p3j 匚 fnto/p3.2|inn/p3,3 匚 ro/p3,4 匚 t1/p3.5czwr/p3.6cz rb/p37cz xtal2匚 xtal1ugnd i14023933843753663573483393210311130122913281427152616251724182319222021stc90c52 a国脚图nnnnnnnnnnnnnnnnnnnvccpo.opop

9、o.2po.3p0.4po.5p0.6p0.7 ea/p4,6ale p4.5psenp4.4p2,7p2.6p2.5p2.4p23p2.2p2ap2,0(2) 741s24574ls245芯片,用来驱动数码管, 它是8路同相三态双向总线收发 器,可双向传输数据。74ls245还具有双向三态功能,既 可以输出,也可以输入数据。当8051单片机的p0口总线负载达 到或超过p0最大负载能力时,必 须接入74ls245等总线驱动器。a0b0a1b1a2b2a3b3a4b4a5b5a6bsa7b7e74ls245dif21831716451561478911当片选端/ce低电平有效时,e是h时,& b

10、为高阻f为l,dir为l时,ba 区为l, dir是h时,a*-bdir= 0,信号由b向a传输;(接收)dir= 1,信号由a向b传输;(发送)当ce为高电平时,a b均为高阻态。 由于p2 口始终输出地址的高 8位,接口时74ls245的三态控制端1g-8 -和2g接地,p2 口与驱动器输入线对应相连。 p0 口与74ls245输入端相连,e端接地,保证 数据线畅通。8051的/rd和/psen相与后接 dir,使得rd且psenw效时,74ls245输入(p0.1 -d1),其它时间处于输出(p0.1 - d1)(3)共阴极数码管共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(

11、com附数码管。共阴数码管在应用时应将公共极co愚到地线gnd上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。数码管动态显示接口 是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a, b, c, d, e, f, g, dp的同名端连在一起,另外为每个数码管的公共极com曾加位选通控制电路,位选通由各自独立的i/o线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通com希电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没

12、 有选通的数码管就不会亮。通过分时轮流控制各个数码管的的com,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但 只要扫描的速度足够快,给人的印象就是一组稳定的显共f gub/ i h lattttte d cdp共示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的i/o端口,而且功耗更低。这次课程设计,由于所用数码管较少,i/o 口完全够用,所 以采用静态显示。lg6011ah数码管引脚图2.4 设计原理图及pcb图阖2.5程序设计2.5.1程序流

13、程图to中断入口tcnt 力口 1tcnt=。处理sec并显不中断返回-16 -2.5.2 c 语言设计程序:#include#define uint unsigned int#define uchar unsigned charuchar shi,ge,aa,keycount,temp;sbit anjian=p1a7;uchar code table口=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;void display(shi,ge);void key ();void init();void delay(uint z);/*-主程序

14、-*/void main()init();/初始化whilekey ();if(keycount=1)tr0=1; 开中断if(keycount=2)tr0=0;if(keycount=3)temp=0;keycount=0;if(aa=10)aa=0;temp+;if(temp=99)temp=0;display(shi,ge);/*-初始化程序*/void init()keycount=0;temp=0;tmod=0x01;th0=(65536-50000)/256;tl0=(65536-50000)%256;ea=1;et0=1;tr0=0;/*-定时器中断-*/void timer0(

15、) interrupt 1th0=(65536-50000)/256;tl0=(65536-50000)%256;aa+;/*-显示子程序-*/void display(shi,ge)shi=temp/10;ge=temp%10;p0=tableshi;p2=tablege;/*-按键检测子程序-*/void key ()if(anjian=0)delay(5);/ 消抖if(anjian=0)keycount+;while(!anjian)display(shi,ge);/等待按键弹起/*延时子程序*/void delay(uint z)/延时约1msuint x,y;for(x=z;x0;

16、x-)for(y=100;y0;y-);2.6软件与硬件结合调试硬件调试:硬件调试可分为静态调试与动态调试两步进行。静态调试:是在用户系统未工作时的一种硬件检测。第一步:目测。检查外部的各种元件或者是电路是否有断点。第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线 与地线之间是否有短路现象。第三步:加电检测。给板加电,检测所有插座或是器件的电源端是否符合要求的值第四步:联机检查。因为只有用单片机开发系统才能完成对用户系统的调试。动态调试:是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、

17、由分到合。由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件 无关的 器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当 各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的 相互联系进行调试。由分到合的调试既告完成。由近及远是将信号流经的各器件按照距离 单片机的逻辑距离进行由近及远的分层,然后分层调试。调试时,仍采用去掉无关元件的 方法,逐层调试下去,就会定位故障元件了。软件调试是通过对程序的编译、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。软件编程是在keil软件环境下编程的。调试过程中使用了

18、仿真软件proteus在计算机上先进行仿真实验,验证了软硬件的可行性。(附仿真图)fr - f: lr. i as.j曰tjm w =,事-i建一京总窘黑空名易膏卷i ansi!klg|gjg|g.|ge三、课程设计总结在开始课程设计之前对自己有很多疑问,自己到底能不能完成呢,由于平时对单片机 学的不扎实很怕自己不能完成这次课设,但是在设计中遇到了很多专业知识问题,最后在 老师的指导和同学的帮助下,也都迎刃而解了。同时也更加巩固和扎实了单片机的知识。感谢老师辛勤的工作,透彻的讲解,耐心的点拨以及不厌其烦的纠正我们的错误。同时,对给过我们帮助的所有同学和实验室的老师表示忠心的感谢!由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,而且考试内容有限,所以在这次课程设计过程中,我们了解了很多元件的功能,并且对于 其在电路中的使用有了更多的认识。有些平时不太懂得问题,做完课程设计也就迎刃而解 了,而且印象深刻。比如一些芯片的功能,平时看课本,这次看了,下次就忘了,通过动 手实践让我们对各个元件有了更深刻的认识。我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.通过这次对99秒码表的设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论