c语言万年历闹钟程序,c语言编写的万年历 有平年闰年 有闹钟功能.docx
#include
#include"lcd1602.h"
#include"ds1302.h"
#include"ds18b20.h"
#define uint unsigned int
#define uchar unsigned char
uint b[6];
//年月日时分秒
uchar code row1[]={"2009-01-01"};
uchar code row2[]={"00:00:00"};
uchar year1[12]={31,28,31,30,31,30,31,31,30,31,30,31};//平年
uchar year2[12]={31,29,31,30,31,30,31,31,30,31,30,31};//润年
uchar j[6]={0x85,0x88,0x8b,0x84+0x40,0x87+0x40,0x8a+0x40};//LCD地址
uchar i,k,jj=0,w,clock=0,bigclock=0,c=0,num;
//i循环数 k温度缓存 jj地址位
uint temp;
sbit b1=P3^0;//设置
sbit b2=P3^1;//上调
sbit b3=P3^2;//下调
sbit b4=P3^3;//转换
sbit b5=P3^4;//闹钟
sbit speaker=P3^5;
lcdscan()
{
for(i=0;i<6;i++)
{
lcdwrite(j[i]);
lcdshuju(a[11-i*2]+0x30);
lcdwrite(j[i]+0x01);
lcdshuju(a[10-i*2]+0x30);
}
}
void key()
{
if(b1==0)
{
dsaddshuju(0x80,(a[1]<<4)+a[0]+0x80);
while(b1==0)
{
for(i=0;i<6;i++)
{
b[i]=a[11-i*2+clock]*10+a[10-i*2+clock];
}
if(b4==0)
{
delay(3);
jj++;
if(jj==6)
{
jj=0;
}
}
if(b2==0)
{
delay(3);
b[jj]++;
if(b[5]==60)b[5]=0;
if(b[4]==60)b[4]=0;
if(b[3]==24)b[3]=0;
if((b[0]%4==0 && b[0]%100!=0) || b[0]%400==0){if(b[2]>year2[b[1]-1])b[2]=1;}
else {if(b[2]>year1[b[1]-1])b[2]=1;}
if(b[1]==13)b[1]=1;
if(b[0]==100)b[0]=0;
}
if(b3==0)
{
delay(3);
b[jj]--;
if(b[5]==-1)b[5]=59;
if(b[4]==-1)b[4]=59;
if(b[3]==-1)b[3]=23;
if((b[0]%4==0 && b[0]%100!=0) || b[0]%400==0){if(b[2]<=0)b[2]=year2[b[1]-1];}
else {if(b[2]<=0)b[2]=year1[b[1]-1];}
if(b[1]==0)b[1]=12;
if(b[0]==-1)b[0]=99;
}
for(i=0;i<6;i++)
{
a[11-i*2+clock]=b[i]/10;
a[10-i*2+clock]=b[i]%10;
}
lcdwrite(j[jj]);
lcdshuju(0);
lcdwrite(j[jj]+1);
lcdshuju(0);
delay(200);
lcdwrite(j[jj]);
lcdshuju(a[11-2*jj+clock]+0x30);
lcdwrite(j[jj]+1);
lcdshuju(a[10-2*jj+clock]+0x30);
delay(200);
if(b1==1)
{
dsaddshuju(0x80,(a[1]<<4)+a[0]);
dson();
}
if(b5==0)clock=12;
}
}
}
void main()
{
speaker=0
c语言万年历闹钟程序,c语言编写的万年历 有平年闰年 有闹钟功能.docx相关推荐
- 趣味c语言代码,趣味程序C语言
<趣味程序C语言>由会员分享,可在线阅读,更多相关<趣味程序C语言(36页珍藏版)>请在人人文库网上搜索. 1.趣味程序导学C语言,你玩过电脑游戏吗?,你喜欢电脑游戏吗?,电脑 ...
- c语言万年历闹钟程序,C语言万年历的源程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 for(j=1;j<=mon[i];j++) {cprintf("%3d ",j); /*if((first+j-1)%7==0 ...
- c语言商场收款程序,c语言 如何用switch语句编写一个有关商场购物金额优惠的选择程式...
c语言 如何用switch语句编写一个有关商场购物金额优惠的选择程式以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! c语 ...
- 万年历显示程序C语言,C语言万年历的源程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 for(j=1;j<=mon[i];j++) {cprintf("%3d ",j); /*if((first+j-1)%7==0 ...
- C语言五角星简单程序,如何用*编写五角星形和心形图案的c语言程序
满意答案 adee305918 2013.07.14 采纳率:57% 等级:11 已帮助:8944人 #include void main() { printf(" * \n" ...
- 高斯勒让德在c语言中的程序,c语言:用递归方法编写程序,求n阶勒让德多项式的值...
满意答案 joe19908088 2013.06.13 采纳率:48% 等级:12 已帮助:5242人 #include #include float myfunction(int n,int ...
- c语言字符游动程序,C语言实现扫雷小游戏详解
本文实例为大家分享了C语言实现扫雷小游戏的具体代码,供大家参考,具体内容如下 一.实现功能 首先显示一个小菜单,选择是否玩游戏.当用户选择退出时,程序运行结束,当用户选择玩游戏时,将提示用户输入扫雷位 ...
- c语言malloc函数程序,c语言 malloc函数详解
谈到malloc函数相信学过c语言的人都很熟悉,但是malloc底层到底做了什么又有多少人知道. 1.关于malloc相关的几个函数 关于malloc我们进入Linux man一下就会得到如下结果: ...
- 单片机C语言比赛计分器程序,C语言实现歌手大奖赛计分程序
本文实例为大家分享了C语言实现歌手大奖赛计分程序的具体代码,供大家参考,具体内容如下 1. 题目描述 编写一个程序,用户输入评委人数和分数后,程序可以计算去掉一个最高分和最低分后的平均成绩.可多次输入 ...
最新文章
- 2019 年 CNCF 中国云原生调查报告
- Linux 下 Redis 6 的安装使用(Ubuntu 18.04)
- 星际战争2服务器维护,星际战争2初次反击虚空技能洗练技巧
- python可变参数和关键字参数位置_python中函数的默认参数和可变长参数如何排列?...
- [Node.js] 模块化 -- http服务器模块
- 通过Windows远程桌面连接将远程文件传输至本地
- Eclipse反编译插件
- linux配置c11,C11标准的泛型机制
- php 七牛云获得上传token,客户端生成七牛上传token
- 服务器pe系统ghost系统安装教程,极速PE U盘安装GHOST系统详细图文教程
- linux 内核编号含义_Linux kernel内核源代码代号:mainline、longterm的含义
- 个人收款码跟聚合码的区别
- window文件转换到linux,Window和Linux上的文件相互转换
- 推荐一个临时邮箱生成网站,专门用于各种注册用途
- 计算机什么专业适合男生,内向的男生适合什么专业
- NHibernate基础
- 从爬取豆瓣影评到基于朴素贝叶斯的电影评论情感分析(上)
- html调用wrl,如何实现在网页里嵌入wrl文件
- App Inventor 2 游戏开发最佳入门,仅27个代码块
- Checkmarx与Sonarqube的比较