单片机课程设计(数字时钟)

上传人:飞****9 文档编号:130669583 上传时间:2020-04-30 格式:DOC 页数:18 大小:905.50KB
返回 下载 相关 举报
单片机课程设计(数字时钟)_第1页
第1页 / 共18页
单片机课程设计(数字时钟)_第2页
第2页 / 共18页
单片机课程设计(数字时钟)_第3页
第3页 / 共18页
单片机课程设计(数字时钟)_第4页
第4页 / 共18页
单片机课程设计(数字时钟)_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《单片机课程设计(数字时钟)》由会员分享,可在线阅读,更多相关《单片机课程设计(数字时钟)(18页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计报告课题名称:数字时钟一、设计目的: 随着半导体技术的不断发展,各种微处理芯片的性价比越来越高,在各个领域的应用也越来越广泛,其中MCU在工业控制、航天航空、民用家电、医疗设备等方面占有十分重要的地位。我们在之前所学习的MCS-51系统单片机就是MCU中的一员,作为低端的8位MCU它具有价格低、适配器件成熟种类多等优势,因此尽管现在32位、16位MCU不断发展,但8位的MCU仍占有大约50%的市场份额,同时它也是我们学习MCU的必要的入门途径,本次实习就是应用我们所学习的MCS-51单片机进行一次实际制作,要经过从硬件设计、软件设计、实验电路调试、软件调试直至最后作品焊接成型,这

2、对以前我们所学习的理论知识进行进一步的巩固和深化,更重要的是学习以MCU为控制核心的应用的实际设计流程及基本的实践动手能力。二、设计内容 应用AT89S51及相关器件制做一个LED数码显示电子时钟。所需使用的软件及硬件具体内容如下:1 使用软件及器件1) 软件:Keil uVision2(IDE集成开发环境)、ELITE-IV单片机开发系统、protel99se2) 器材清单:序号名称数量备注1面包板12AT89S5113双位数码块3412M晶振15按钮46三极管901267电容30p28电容10419电容10uf/10v110电阻100711电阻10k112二极管4148113导线若干三、实

3、习步骤1 根据实习内容及所提供元器件,设计硬件电路,提供的参考电路见图1,也可自行设计1)复位及晶振电路是单片机最小系统必备部分2)三个按钮接在P3.0、P3.1、P3.2上用于调整时、分、秒3)P2口送LED数码显示的段码4)P1.0至P1.5送数码显示控制的位码2 根据设计的硬件电路,在面包板上搭接实验电路3 在硬件基础在keil上上进行软件设计,调试4 调试通过后, 向AT89S51烧写程序5 将烧写好的AT89S51插接到实验电路中,验证是否正常,如果正常说明软、硬件正确可进行电子时钟焊接制做。6 焊接好电子时钟后,再次上电调试,验证通过,实习圆满完成。注意的问题:l 单片机在锁紧座的

4、正确放法:单片机缺口朝上。l 在面包板上接好电路后,先用万用表测量一下电源及地是否会短路。l 接电源调试时不能带电插拔元件四、元件参数190129012是一种最常用的普通三极管。 它是一种低电压,大电流,小信号的PNP型硅三极管集电极电流Ic:Max -500mA 集电极-基极电压Vcbo: -40V 工作温度:-55 to +150 主要用途: 开关应用、射频放大289S51管脚图3双位共阴极数码块管脚图a1b1c1d1e1f1g1dp1a2b2c2d2e2f2g2dp2a1abfcdpedgcom1com部分程序参考流程图主程序流程图结束调按键处理程序按键处理调显示子程序启动定时器定时器初

5、始化:时间常数、工作方式、中断控制位设置初始化:时、分、秒、定时最小单元设置初值开始显示程序流程图返回显示缓存地址指针加1,位码左移一位延时1MS段码送P2口,位码送P1口取显示缓存中数据查表取段码取显示缓存区首地址,设置位控制码初始值是否一轮动态显示结束?分数据转换BCD码存入缓存区秒数据转换BCD码存入缓存区取显示缓存区首地址开始时数据转换BCD码存入缓存区分调整键是否按下?延时去抖分调整键是否按下?秒数据清0秒是否为60?秒值加1秒调整键是否按下?秒调整键是否按下?延时去抖开始调显示子程序键盘处理程序流程图返回时是否为24?时调整键是否按下?时数据清0延时去抖调显示子程序时值加1秒是否为

