你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1559|回复: 8

mbed之RCT打印时间

[复制链接]

27

主题

58

回帖

0

蝴蝶豆

中级会员

最后登录
2017-3-30
发表于 2015-1-28 15:10:59 | 显示全部楼层 |阅读模式
RTC由两个主要部分组成。第一部分(APB1接口)用来和 APB1总线相连。此单元还包含一组 16位寄存器,可通过 APB1总线对其进读写操作。APB1接口以 APB1总线时钟为时钟,用来与 APB1总线接口。
另一部分(RTC核)由一系可编程计数器组成,分成两个主要模块。第一个模块是 RTC的预分频模块,它可编程产生最长为 1秒的 RTC时间基准 TR_CLK。RTC的预分频模块包含一个 20位的可编程分频器(RTC预分频器)。在每个TR_CLK周期中,如果在 RTC_CR 寄存器中设置相应允许位,则 RTC产生一个中断(秒中断)。第 2个模块是一个 32位的可编程的计数器,它可被初始化为当前的系统时间。系统时间以 TR_CLK速增长并与存储在 RTC_ALR寄存器中的可编程的时间相比较,如果 RTC_CR控制寄存器中设置相应允许位,则比较匹配时将产生一个闹钟中断
RTC初始化程序
void RTC_configuration()
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP|RCC_APB1Periph_PWR,ENABLE);
PWR_BackupAccessCmd(ENABLE);//使能RTC后备寄存器的写
BKP_DeInit();//BKP寄存器全部设为缺省值
RCC_LSEConfig(RCC_LSE_ON);  //RCC打开了LSE时钟
while(RCC_GetFlagStatus(RCC_FLAG_LSERDY)==RESET);//等待LSE就绪,一般来说,如果谐振不对,就会死在这里,实际代码请慎重
RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);//RTC使用时钟源LSE
RCC_RTCCLKCmd(ENABLE);//RTC的时钟开启
RTC_WaitForSynchro();//RTC等待同步,
RTC_WaitForLastTask();//这个代码在RTC中常常出现,类似于等待就绪的含义
//RTC_ITConfig(RTC_IT_SEC, ENABLE);//RTC秒中断
RTC_WaitForLastTask();//
RTC_SetPrescaler(32767);//RTC预分频,32768HZ,分为一秒一个振荡,RTC period = RTCCLK/RTC_PR = (32.768KHz)/(32767+1)
RTC_WaitForLastTask(); //等待同步
PWR_BackupAccessCmd(DISABLE);//禁止RTC后备寄存器的写      
}
MBED的程序:
#include "mbed.h"
Serial pc(SERIAL_TX, SERIAL_RX);
DigitalOut myled(LED1);

int main() {
   
    pc.printf("RTC example\n");
    set_time(1387188323); // Set RTC time to 16 December 2013 10:05:23 UTC
    pc.printf("Date and time are set.\n");

    while(1) {

        time_t seconds = time(NULL);

        //printf("Time as seconds since January 1, 1970 = %d\n", seconds);
        
        pc.printf("Time as a basic string = %s", ctime(&seconds));

        //char buffer[32];
        //strftime(buffer, 32, "%I:%M:%S %p\n", localtime(&seconds));
        //printf("Time as a custom formatted string = %s", buffer);

        myled = !myled;      
        wait(1);
    }
}
运行结果
QQ截图20150128150625.png

<
回复

使用道具 举报

27

主题

58

回帖

0

蝴蝶豆

中级会员

最后登录
2017-3-30
 楼主| 发表于 2015-1-28 15:11:45 | 显示全部楼层
set_time(1387188323); // Set RTC time to 16 December 2013 10:05:23 UTC这句还在研究
回复 支持 反对

使用道具 举报

7

主题

184

回帖

0

蝴蝶豆

金牌会员

最后登录
2019-8-28
发表于 2015-1-28 15:44:26 | 显示全部楼层
回复 支持 反对

使用道具 举报

307

主题

3125

回帖

0

蝴蝶豆

论坛元老

最后登录
2020-7-17
发表于 2015-1-28 16:49:40 | 显示全部楼层
楼主直接copy过来的吧,注意发帖要有自己的内容,提高帖子质量
回复 支持 反对

使用道具 举报

71

主题

1714

回帖

1

蝴蝶豆

论坛元老

最后登录
2020-12-7
发表于 2015-1-28 16:49:48 | 显示全部楼层
标题写成RCT了。
回复 支持 反对

使用道具 举报

41

主题

2476

回帖

282

蝴蝶豆

论坛元老

最后登录
2020-12-8
发表于 2015-1-29 09:15:05 | 显示全部楼层
学习              
回复 支持 反对

使用道具 举报

27

主题

58

回帖

0

蝴蝶豆

中级会员

最后登录
2017-3-30
 楼主| 发表于 2015-2-2 18:57:47 | 显示全部楼层
RCT RemoteComputerTerminal: 远程计算机终端
RTC是RTC: 实时时钟(Real Time Clock)
回复 支持 反对

使用道具 举报

27

主题

58

回帖

0

蝴蝶豆

中级会员

最后登录
2017-3-30
 楼主| 发表于 2015-2-2 18:58:24 | 显示全部楼层
不知道怎么去修改已发布的文章
回复 支持 反对

使用道具 举报

8

主题

235

回帖

0

蝴蝶豆

金牌会员

最后登录
2018-12-7
发表于 2015-2-5 00:16:58 来自手机 | 显示全部楼层
加油楼主
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版