找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9266|回复: 23
收起左侧

DS12C887做21位数码管万年历仿真

  [复制链接]
ID:140489 发表于 2017-9-26 13:28 | 显示全部楼层 |阅读模式
本帖最后由 lids 于 2017-9-26 14:16 编辑

DS12C887做21位数码管万年历仿真,3片MAX7219级联做数码管驱动,程序是论坛里的,但是原来的程序有误,我都修改好了的。完整源程序和仿真文件见附件。需要的就去下载。图片上是调到27日的
  1. #include "main.h"
  2. #include "max7219.h"
  3. #include "ds18b20.h"
  4. #include "ds12c887.h"
  5. #include "display.h"
  6. #include "yinli.h"
  7. #include "key.h"

  8. uchar time_year,time_month,time_day,time_week,time_hour,time_min,time_sec;

  9. uchar c_moon,year_moon,month_moon,day_moon;
  10. uchar year_h,year_l,week,month_h,month_l,day_h,day_l,hour_h,hour_l,min_h,min_l,sec_h,sec_l;
  11. uchar month_lunar_h ,month_lunar_l ,date_lunar_l,date_lunar_h;
  12. uchar hide_min,hide_hour,hide_day,hide_week,hide_month,hide_year;
  13. uchar temp_value;
  14. uchar TempBuffer[2];
  15. bit   flag;
  16. uchar count;
  17. bit   up_flag;
  18. bit   down_flag;
  19. uchar temp_1;

  20. void main()         
  21. {
  22. DS12C887_init();
  23. DS12C887_Settime();  
  24. InitDis ();
  25. Init_DS18B20();
  26. //WDT_CONTR = 0X37;
  27. while(1)
  28. {
  29.    
  30. while(flag)
  31.   {
  32.   
  33.   timedone();
  34.   }
  35.   while(!flag)
  36. {
  37. ReadTemp();
  38. temp_to_str();
  39. display();
  40. scankey();
  41. //WDT_CONTR =0X37;
  42. }
  43.   
  44. }
  45. }
复制代码


万年历.jpg

DS12C887数码管万年历仿真1.rar

156.3 KB, 下载次数: 296, 下载积分: 黑币 -5

评分

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

查看全部评分

回复

使用道具 举报

ID:252798 发表于 2017-11-23 19:25 | 显示全部楼层
真的很喜欢这个,等我把你搞定
回复

使用道具 举报

ID:166341 发表于 2017-12-29 09:58 | 显示全部楼层
最近对这个很感兴趣,下载看看
回复

使用道具 举报

ID:130538 发表于 2017-12-31 12:05 | 显示全部楼层

最近对这个很感兴趣,下载看看
回复

使用道具 举报

ID:324366 发表于 2018-5-18 08:30 | 显示全部楼层
谢谢分享
回复

使用道具 举报

ID:435101 发表于 2019-10-31 06:21 | 显示全部楼层
下载后试过的兄弟出来评论一下---
回复

使用道具 举报

ID:412696 发表于 2020-1-4 10:35 | 显示全部楼层
谢谢分享
回复

使用道具 举报

ID:578017 发表于 2020-6-23 11:09 | 显示全部楼层
最近对这个很感兴趣,下载看看
回复

使用道具 举报

9#
无效楼层,该帖已经被删除
ID:698783 发表于 2021-12-2 18:53 | 显示全部楼层
我想请教个问题  这个用的是共阳的数码管还是共阴的数码管啊
回复

使用道具 举报

11#
无效楼层,该帖已经被删除
12#
无效楼层,该帖已经被删除
ID:1011444 发表于 2022-4-30 20:36 | 显示全部楼层
初学单片机,请教hide_min,hide_hour,hide_day,hide_week,hide_month,hide_year 定义?不知hide年月日代表什么。望予指教
回复

使用道具 举报

ID:143767 发表于 2022-5-1 18:45 | 显示全部楼层
这个再加上闹钟就更好了
回复

使用道具 举报

ID:278457 发表于 2022-5-4 03:48 | 显示全部楼层
用LCD12864做会更好
回复

使用道具 举报

