• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

如用51单片+时钟 定时开关

2607536976@qq.com 2017-10-13 浏览量:1008

假设早上7:00:00开   晚上21:00:00 关 控制输出高低电平

程序如何写?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 对于这种有RTC(实时时钟)需求,由于51单片机没有内置RTC芯片,可以外接一个RTC芯片,如DS12C887等,这种RTC芯片就像一个时钟一样,在设置好当前时间后,按照当前的时间计时走下去,还可以有闹钟,农历,自动闰年计算等功能,而且RTC芯片可以支持纽扣电池供电,就算主MCU掉电了,RTC还在跑。

    所以,按照楼主的需求,接一个这样的RTC芯片,设置好闹钟,在7:00和21:00时RTC芯片中断触发51单片机,51单片机再输出高低电平就可以了。

    为什么不推荐直接51芯片计时呢?因为一般MCU掉电了,数据就丢失了,并不知道当前时间是什么时候,如果想复杂些,还可以用网络TCP校时等操作。

    • 发布于 2017-10-13
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:13
  • 51的话常用ds1302,做个闹钟。这个我有源代码,你留个邮箱
    • 发布于2017-10-13
    • 举报
    • 评论 0
    • 0
    • 0

  • DS1302很经典单片机做的时钟,一般的单片机例程都有
    • 发布于2017-10-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 找一款实时时钟芯片,比如DS1302,模拟I2C接口驱动它,计时过程中可以查询时间,也可以在预定时间触发中断,然后控制输出高低电平。

    时钟芯片这里加一个纽扣电池。

    • 发布于2017-10-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个需要用到时钟芯片的,51单片机一般用ds1302,程序一般在开发板例程有的

    • 发布于2017-10-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 要是单片机不干太多事可以直接用定时器写一个时钟程序,就不用外接时钟芯片了。这些程序一般的单片机教程上都有。
    • 发布于2017-10-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 你初始化好时钟芯片(比如DS1302)之后,就可以通过程序查询当前时间啊,然后和你设定的时间进行比较
    • 发布于2017-10-14
    • 举报
    • 评论 0
    • 0
    • 0

  • RTC可以使用DS系列的时钟芯片,精度还是可以的。

    使用前要进行时钟的校正,然后就是判断时间后对GPIO进行设置

    • 发布于2017-10-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 使用时钟芯片,51单片机询问时间。

    • 发布于2017-10-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 肯定要用时钟芯片了,这样可以确保时间的精度
    • 发布于2017-10-19
    • 举报
    • 评论 0
    • 0
    • 0

  • 楼主,这个好实现,RTC就行了,前提是RTC的32.768K的晶振要精准些,要不然会有偏差的。
    • 发布于2017-10-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 用DS1302,通过I2C通信协议连接,先用51给1302初始值,再用51扫描读取
    • 发布于2017-10-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 郭天祥教程里有一个单片机实例~
    • 发布于2017-11-27
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :这两个不是互配的。 66741-6对配是66259-2。 回复

相关问题

问题达人换一批

如用51单片+时钟 定时开关