单片机定时报警C语言程序,求一个51单片机定时闹钟程序。要C语言。能够调时间...
我来发一个C语言211351单片机时钟程序,希望5261能帮到你/* 程序功能:4102带定时闹铃时钟 *//*---------------------------------------------------------------*/#include <AT89X51.H> /*包含器件1653配置文件*/#define uchar unsigned char#define uint unsigned intchar DATA_7SEG[10]={0xC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90,};/*0~9的数码管段码*/uchar hour=0,min=0,sec=0; /*时、分、秒单元清零*/uchar deda=0; /*5mS计数单元清零*/ bit d_05s=0; /*0.5秒标志*/uchar set=0; /*模式设定标志*/uchar m=0;uchar flag=0; /*RAM掉电标志*/void delay(uint k); /*延时?函数*/void conv(); /*走时单元转换*/void disp(); /*走时时间显示?函数*//*------------------------走时?函数部分 ----------------------*//*定时器T0 5mS初始化*/void init_timer(){TMOD=0x01;TH0=-(4800/256);TL0=-(4800%256);IE=0x82;TR0=1;}/*---------------------------------*//*5mS定时中断服务?函数*/void T0_srv(void) interrupt 1 {TH0=-(4800/256);TL0=-(4800%256);deda++;} /*----------------------------------*//*时、分、秒单元及走时单元转换*/void conv() { if(deda<=100)d_05s=0; else d_05s=1;if(deda>=200){sec++;deda=0;}if(sec==60){min++;sec=0;}if(min==60){hour++;min=0;}if(hour==24){hour=0;}} /*------------------------ 显示?函数部分 ----------------------*//*走时时间显示?函数*/void disp(){P0=DATA_7SEG[hour/10];P2=0xf7;delay(1);P0=DATA_7SEG[hour%10];P2=0xfb;delay(1);if(d_05s==1){if(P2_2==0)P0_7=0;else P0_7=1;}delay(1);P0=DATA_7SEG[min/10];P2=0xfd;delay(1);P0=DATA_7SEG[min%10];P2=0xfe;delay(1);}/*---------------------- 调整时间?函数部分 -------------------*//*调整走时时间*/void set_time(){uchar m; if(P2_5==0)delay(1); if(P2_5==0)hour++; if(hour==24)hour=0; for(m=0;m<30;m++) { disp(); if(P2_2==0)P0_7=0; else P0_7=1; delay(1); } if(P2_6==0)delay(1); if(P2_6==0)min++; if(min==60)min=0; for(m=0;m<30;m++) { disp(); if(P2_2==0)P0_7=0; else P0_7=1; delay(1); }}/*------------------ 按键扫描、延时等?函数部分-------------------*//*走时时间程序?函数*/void time() { conv(); /* 走时单元转换?函数 */disp(); /* 走时时间显示?函数 */} /*------------------------------------*//*扫描按键?函数*/void scan_key(){delay(1);if(P2_4==0)set++;if(set>=2)set=0;if(set==1)flag=0x55; F0:if(P2_4==0)goto F0; /*按键未释放,在此等候*/}/*------------------------------*//*延时?函数*/void delay(uint k){uint i,j;for(i=0;i<k;i++){for(j=0;j<121;j++){;}}}/*----------------------- 主函数 ------------------------- *//*主函数*/void main(){ init_timer(); /*定时器T0初始化*/ while(1) /*无限循环*/ {if(P2_4==0)scan_key(); /*有按键,调用按键扫描?函数*/switch(set) /*根据set键值散转*/{ case 0:time(); break; /*走时时间程序*/case 1:set_time();break; /*走时时间调整*/default:break; /*其它退�
��*/} if(flag!=0x55) /*判断掉电标志*/ { P0=0xc0; P2=0xc0; delay(100); P2=0xff; delay(400); } }}
阅读全文 >
单片机定时报警C语言程序,求一个51单片机定时闹钟程序。要C语言。能够调时间...相关推荐
- c语言闹钟获取系统时间,求一个51单片机定时闹钟程序。要C语言。能够调时间...
我来发一个C语言211351单片机时钟程序,希望5261能帮到你 /* 程序功能:4102带定时闹铃时钟 */ /*----- ...
- c语言如何求一个数学表达式的值,浅谈C语言中表达式的求值
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 C语言研究性学习的路线 现行的多数C语言教材有太多的误区,不仅不能给读者提供有效的学习线索,还常常"误导"读者,于是,"死记 ...
- 直流电机调速c语言程序,分享一个51单片机直流电机调速源程序
/*******************************************************************/ /* 程序名:PWM直流电机调速 */ /* 晶振:11.0 ...
- python输入一个英文句子、统计单词个数_C语言编程求一个英文句子中的单词数和最长单词的位置、长度及输出这个单词。c++编程 从键盘输入一个英文...
C语言编程求一个英文句子中的单词数和最长单词的位置.长度及输出这个单词. c++编程 从键盘输入一个英文 www.zhiqu.org 时间: 2020-11-23 我刚做了一关于英文句子里面每 ...
- C语言实验——求一个3*3矩阵对角线元素之和
C语言实验--求一个3*3矩阵对角线元素之和 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给定一个3*3的矩阵,请你 ...
- 7-298 sdut-C语言实验-众数7-299 sdut-C语言实验-求一个3*3矩阵对角线元素之和
目录 7-298 sdut-C语言实验-众数 7-299 sdut-C语言实验-求一个3*3矩阵对角线元素之和 7-298 sdut-C语言实验-众数 分数 14 全屏浏览题目 切换布局 作者 马新娟 ...
- 单片机c 语言0-99,单片机“0~99”加法计数器程序的设计51单片机原理及应用.doc...
单片机"0~99"加法计数器程序的设计51单片机原理及应用 课 程 设 计 课程名称51单片机原理及应用题目名称单片机"0~99"加法计数器程序设计专业班级学生 ...
- C语言实验——求一个3*3矩阵对角线元素之和 (sdut oj)
C语言实验--求一个3*3矩阵对角线元素之和 Time Limit: 1000MS Memory Limit: 65536KB Problem Description 给定一个3*3的矩阵,请你求出 ...
- c语言整型最大数,C语言:求一个短整型正整数中的最大数字
C语言:求一个短整型正整数中的最大数字 关注:84 答案:5 手机版 解决时间 2021-01-16 02:17 提问者舊倳偂歡 2021-01-15 14:26 例如整数12354中的最大数字是 ...
最新文章
- 最近24小时记录:虚拟机与Wireshark 2.0
- 怎样才能正确的挑选和建立关键词词库?
- Gartner:2019年七大AI科技趋势,百万行业将颠覆!
- 图像处理之基础---傅里叶
- static_cast, dynamic_cast, const_cast探讨【转】
- 如何正确选择仓储物流供应商?
- Python学习——02-Python基础——【9-面向对象进阶】——isinstance(obj,cls)、反射等...
- linux中split函数用法,Linux csplit 命令用法详解-Linux命令大全(手册)
- 分库分表:TIDB,你是来抢生意的?不讲码德?
- Torch 学习总结
- [转]几种软件测试工具
- Redis的持久化 RDB AOF
- python中怎么输入正斜杠,Python中的正斜杠与反斜杠
- 《C语言入门100例》(第6例)给定两个点的坐标 (x1, y1) 和 (x2, y2),求两点间的距离 | 浮点数精度问题
- Vue源码学习 -- 响应式原理之观察者模式
- 关于按钮“按下”效果的两种实现
- PostgreSQL 源码解读(216)- 实现简单的扩展函数
- 【3Dprinter】3D打印机机型结构 UM、I3、Hbot等的简单介绍
- MaxPab兔源多克隆抗体(D01)的功能和应用类型
- 资料,丰富资料,丰富资料(模式识别......)