6、60?分数据清0调显示子程序分值加1时调整键是否按下?定时中断程序流程图中断返回时清零分清零,取时单元中数据加1时单元中数据是否为24?分单元中数据是否为60?秒清零,取分单元中数据加1秒单元中数据是否为60?50ms清零取秒单元中数据加150ms单元中数据是否为20?取50ms单元中数据加1重新加载时间常数开始ELITE-III系统硬件(V2.0)介绍ELITE-IV实物图:硬件资源介绍: 1电源输入(6V) 2电源开关按钮3电源正常指示灯4700mA过流指示灯5NE555 6高档一体化红外接受头7流水等开关按键8Usb取电接口9DS1302时钟芯片10 流水灯 11 24C02 12 93

7、C46 13 ADC0804 模数转换芯片14 MAX232 15 串口接口 16 AT89S*ISP切换键17 蜂鸣器 18 复位键 19 华邦ISP切换20 COM1座21 MCU冷启动22 COM1切换23 I2C接口24 A/D内外切换25 EA切换26 A/D输入27 INTO 28 INT_TO 29 SPI接口30 COM0测试31 18B20温度传感器接口32 KEY_A 33 KEY-B 34 51单片机35 单片机缩紧座 36 A/D调节37 LCD12864接口38 74HC574 39 LCD1602接口 40 ULN2003步进电机驱动芯片41 LCD12232接口4

8、2 1602、12232LCD对比度43 74HC244 44 LCD12864对比度调整旋钮45 4*4键盘46 8*8键盘扩展接口47 输出5V电源接口48 6位8字数码管49 数码管开关按键。 50 步进电机 (二)下载器的安装和使用 一 AT89S系列下载器1 打开随机光盘中的“ISPSetup”文件夹,双击ISPSetup.exe执行安装程序。2点击“下一步”,出现图6对话框,继续点“下一步”。3选择安装路径。4点击“完成”按钮,完成安装过程。说明:本软件是对Atmel 的89S系列MCU进行在线下载程序,打开hex文件之前需要执行“清空”操作,同时要按下开发板上的 S1和S2 按钮

9、。依次执行“鉴别”“擦除”“写入”操作后,弹起S1和S2按钮,按复位键,单片机即可运行刚下载的新程序。 (三)电子钟电路板布线 (四)数字钟程序程序#include#include#define uchar unsigned char#define uint unsigned int/*七段共阴管显示定义*/ uchar code dispcode =0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0xBF,0x86,0xCB,0xCF,0xEF,0xED,0xFD,0x87,0xFF,0xDF;/*定义并初始化变量*/uchar seco

10、nde=0;uchar minite=0;uchar hour=12;uchar mstcnt=0;sbit P3_0=P30; / second 调整定义sbit P3_1=P31; /minite调整定义sbit P3_2=P32; /hour调整定义/*函数声明*/void delay(uchar k ); /延时子程序void time_pro( ); /时间处理子程序void display( ); /显示子程序void keyscan( ); /键盘扫描子程序/*/*延时子程序*/*/void delay (uchar k)uchar j;while(k-)!=0) for(j=0

11、;j125;j+) ; /*/*时间处理子程序*/*/void time_pro( void) if(seconde=60) /秒钟设为60进制 seconde=0; minite+; if( minite=60) /分钟设为60进制 minite=0; hour+; if(hour=24) /时钟设为24进制 hour=0; /*/* 显示子程序*/*/void display(void) P2=0xfe; P0=dispcodehour/10; /显示小时的十位 delay(4); P2=0xfd; P0=(dispcode(hour%10)|0X80; /显示小时的个位 delay(4); P2=0xfb; P0=dispcodeminite/10; /显示分的十位 delay(4); P2=0xf7; P0=(dispcodeminite%10)|0X80; /显示分的个位 delay(4); P2=0xef; P0=dispcodeseconde/10; /显示秒的十位 delay(4); P2=0xdf;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号