7275|11

1万

帖子

25

TA的资源

版主

楼主
 

【Micropython】使用RTC [复制链接]

 
  • 定义RTC对象
pyb.RTC
  • 读取/设置rtc
rtc.datetime([datetimetuple]) datetimetuple格式:(year, month, day, weekday, hours, minutes, seconds, subseconds) weekday is 1-7 for Monday through Sunday. subseconds counts down from 255 to 0
  • 设置唤醒定时器
rtc.wakeup(timeout, callback=None) timeout单位是毫秒
  • 获取RTC启动时间和复位源
rtc.info()
  • 获取/设置校正
rtc.calibration(cal) 无参数时读取校正值,有参数时设置校正值
  • 例子
RTC定时器2S翻转一次LED1
  1. rtc.wakeup(2000, lambda t:pyb.LED(1).toggle())
复制代码
设置/读取RTC时间
  1. rtc = pyb.RTC()

  2. #set date time

    rtc.datetime((2014, 5, 1, 4, 13, 0, 0, 0))

  3. #get date time

    print(rtc.datetime())

复制代码
【MicroPython】教程

最新回复

>>> rtc.datetime() (2016, 9, 28, 4, 11, 10, 51, 27) 复制代码 哈哈,没注意缩进  详情 回复 发表于 2016-9-28 19:10
点赞 关注
 
 

回复
举报

81

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
lambda t:pyb.LED(1).toggle()   这里的参数t 是不是可以不用写lambda :pyb.LED(1).toggle()

点评

不行,这样会造成语法错误  详情 回复 发表于 2016-4-16 15:03
 
 
 

回复

1万

帖子

25

TA的资源

版主

板凳
 
windworld 发表于 2016-4-16 11:51
lambda t:pyb.LED(1).toggle()   这里的参数t 是不是可以不用写lambda :pyb.LED(1).toggle()

不行,这样会造成语法错误

点评

这里的参数t可以换成其他的a、b、c 其他的吗?  详情 回复 发表于 2016-4-16 17:11
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

4
 
dcexpert 发表于 2016-4-16 15:03
不行,这样会造成语法错误

这里的参数t可以换成其他的a、b、c 其他的吗?

点评

变量可以随意定义,只要不和其他冲突。  详情 回复 发表于 2016-4-16 21:32
 
 
 

回复

1万

帖子

25

TA的资源

版主

5
 
windworld 发表于 2016-4-16 17:11
这里的参数t可以换成其他的a、b、c 其他的吗?

变量可以随意定义,只要不和其他冲突。也不需要定义变量类型。

点评

嗯 不过lambda函数查了下t这里是可选参数,应该是可以省略的,如果不需要传参的话  详情 回复 发表于 2016-4-17 10:00
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(中级)

6
 
dcexpert 发表于 2016-4-16 21:32
变量可以随意定义,只要不和其他冲突。也不需要定义变量类型。

嗯 不过lambda函数查了下t这里是可选参数,应该是可以省略的,如果不需要传参的话

点评

t的确没有用,但好像没有的话会出错  详情 回复 发表于 2016-4-17 13:31
 
 
 

回复

1万

帖子

25

TA的资源

版主

7
 
windworld 发表于 2016-4-17 10:00
嗯 不过lambda函数查了下t这里是可选参数,应该是可以省略的,如果不需要传参的话

t的确没有用,但好像没有的话会出错
 
 
 

回复

2721

帖子

0

TA的资源

纯净的硅(中级)

8
 

  1. >>> rtc.datetime(2016,9,28,5,11,05,0,0)
  2. Traceback (most recent call last):
  3.   File "<stdin>", line 1, in <module>
  4. TypeError: function expected at most 2 arguments, got 9
  5. >>> rtc.datetime(2016,9,28,4,11,05,0,0)
  6. Traceback (most recent call last):
  7.   File "<stdin>", line 1, in <module>
  8. TypeError: function expected at most 2 arguments, got 9
  9. >>>  rtc.datetime((2016,9,28,4,11,05,0,0))
  10. Traceback (most recent call last):
  11.   File "<stdin>", line 1
  12. IndentationError: unexpected indent
复制代码

导入了RTC,没法设置时间

点评

前面两个提示你参数错误,需要用()。 最后一个参数形式是对的,但是缩进有问题:IndentationError: unexpected indent  详情 回复 发表于 2016-9-28 12:19
 
 
 

回复

1万

帖子

25

TA的资源

版主

9
 
suoma 发表于 2016-9-28 11:13
导入了RTC,没法设置时间

前面两个提示你参数错误,需要用()。

最后一个参数形式是对的,但是缩进有问题:IndentationError: unexpected indent

点评

哈哈,没注意缩进  详情 回复 发表于 2016-9-28 19:10
 
 
 

回复

2721

帖子

0

TA的资源

纯净的硅(中级)

10
 
  1. mydt = mydatetime.DateTime(2016, 7, 10, 7, 16, 0, 0, 0)
  2.   minutesvalue = mydt.getminutes()
  3.   dayvalue = mydt.getday()

  4. if dayvalue != mydt.getday():
  5.         dayvalue = mydt.getday()
  6. ....


  7. if minutesvalue != mydt.getminutes():
  8.       minutesvalue = mydt.getminutes()

  9. ...
复制代码

看别人的例子是给时间赋值后去比较,可以直接获得当前时间吗?

点评

DateTime()函数不带参数就是获取时间。  详情 回复 发表于 2016-9-28 21:39
 
 
 

回复

2721

帖子

0

TA的资源

纯净的硅(中级)

11
 
dcexpert 发表于 2016-9-28 12:19
前面两个提示你参数错误,需要用()。

最后一个参数形式是对的,但是缩进有问题:IndentationError: un ...
  1. >>> rtc.datetime()
  2. (2016, 9, 28, 4, 11, 10, 51, 27)
复制代码

哈哈,没注意缩进
 
 
 

回复

1万

帖子

25

TA的资源

版主

12
 
suoma 发表于 2016-9-28 18:52
看别人的例子是给时间赋值后去比较,可以直接获得当前时间吗?

DateTime()函数不带参数就是获取时间。
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表