找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9943|回复: 29
收起左侧

1602万年历单片机源代码+仿真+原理图+ PCB(可以直接打板)

  [复制链接]
ID:449590 发表于 2019-3-8 16:36 | 显示全部楼层 |阅读模式
分享一个1602万年历,全套资料在附件,源代码+仿真+原理图+ PCB(可以直接打板)。喜欢动手的可以做,资料齐全,简单易弄。
1552033629903.jpg


原理图及仿真
1552033631827.jpg 1552033636697.jpg


PCB
QQ截图20190308161511.png QQ截图20190308161531.png QQ截图20190308161604.png


源代码
  1. #include<reg52.h>
  2. #include <string.h>
  3. #include <intrins.h>
  4. #define uint unsigned int
  5. #define uchar unsigned char
  6. #define wd 1                                //定义是否有温度功能  =0时无温度,=1时有温度


  7. #define yh 0x80 //LCD第一行的初始位置,因为LCD1602字符地址首位D7恒定为1(100000000=80)
  8. #define er 0x80+0x40 //LCD第二行初始位置(因为第二行第一个字符位置地址是0x40)

  9. //液晶屏的与C51之间的引脚连接定义(显示数据线接C51的P0口)
  10. sbit en=P2^6;
  11. sbit rw=P2^5;   //如果硬件上rw接地,就不用写这句和后面的rw=0了
  12. sbit rs=P2^4;


  13. //校时按键与C51的引脚连接定义

  14. sbit menu=P3^0;                //菜单键
  15. sbit set=P3^1;          //设置键
  16. sbit add=P3^2;          //加键
  17. sbit dec=P3^3;          //减键
  18. sbit ensure=P3^4;        //确认键

  19. sbit DQ=P2^0;                //
  20. sbit buzzer=P1^4;        //蜂鸣器,通过三极管8550驱动,端口低电平响

  21. sbit led=P2^4;                 //LCD背光开关
  22. bit  led1=1;

  23. unsigned char temp_miao;
  24. unsigned char bltime;  //背光亮的时间

  25. //DS1302时钟芯片与C51之间的引脚连接定义
  26. sbit IO=P1^1;
  27. sbit SCLK=P1^2;
  28. sbit RST=P1^0;


  29. uchar a,miao,shi,fen,ri,yue,nian,week,setn,temp;
  30. uint flag;
  31. //flag用于读取头文件中的温度值,和显示温度值
  32. bit c_moon;

  33. uchar nz_shi=12,nz_fen=0,nz_miao=0,setNZn;            //定义闹钟变量
  34. uchar shangyimiao,bsn,temp_hour;                        //记录上一秒时间
  35. uchar T_NL_NZ=0;                                                        //计数器
  36. bit timerOn=0;                                                        //闹钟启用标志位
  37. bit baoshi=0;                                                        //整点报时标志位
  38. bit  p_r=0;                                                                 //平年/润年  =0表示平年,=1表示润年
  39. data uchar year_moon,month_moon,day_moon,week;



  40. sbit ACC0=ACC^0;
  41. sbit ACC7=ACC^7;
  42. /************************************************************
  43. ACC累加器=A
  44. ACC.0=E0H

  45. ACC.0就是ACC的第0位。Acc可以位寻址。

  46. 累加器ACC是一个8位的存储单元,是用来放数据的。但是,这个存储单元有其特殊的地位,
  47. 是单片机中一个非常关键的单元,很多运算都要通过ACC来进行。以后在学习指令时,
  48. 常用A来表示累加器。但有一些地方例外,比如在PUSH指令中,就必须用ACC这样的名字。
  49. 一般的说法,A代表了累加器中的内容、而ACC代表的是累加器的地址。
  50. ***************************************************************/



  51. //********阳历转换阴历表************************************
  52. /*
  53. 公历年对应的农历数据,每年三字节,
  54. 格式第一字节BIT7-4 位表示闰月月份,值为0 为无闰月,BIT3-0 对应农历第1-4 月的大小
  55. 第二字节BIT7-0 对应农历第5-12 月大小,第三字节BIT7 表示农历第13 个月大小
  56. 月份对应的位为1 表示本农历月大(30 天),为0 表示小(29 天)
  57. 第三字节BIT6-5 表示春节的公历月份,BIT4-0 表示春节的公历日期
  58. */
  59. code uchar year_code[597]={
  60.                     0x04,0xAe,0x53,    //1901 0
  61.                     0x0A,0x57,0x48,    //1902 3
  62.                     0x55,0x26,0xBd,    //1903 6
  63.                     0x0d,0x26,0x50,    //1904 9
  64.                     0x0d,0x95,0x44,    //1905 12
  65.                     0x46,0xAA,0xB9,    //1906 15
  66.                     0x05,0x6A,0x4d,    //1907 18
  67.                     0x09,0xAd,0x42,    //1908 21
  68.                     0x24,0xAe,0xB6,    //1909
  69.                     0x04,0xAe,0x4A,    //1910
  70.                     0x6A,0x4d,0xBe,    //1911
  71.                     0x0A,0x4d,0x52,    //1912
  72.                     0x0d,0x25,0x46,    //1913
  73.                     0x5d,0x52,0xBA,    //1914
  74.                     0x0B,0x54,0x4e,    //1915
  75.                     0x0d,0x6A,0x43,    //1916
  76.                     0x29,0x6d,0x37,    //1917
  77.                     0x09,0x5B,0x4B,    //1918
  78.                     0x74,0x9B,0xC1,    //1919
  79.                     0x04,0x97,0x54,    //1920
  80.                     0x0A,0x4B,0x48,    //1921
  81.                     0x5B,0x25,0xBC,    //1922
  82.                     0x06,0xA5,0x50,    //1923
  83.                     0x06,0xd4,0x45,    //1924
  84.                     0x4A,0xdA,0xB8,    //1925
  85.                     0x02,0xB6,0x4d,    //1926
  86.                     0x09,0x57,0x42,    //1927
  87.                     0x24,0x97,0xB7,    //1928
  88.                     0x04,0x97,0x4A,    //1929
  89.                     0x66,0x4B,0x3e,    //1930
  90.                     0x0d,0x4A,0x51,    //1931
  91.                     0x0e,0xA5,0x46,    //1932
  92.                     0x56,0xd4,0xBA,    //1933
  93.                     0x05,0xAd,0x4e,    //1934
  94.                     0x02,0xB6,0x44,    //1935
  95.                     0x39,0x37,0x38,    //1936
  96.                     0x09,0x2e,0x4B,    //1937
  97.                     0x7C,0x96,0xBf,    //1938
  98.                     0x0C,0x95,0x53,    //1939
  99.                     0x0d,0x4A,0x48,    //1940
  100.                     0x6d,0xA5,0x3B,    //1941
  101.                     0x0B,0x55,0x4f,    //1942
  102.                     0x05,0x6A,0x45,    //1943
  103.                     0x4A,0xAd,0xB9,    //1944
  104.                     0x02,0x5d,0x4d,    //1945
  105.                     0x09,0x2d,0x42,    //1946
  106.                     0x2C,0x95,0xB6,    //1947
  107.                     0x0A,0x95,0x4A,    //1948
  108.                     0x7B,0x4A,0xBd,    //1949
  109.                     0x06,0xCA,0x51,    //1950
  110.                     0x0B,0x55,0x46,    //1951
  111.                     0x55,0x5A,0xBB,    //1952
  112.                     0x04,0xdA,0x4e,    //1953
  113.                     0x0A,0x5B,0x43,    //1954
复制代码

全部资料51hei下载地址:
1602万年历.rar (3.09 MB, 下载次数: 451)

评分

参与人数 1黑币 +100 收起 理由
admin + 100 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:487286 发表于 2019-3-9 11:22 | 显示全部楼层
谢谢分享
回复

使用道具 举报

ID:479362 发表于 2019-3-10 15:33 来自手机 | 显示全部楼层
有元器件清单吗
回复

使用道具 举报

ID:449590 发表于 2019-3-12 10:19 | 显示全部楼层
MaiTu 发表于 2019-3-10 15:33
有元器件清单吗

没,可以根据原理图准备元器件
回复

使用道具 举报

ID:242298 发表于 2019-3-23 14:29 | 显示全部楼层
希望能够完美运行m,,,,,
回复

使用道具 举报

ID:442731 发表于 2019-3-23 17:14 | 显示全部楼层
很给力!
回复

使用道具 举报

ID:442731 发表于 2019-3-23 17:14 | 显示全部楼层
非常全!
回复

使用道具 举报

ID:496651 发表于 2019-3-23 21:39 来自手机 | 显示全部楼层
给力!
回复

使用道具 举报

ID:498618 发表于 2019-3-26 19:10 | 显示全部楼层
感谢分享!
回复

使用道具 举报

ID:483249 发表于 2019-4-12 20:15 | 显示全部楼层
楼主,SS8050可以用S8050代替吗?还有电解电容只能用10uF/16V的吗
回复

使用道具 举报

ID:154509 发表于 2019-5-2 16:11 | 显示全部楼层
闹钟似乎调不了
回复

使用道具 举报

ID:470892 发表于 2019-5-3 01:05 | 显示全部楼层
非常实用,对于初学来说,值得借鉴
回复

使用道具 举报

ID:518399 发表于 2019-5-17 09:48 来自手机 | 显示全部楼层
老哥,为什么我下载了,显示已经损坏啊
回复

使用道具 举报

ID:518399 发表于 2019-5-17 09:54 来自手机 | 显示全部楼层
怎么回事呢,下载下来,已经损坏
回复

使用道具 举报

ID:540986 发表于 2019-5-17 21:05 | 显示全部楼层
这个下载是正常的吗……?
回复

使用道具 举报

ID:525478 发表于 2019-5-18 23:57 | 显示全部楼层
谢谢分享  下载先
回复

使用道具 举报

ID:568623 发表于 2019-6-21 12:34 | 显示全部楼层
那个...想问一下,闹钟调好了,到了时间不响是什么情况啊QWQ...没怎么搞懂
回复

使用道具 举报

ID:568680 发表于 2019-6-21 14:00 | 显示全部楼层
没怎么搞懂
回复

使用道具 举报

ID:568680 发表于 2019-6-21 14:01 | 显示全部楼层
多谢了
回复

使用道具 举报

ID:585455 发表于 2019-7-19 11:37 | 显示全部楼层
很詳細很棒,感謝分享。
回复

使用道具 举报

ID:585877 发表于 2019-7-26 10:12 | 显示全部楼层
谢谢分享
回复

使用道具 举报

ID:585845 发表于 2019-7-26 20:26 | 显示全部楼层
没原理图仿真的
回复

使用道具 举报

ID:662643 发表于 2019-12-26 20:11 | 显示全部楼层
请问这个在郭天祥STC TX-1C上能实现吗
回复

使用道具 举报

ID:683955 发表于 2020-1-9 08:54 | 显示全部楼层
有整点报时吗
回复

使用道具 举报

ID:690565 发表于 2020-2-20 00:19 | 显示全部楼层
我下了,用7zip就可以解压了
回复

使用道具 举报

ID:673471 发表于 2020-3-10 14:13 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:630491 发表于 2020-3-10 16:08 | 显示全部楼层
KUAILEHA 发表于 2019-12-26 20:11
请问这个在郭天祥STC TX-1C上能实现吗

可以,但是制作起来太复杂,如果只是做实验就可以,但是做产品就太亏了。
回复

使用道具 举报

ID:630491 发表于 2020-3-10 16:09 | 显示全部楼层
原理图部分有问题,ds1302用的不是32.768k的晶振吗?
回复

使用道具 举报

ID:757596 发表于 2020-5-21 20:43 | 显示全部楼层
多谢分享支持
回复

使用道具 举报

ID:688367 发表于 2020-5-22 03:10 来自手机 | 显示全部楼层
牛逼克拉斯,想看看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表