资源描述:
《单片机时钟设计报告范本(word档)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、单片机课程设计院系:电子工程信息学院姓名:学号:班号:12级电子通信313班指导教师:日期:2013.05.28目录第一部分元器件的购买和电路板的焊接1.元器件清单:USB电源借口,四位一体共阴数码管,电阻:铝电解电容器,电阻,晶振,瓷片电容器两个,电阻若干2.电路板原理图,单片机,单片机芯片,电源指示灯3.焊接第二部分1.编程软件的学习2.简单的LED和液晶显示第三部分时钟的设计1.总体设计2.硬件设计3.软件设计第四部分实习心得体会通过学习单片机我懂得了不只要在书本上花时间,还要动手去做,去实践,手脑结合,学习效果会更好,锻炼自己
2、动手的能力更能突出自己的聪明才智,单片机在现实社会当中已经普片存在了,越来越多的电子产品牵涉到单片机的应用了,单片机在电子产品当中已经占主要市场了,所以我要学好这门技术,为自己的梦想从现在开始奋斗吧第一部分元器件的购买和电路板的焊接1.元器件清单(见附录)2.电路板原理图1104120412041104通过和班长去广埠屯购买元件,对购买元器件有了一定的了解。另外通过对开发板硬件的学习,熟知了很多元器件的功能。3.焊接以下是完成后的开发板:通过对开发板的焊接,首先对焊接技巧有了一定的掌握,另外对一些电路图有了一定的认识,并初步了解了一些
3、基本的原理,如A/D转换,复位电路等。第二部分1.编程软件的学习首先,在上课期间了解了wave,在暑假集中学习了keil.以下是keil编程的主要步骤:1、点击KeiluVision4→File→New可新建一个工程文件。点击KeiluVision4→File→Save可保存并重命名新建的工程文件。工程文件的名称后缀为.c2、点击KeiluVision4→Project→NewProject...可新建并重命名一个工程;点击“保存”按钮后,选择对应的单片机型号3、在SourceGroup1上右键单击AddFilestoGroup‘So
4、urceGroup1’为工程添加相应的工程文件4、在工程文件中写入单片机程序,点击保存按钮保存文件5、如果程序出现错误,在OutputWindow窗口会有错误和告警提示,修改并重新编译程序内容,直到OutputWindow窗口出现“0Error(s),0Warning(s)”。2.简单的LED和液晶的显示通过课程和编程软件的学习,可以编写一些基本的程序,比如数码管可以实现计时,闪烁,键盘扫描,移位,清屏;液晶可以实现按键显示。以下是C语言源程序:#include"reg51.h"#include"1602.h"unsignedchar
5、t;unsignedcharLed[8]={1,2,3,4,5,6,7,8};unsignedcharLed1[8]={0x00,0x21,0x42,0x63,0x84,0xa5,0xc6,0xe7};unsignedcharKeyV=0;unsignedcharcodeKey[16]={0xeb,0x77,0x7b,0x7d,//01230xb7,0xbb,0xbd,0xd7,//45670xdb,0xdd,0x7e,0xbe,//89ab0xde,0xee,0xe7,0xed,//cd*#};unsignedcharcodeA[]
6、={0X00,0X01,0X02,0X03,0X04,0X05,0X06,0X07,0X08,0X09};unsignedcharSecondL;unsignedcharSecondH;unsignedcharMinuteL;unsignedcharMinuteH;unsignedcharHourL;unsignedcharHourH;unsignedcharcnt;voiddelay(){unsignedchart;t=200;while(t--);}voiddly(){unsignedintq;q=2000;while(q--);
7、}voiddisplay(){unsignedchari,P1Buf;for(i=0;i<=7;i++){P1Buf=i*2;P1Buf=P1Buf<<4;P1Buf=P1Buf+Led[i];P1=P1Buf;delay();}}/*0为放开,1为未放开*/unsignedcharup(){unsignedcharP0Buf;P0=0xf0;delay();P0Buf=P0;return(P0Buf-0xf0);}voidscan(){unsignedcharP0Buf,P0Buf2,i;P0=0xf0;P0Buf=P0;if(P0
8、Buf!=0xf0){dly();P0=0xf0;P0Buf=P0;if(P0Buf!=0xf0){P0=0x0f;P0Buf2=P0;P0Buf=P0Buf+P0Buf2;KeyV=P0Buf;while(up());