赞
踩
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
51单片机万年历在国内外均有相关的研究和开发。以下是简要介绍:
国内:
在国内,由于单片机应用技术的不断发展和普及,越来越多的学校和企业开始进行51单片机万年历的研究和开发。目前,已经有很多大学实验室和企业研发部门开发了各种基于51单片机的万年历系统,并且已经应用到实际生产中,发挥了重要的作用。
国外:
在国外,由于51单片机的使用不如国内普及,因此51单片机万年历的研究相对较少,但在欧美等发达国家,其在嵌入式领域的应用比较广泛。一些企业和个人也基于51单片机开发了不同类型的万年历,这些万年历不仅具有显示时间的功能,还有提醒、闹钟等实用功能。
总体来说,国内外对于51单片机万年历的研究和开发并没有停滞,在技术、应用等方面都有不断探索和创新,同时也在推动单片机技术的发展和应用。
#include<reg52.h> //#include"DS18B20_3.H" #include <string.h> #include <intrins.h> #define uint unsigned int #define uchar unsigned char #define wd 1 //定义是否有温度功能 =0时无温度,=1时有温度 #include "eeprom52.h" #define yh 0x80 //LCD第一行的初始位置,因为LCD1602字符地址首位D7恒定为1(100000000=80) #define er 0x80+0x40 //LCD第二行初始位置(因为第二行第一个字符位置地址是0x40) //液晶屏的与C51之间的引脚连接定义(显示数据线接C51的P0口) sbit en=P2^7; sbit rw=P2^6; //如果硬件上rw接地,就不用写这句和后面的rw=0了 sbit rs=P2^5; //校时按键与C51的引脚连接定义 sbit set=P3^0; //设置键 sbit add=P3^1; //加键 sbit dec=P3^2; //减键 sbit seeNL_NZ=P3^3; //查看农历/闹钟 sbit DQ=P3^7; // sbit buzzer=P2^0; //蜂鸣器,通过三极管8550驱动,端口低电平响 sbit led=P2^4; //LCD背光开关 bit led1=1; bit NZ_sdgb=1; unsigned char temp_miao; unsigned char bltime; //背光亮的时间 //DS1302时钟芯片与C51之间的引脚连接定义 sbit DSIO=P1^1; sbit SCLK=P1^0; sbit RST=P1^2; char a,miao,shi,fen,ri,yue,week,setn,nian; int temp; uint flag; //flag用于读取头文件中的温度值,和显示温度值 bit c_moon; char nz_shi,nz_fen,setNZn; //定义闹钟变量 uchar shangyimiao,bsn,temp_hour; //记录上一秒时间 uchar T_NL_NZ; //计数器 bit timerOn=0; //闹钟启用标志位 bit baoshi=0; //整点报时标志位 bit p_r=0; //平年/润年 =0表示平年,=1表示润年 data uchar year_moon,month_moon,day_moon; sbit ACC0=ACC^0; sbit ACC7=ACC^7; /************************************************************ ACC累加器=A ACC.0=E0H ACC.0就是ACC的第0位。Acc可以位寻址。 累加器ACC是一个8位的存储单元,是用来放数据的。但是,这个存储单元有其特殊的地位, 是单片机中一个非常关键的单元,很多运算都要通过ACC来进行。以后在学习指令时, 常用A来表示累加器。但有一些地方例外,比如在PUSH指令中,就必须用ACC这样的名字。 一般的说法,A代表了累加器中的内容、而ACC代表的是累加器的地址。 ***************************************************************/ /******************把数据保存到单片机内部eeprom中******************/ void write_eeprom() { SectorErase(0x2000); byte_write(0x2000, nz_shi); byte_write(0x2001, nz_fen); byte_write(0x2002, timerOn); byte_write(0x2060, a_a); } /******************把数据从单片机内部eeprom中读出来*****************/ void read_eeprom() { nz_shi = byte_read(0x2000); nz_fen = byte_read(0x2001); timerOn = byte_read(0x2002); a_a = byte_read(0x2060); } /**************开机自检eeprom初始化*****************/ void init_eeprom() { read_eeprom(); //先读 if(a_a != 1) //新的单片机初始单片机内问eeprom { nz_shi = 12; nz_fen = 30; timerOn=0; a_a = 1; write_eeprom(); //保存数据 }   **既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!** **由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新** **需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)** **[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)** 源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新** **需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)** **[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。