简单的单片机时钟课程设计.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
数字电子时钟的制作 一、实现要求: 1、实现时和分的显示,秒钟用发光二极管闪烁指示。 2、实现一分钟倒计时功能,时间到,蜂鸣器自动报警。 3、扩展其他功能:根据自己的兴趣增加其他功能。 最低要求实现1和2的功能,扩展功能自我发挥,扩展功能是加分的关键。 注: 所有同学都必须做出实物,最终一个一个检查,并当场打分。 二、系统框图 三、接线图 用到端口及实物连接 实物链接图 最小系统板上的VCC和GND不够用,添加了插针(如图)。各模块的VCC/GND引脚都连在此 处。 四、程序流程图 Jieshao介绍…………。 五、源程序 /*数字时钟程序*/ /*相关说明 1.功能:功能键S1选择两种不同的功能,功能1,时钟显示,灯一秒钟闪烁一次 功能2,倒计时,倒计时1分钟,数码管显示,到0,蜂鸣器响。 2.接线 数码管接线:A~H接P0.0~P0.7 D1~D4接P1.0~P1.3 VCC接电源正极vcc 按键接线:S1接P3.2//外部中断0 GND接电源GND 灯接线:接P2.1 蜂鸣器接线:IO接P2.2 VCC,GND接电源 */ #include "reg52.h" #include "intrins.h" #define uint unsigned int #define uchar unsigned char sbit LED=P2^1;//灯接P21 sbit beep=P2^2;//蜂鸣器接P22,IO位0就响 /*共阳极数码管 段选P0 位选P1*/ uchar duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar wei[]={0x0e,0x0d,0x0b,0x07}; uchar k=0,j=0,i=0;//计数次数 uchar second=0,minute=0,hour=0,count=5; bit flag1=0;//功能选择键 bit flag2=0;// void delay(int x) { int y; for(;x>0;x--) for(y=100;y>0;y--) ; } void Time0_init(void)//50毫秒@12.000MHz { TMOD= 0x01; //设置定时器模式1,16位 TL0 = 0xB0; //设置定时初值(65536-50000)%256 TH0 = 0x3C; //设置定时初值(65536-50000)/256 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 ET0=1; } void time0(void) interrupt 1 {TL0 = 0xB0; TH0 = 0x3C; k++;j++; if(j==10) {j=0;LED=~LED;} //LED灯每0.5秒状态改变一次,即一秒闪烁一次 if(k==20)//计数20次,每次中断50ms,故20*50ms=1s {k=0;second++;} if(flag1==1)//在功能2 {if(flag2==1)//是否倒计时完成 { i++; if(i==20) {count--;i=0;} } } } void int0_init(void)//外部中断初始化 {EX0=1; IT0=1; } void int0(void) interrupt 0 { flag1=~flag1;//功能选择标志位 flag=1,倒计时界面,flag=0,时钟界面 if(flag1==1){count=5;flag2=1;} else count=5; } void Time_dispose(void) { if(second==60) {second=0; minute++; if(minute==60) {minute=0; hour++; if(hour==24) {hour=0; } } } } //显示函数 void display(void) { if(flag1==0) {P1=0xff;//清0 P0=duan[hour/10];//小时的十位 P1=wei[0]; delay(3); P0=duan[hour%10];//小时的个位 P1=wei[1]; delay(3); P0=duan[minute/10];//分的十位 P1=wei[2]; delay(3); P0=duan[minute%10];//分的个位 P1=wei[3]; delay(3); } else {if(flag1==1) {P1=0xff;//清0 P0=duan[count/10];//分的十位 P1=wei[2]; delay(3); P0=duan[count%10];//分的个位 P1=wei[3]
- 粉丝: 171
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 课设毕设基于SSM的旅游景点线路网站 LW+PPT+源码可运行.zip
- EDA实验计数器CNT9999-DTCNT9999实验源代码
- 课设毕设基于SSM的抗疫医疗用品销售平台 LW+PPT+源码可运行.zip
- 基于Halcon的仿照VisonPro的机器视觉软件.zip
- battery-percentage-detector 使用 Javascript 的电池百分比检测器
- 毕业设计基于Qt+FFmpeg+SDL实现的音视频播放器源码.zip
- 课设毕设基于SSM的固定资产管理系统 LW+PPT+源码可运行.zip
- 课设毕设基于SSM的个人交友网站 LW+PPT+源码可运行.zip
- 课设毕设基于SSM的高校信息资源共享平台 LW+PPT+源码可运行.zip
- 课设毕设基于SSM的高校二手交易平台 LW+PPT+源码可运行.zip