RTC的时钟可以选择四种时钟HSE/HIS/LSE/LSI,如下图所示。相比STM32的RTC需要相关软件配合才能RTC功能。STM8L更加灵活,相关寄存器就有33个,而且是硬件实现的,缺点是没有独立的RTC供电的电源。
实时时钟的主要代码:
void main(void)
{
u8 temp=0;
/* Infinite loop */
/* Select LSE (32.768 KHz) as RTC clock source */
CLK_RTCClockConfig(CLK_RTCCLKSource_LSE, CLK_RTCCLKDiv_1);
CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);
LCD_GLASS_Init();
Calendar_Init();
while (1)
{
RTC_GetTime(RTC_Format_BIN, &RTC_TimeStr);
temp=RTC_TimeStr.RTC_Seconds;
while(temp==RTC_TimeStr.RTC_Seconds)//查询等待1s
{
RTC_GetTime(RTC_Format_BIN, &RTC_TimeStr);
}
Time_Show();
}
}
关键字:STM8L 探索套件 学习笔记 RTC 实时时钟
引用地址:
STM8L探索套件学习笔记-RTC实时时钟(六)
推荐阅读最新更新时间:2024-03-16 14:40
MSP432安装与环境配置(ccs) 学习笔记
学习笔记 关闭电脑病毒防护 继续 选择ccs的安装文件路径 选择要安装的类型 选择使用工作区目录存储其首选项和开发文件路径 使用usb接入432 关闭安装msp432ware 安装目录请指定安装MSP432Ware的目录 等待安装完成 再次启动后,如果打不开,关闭防火墙。 重要参考资料 历程代码可下载导入 “锤子”代码的编译,“臭虫”为代码的烧入 第一个运行,第二个为停止 完成
[单片机]
STM8L151C8学习笔记3:OLED驱动
因为之后的工程需要用到ADC采集,这里我先将OLED驱动先写好,搭建好人机交互界面,一边后续对参数的显示。 这里我使用的是0.96寸的I2C屏(4 Pins)/SPI屏(7-Pins),实物图如下: 我主要是用了条件编译的写法,来整合两个协议的驱动。 准备工作 这里我准备将I2C和SPI协议的屏幕整合到同一文件OLED.C中。所以我准备了一下两份OLED驱动(写STM32时用过)的源码,以下分别是 I2C协议 SPI协议 (以上两个驱动整合到最后的OLED整合包中) 整合工作 1.整合不兼容函数 代码如下: #elif OLED_MODE == 1 //仅I2C可用函数 /**********
[单片机]
现场总线CANopen学习总结笔记四---对象字典
4.3 对象字典
对象字典是所有数据结构的集合,这些数据涉及设备的应用程序、通信以及状态机,对象字典利用对象来描述CANopen 设备的全部功能,并且它也是通信接口与应用程度之间的接口。
CANopen协议已经将对象字典进行分配,用户可以通过同一个索引和子索引获得所有设备中的通信对象,以及用于某种设备类别的对象。
4.3.1 对象字典的分配
在索引6000h~9FFFh中,可以找到用于标准化设备子协议的对象描述。一个复杂的现场设备包括多个CANopen设备,CANopen设备里又包含一个通信专用的设备状态机和多个逻辑设备,而每个逻辑设备又包含多个虚拟设备。
一个现场设备可以包含一个或多个CANopen设
[嵌入式]
C51单片机学习笔记之矩阵键盘
简介 矩阵键盘一般为4×4或4×3的。矩阵键盘的判断方式分按行扫描和按列扫描。 简单说就是给全体一个高电平,然后给一个按键的一端附上低电平,再判断另一端是否为低电平。 原理图 代码部分 #include void delay()//延时函数 { unsigned int i; for(i=0;i 30000;i++); } unsigned char MatrixKey() { unsigned char KeyNumber;//定义一个返回值 P1=0xFF;//全体给高电平 P1_0=0;//一端给低电平 if(P1_4==0)//判断另一端是否为低电平 { delay(); while(P1
[单片机]
STM32F10x 学习笔记5(USART实现串口通讯 1)
STM32F10x 系列单片机中都包含了USART 模块,所谓USART,就是通用同步异步收发器。通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。 从前面的介绍可知USART模块功能非常的强大。这里我只简单讲讲如何用USART模块来实现标准EIA-232 串口通讯。 用过单片机的人肯定都接触过串口,设置串口无非就是设置波特率、数据位、停止位、奇偶校验位。发送接收也就三种
[单片机]
【ARM学习笔记】实验三:S3C2440A与内存SDRAM连接实验
前文讲到了存储控制器对外引出了8根片选信号线,分别对应8个BANK,每个BANK的地址空间大小为128MB,共计1GB的物理寻址空间 在8个BANK中,BANK0占用总线地址0x00000000~0x07FFFFFF,而CPU在上电后会从总线地址0x00000000读取指令执行,只能通过硬件引脚OM1和OM0配置成16bit或32bit的位宽,一般情况下,BANK0都是用来连接Nor Flash作为启动设备用的 BANK1~BANK5可以随意连接具备类内存接口的ROM和SRAM,支持8bit,16bit和32bit这3种位宽 BANK6和BANK7则除了连接具备类内存接口的ROM和SRAM,还可以用来连接SDRAM,因
[单片机]
STM32入门学习笔记之SD卡基础读写实验4
(2)创建sdio_sdcard.c文件,并输入以下代码。 #include sdio_sdcard.h #include string.h SD_CardInfo SDCardInfo ; //SD卡信息 u8 CardType=SDIO_STD_CAPACITY_SD_CARD_V1_1 ; //SD卡类型 /*************************************************** Name :SDIO_Clock_Set Function :SDIO发送命令函数 Paramater : cmdindex:命令
[单片机]
51单片机入门 - 学习笔记
什么是单片机 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。 不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。
[单片机]