16#
无效楼层,该帖已经被删除
ID:1011444 发表于 2022-5-17 15:19 | 显示全部楼层
如果有电路原理图,就更完美了。论坛里原来发的资料很齐全,但正如楼主所说,程序有误,所定义的接口有的对不上号,还希望楼主给指点一下,十分感谢!
回复

使用道具 举报

ID:1027890 发表于 2022-5-19 14:43 | 显示全部楼层
我感觉这个做的很好
回复

使用道具 举报

19#
无效楼层,该帖已经被删除
ID:1027890 发表于 2022-5-19 14:45 | 显示全部楼层

我也谢谢
回复

使用道具 举报

ID:1011444 发表于 2022-5-22 21:00 | 显示全部楼层
万年历根据楼主提供的程序制作,显示正常,但按键不能调整时间日期,设置键有效而加键减键不起作用,请教是哪里出了问题?
回复

使用道具 举报

ID:1011444 发表于 2022-5-27 22:52 | 显示全部楼层
ds12c887如何设置BCD数据模式?看了几个例程,都是二进制模式,7219用的是译码模式,数码管只能显示数字和几个符号,比如温度单位符号C,就显示不了。如何解决这一问题?可将887设置BCD数据模式,7219采用不译码模式,不知是否可行,请楼主和诸位高手给以指点
回复

使用道具 举报

23#
无效楼层,该帖已经被删除
ID:1011444 发表于 2022-7-25 00:50 | 显示全部楼层
按照楼主提供的程序,经过进一步修改,本着充分利用三片7219的驱动功能,用了24位数码管来显示年月日星期农历温度,温度显示为两位整数一位小数一位符号,7219由全译码改为不译码。程序有多处修改,公历转换农历只计算2000年到2099年(因为没必要计算2000年以前的农历日期),减少代码冗余,也就减少了内存占用。因为数码管都是高亮的,晚上看时间是刺眼的,没来得及加上光控,所以还的改造才能投入使用。现显示效果如下G:/编程相关/VID20220724234329.mp4 IMG20220724234115.jpg


请多提宝贵意见!
回复

使用道具 举报

ID:67185 发表于 2022-11-29 16:23 | 显示全部楼层
设计不错,可惜我的ds12c887内置电池没电了
回复

使用道具 举报

26#
无效楼层,该帖已经被删除
ID:376780 发表于 2023-1-28 22:21 | 显示全部楼层
kz0018 发表于 2022-7-25 00:50
按照楼主提供的程序,经过进一步修改,本着充分利用三片7219的驱动功能,用了24位数码管来显示年月日星期农 ...

星期怎么是8的
回复

使用道具 举报

ID:476623 发表于 2023-1-30 14:42 | 显示全部楼层
tplin 发表于 2022-11-29 16:23
设计不错,可惜我的ds12c887内置电池没电了

可以换电池,网上有教程。
回复

使用道具 举报

ID:615152 发表于 2023-12-14 08:22 | 显示全部楼层
kz0018 发表于 2022-7-25 00:50
按照楼主提供的程序,经过进一步修改,本着充分利用三片7219的驱动功能,用了24位数码管来显示年月日星期农 ...

可以分享一下吗?
回复

使用道具 举报

ID:1011444 发表于 2024-4-4 16:36 | 显示全部楼层
hide_min,hide_hour,hide_day,hide_week,hide_month,hide_year.上面此类定义参数含义不清楚是什么意思,英文hide是隐藏或皮毛,外包装物等意思,加上年月日意思不太明白,似乎此变量是控制时间日期待调整位字符闪烁的,但是如何控制的,没分析出来,请教大家了
回复

使用道具 举报

31#
无效楼层,该帖已经被删除
ID:437129 发表于 2024-12-25 19:53 | 显示全部楼层
错误1.jpg 错误2.jpg 错误3.jpg 错误4.jpg 错误5.jpg 楼主老师您好,附件程序仿真运行发现以下几个问题,我这初学者看半天也解决不了,还请楼主或坛里高手帮忙指点。谢谢!
问题汇总:
1、所有月份不管是设置时还是运行时最大都是31天,包括2月份;
2、出现星期8。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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