咸鱼ESP32实例—RTC

咸鱼ESP32实例—RTC


每一个电子爱好者心中都希望拥有属于自己制作的一个电子时钟,接下来我们就用 MicroPython 开发板来制作一个属于自己的电子时钟。


ZTWF开发板
在这里插入图片描述
0.96oled屏幕
在这里插入图片描述

构造函数
rtc=machine.RTC()
构建 RTC 对象。
使用方法
rtc.datetime((2020, 6, 1, 0, 0, 0, 0, 0))
设置日期和时间。按顺序分别是:(年,月,日,星期,时,分,秒,微秒)其中星期使用 0-6 表示周一至周日。
rtc.datetime()
获取当前日期和时间

基础用法
和PYB基本一样

>>> from machine import RTC
>>> rtc=RTC()
>>> rtc.datetime()
(2000, 1, 1, 5, 0, 1, 39, 288498)
>>> rtc.datetime((2020,06,03,1,15,15,0,0))
>>> print(rtc.datetime())
(2020, 6, 3, 2, 15, 15, 17, 79590)

示例代码

from machine import Pin, I2C, RTC, Timer
from ssd1306 import SSD1306_I2C

# 定义星期和时间(时分秒)显示字符列表
week = ['Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun']
time_list = ['', '', '']
# 初始化所有相关对象
i2c = I2C(sda=Pin(26), scl=Pin(25))  # I2C 初始化:sda-->13, scl -->14
oled = SSD1306_I2C(128, 64, i2c, addr=0x3c)
rtc = RTC()
# 首次上电配置时间,按顺序分别是:年,月,日,星期,时,分,秒,次秒级;这里做
# 了一个简单的判断,检查到当前年份不对就修改当前时间,开发者可以根据自己实际情况
# 来修改。
if rtc.datetime()[0] != 2020:
  rtc.datetime((2020, 6, 3, 3, 14, 47, 0, 0))


def RTC_Run(tim):
  datetime = rtc.datetime()  # 获取当前时间
  oled.fill(0)  # 清屏显示黑色背景
  oled.text('RTC TEST', 0, 0)  # 首行显示
  oled.text('RTC Clock', 0, 15)  # 次行显示实验名称
    # 显示日期,字符串可以直接用“+”来连接
  oled.text(str(datetime[0]) + '-' + str(datetime[1]) + '-' + str(datetime[2]) + ' ' + week[datetime[3]], 0, 40)
    # 显示时间需要判断时、分、秒的值否小于 10,如果小于 10,则在显示前面补“0”以
    # 达到较佳的显示效果
  for i in range(4, 7):
    if datetime[i] < 10:
      time_list[i - 4] = "0"
    else:
      time_list[i - 4] = ""
    # 显示时间
  oled.text(time_list[0] + str(datetime[4]) + ':' + time_list[1] +str(datetime[5]) + ':' + time_list[2] + str(datetime[6]), 0, 55)
  oled.show()

# 开启 RTOS 定时器
tim = Timer(-1)
tim.init(period=300, mode=Timer.PERIODIC, callback=RTC_Run)  # 周期 300m

在这里插入图片描述

<p> <span style="color:#FF0000;"><strong>micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。</strong></span> </p> <p> <span style="color:#FF0000;"><strong><br /> </strong></span> </p> <p> <span><span style="color:#FF0000;"><strong>同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。</strong></span></span> </p> <p> <span><span style="color:#FF0000;"><strong><br /> </strong></span></span> </p> <p> <span style="color:#FF0000;"><span><strong>能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。</strong></span></span> </p> <p> <span style="color:#FF0000;"><span><strong><br /> </strong></span></span> </p> <p> <span style="color:#FF0000;"><strong>为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。</strong></span> </p> <p> <span style="color:#FF0000;"><strong>为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。</strong></span> </p> <p> <span style="color:#FF0000;"><strong>为记录单片机传输过来的数据, 本教程会教大家入门数据库。</strong></span> </p> <p> <span style="color:#FF0000;"><strong><br /> </strong></span> </p> <p> <span style="color:#FF0000;"><strong> </strong></span> </p> <p> <strong> <strong><span style="color:#000000;">本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。</span></strong> </strong> </p> <strong> </strong> <p> <strong> <strong><span style="color:#000000;">micropython版本是 2019年6月发布的1.11;</span></strong> </strong> </p> <strong> </strong> <p> <span style="color:#FF0000;"><strong>更多内容请看视频列表。</strong></span> </p> <p> <span style="color:#FF0000;"><strong><br /> </strong></span> </p> <p> <span style="color:#FF0000;"><strong><strong> </strong></strong></span> </p> <p> <strong><strong> <strong><span style="color:#000000;">学习这门课程</span><span style="color:#E53333;">之前</span><span style="color:#000000;">你需要至少掌握:</span><br /> </strong> </strong></strong> </p> <strong><strong> </strong></strong> <p> <strong><strong> <strong><span style="color:#000000;">1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。</span></strong> </strong></strong> </p> <strong><strong> </strong></strong> <p> <strong><strong> <br /> </strong></strong> </p> <strong><strong> </strong></strong> <p> <span style="color:#000000;"> </span> </p> <p> <span><strong> </strong></span> </p> <p> <strong> <span><strong>本视频使用到的零件与淘宝上大致价格:</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    1: 超声波传感器(3)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    2: MAX9814麦克风放大模块(8)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    3: DHT22(15)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    4: LED(0.1)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    5: 8路5V低电平触发继电器(12)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    6: HX1838红外接收模块(2)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    7:红外发射管(0.1),HX1838红外接收板(1)</strong></span> </strong> </p> <strong> </strong> <p> <strong> <span><strong>    other: 电表, 排线, 面包板(2)*2,ESP32(28)</strong></span> </strong> </p> <strong> </strong> <p> <br /> </p>
相关推荐
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页