设置RTC波特率预分频值值,怎么计算的

STM32F10x参考手册;位1;ALRF:闹钟标志;第一版实时时钟(实时时钟(RTC);当32位可编程计数器达到RTC_ALR寄存器所设;存器中ALRIE=1,则产生中断;位0;SECF:秒标志;当32位可编程预分频器溢出时,此位由硬件置1,R;RTC的功能由这个控制寄存器控制;注:1任何标志位都将保持挂起状态,直到适当的RT;断已经被接受;2在复位时禁止
STM32F10x参考手册
ALRF:闹钟标志
第一版 实时时钟(实时时钟(RTC)
当32位可编程计数器达到RTC_ALR寄存器所设置的门限值,此位由硬件置1。如果RTC_CRH寄
存器中ALRIE=1,则产生中断。此位只能由软件清0。对此位写1是无效的。 0:无闹钟; 1:有闹钟。
SECF:秒标志
当32位可编程预分频器溢出时,此位由硬件置1,RTC计数器递增。因此,此标志为分辨率可编程的RTC计数器提供一个周期性的信号(通常为1秒)。如果RTC_CRH寄存器中SECIE=1,则产生中断。此位只能由软件清除。对此位写“1”是无效的。 0:秒标志条件不成立; 1:秒标志条件成立。
RTC的功能由这个控制寄存器控制。当正在前一个写操作还未完成时(RTOFF=0时),不能写RTC_CR寄存器。
注: 1 任何标志位都将保持挂起状态,直到适当的RTC_CR请求位被软件复位,表示所请求的中
断已经被接受。
2 在复位时禁止所有中断,无挂起的中断请求,并且可以对RTC寄存器进行写操作。
3 当APB1时钟不运行时,OWF、ALRF、SECF和RSF位不被更新。
4 OWF、ALRF、SECF和RSF位只能由硬件置位,由软件来清零。
5 若ALRF=1且ALRIE=1,则允许产生RTC全局中断。如果在EXTI控制器中允许产生EXTI线
17中断,则允许产生RTC全局中断和RTC闹钟中断。
6 若ALRF=1,如果在EXTI控制器中设置了EXTI线 17的中断模式,则允许产生RTC闹钟中
断;如果在EXTI控制器中设置了EXTI线 17的事件模式,则这条线上会产生一个脉冲(不会产生RTC
闹钟中断)。
8.4.3 RTC预分频装载寄存器(预分频装载寄存器(RTC_PRLH/RTC_PRLL)
预分频装载寄存器用来保存RTC预分频器的周期计数值。它们由在RTC_CR寄存器的RTOFF位写保护,并且如果RTOFF值是1,允许进行写操作。 RTC预分频装载寄存器高位(预分频装载寄存器高位(RTC_PRLH) 偏移地址:08h 只写
复位值:0000h
保留,被硬件强制为0。
PRL[19:16]:RTC预分频装载值高位
根据以下公式,这些位用来定义计数器的时钟频率: fTR_CLK = fRTCCLK/(PRL[19:0]+1)
注:不推荐使用0值。这样,无法正确的产生RTC中断和标志位。
RTC预分频装载寄存器低位(预分频装载寄存器低位(RTC_PRLL) 偏移地址:0Ch 只写
复位值:8000h
PRL[15:0]:RTC预分频装载值低位
根据以下公式,这些位用来定义计数器的时钟频率: fTR_CLK = fRTCCLK/(PRL[19:0]+1)
如果输入时钟频率是32.768KHZ(fRTCCLK),在这个寄存器上写7FFFh,可获得周期为1秒钟的
8.4.4 RTC预分频分频因子预分频分频因子寄存器分频因子寄存器(RTC_DIVH / RTC_DIVL)
在TR_CLK的每个周期里,RTC预分频器中计数器的值都会被重新设置为RTC_PRL寄存器的值。用户可读取存储在RTC_DIV寄存器里的预分频计数器的当前值,而不暂停其工作,从而获得精确的时间测量。此寄存器是只读寄存器,其值在RTC_PRL或RTC_CNT寄存器中的值发生改变后,由硬件重新装载。 RTC预分频分频因预分频分频因子寄存器高位寄存器高位(高位(RTC_DIVH) 偏移地址:10h 复位值:0000h
位15:4 位3:0
RTC_DIV[19:16]:RTC时钟分频因子高位。
RTC预分频分频因预分频分频因子寄存器低位寄存器低位(低位(RTC_DIVL) 偏移地址:14h 复位值:8000h
RTC_DIV[15:0]:RTC时钟分频因子低位。
8.4.5 RTC计数器寄存器 (RTC_CNTH / RTC_CNTL)
RTC核有一个32位可编程的计数器,可通过两个16位的寄存器访问。计数器以预分频器
产生的TR_CLK时间基准为参考进行计数。RTC_CNT寄存器用来存放计数器的计数值。他们被RTC_CR上的位RTOFF写保护,并且如果RTOFF值是1的话,允许写操作。在高或低寄存器(RTC_CNTH或RTC_CNTL)上的写操作,能够直接装载到相应的可编程计数器,并且重新装载RTC预分频器。当进行读操作时,直接返回计数器内的计数值(系统时间)。
RTC计数器寄存器高位(RTC_CNTH) 偏移地址:18h 复位值:0000h
RTC_CNT[31:16]:RTC计数器高位。
可通过读RTC_CNTH寄存器来获得RTC计数器的当前值的高位部分。要对此寄存器进行写操作,必须先通过使用RTC_CR寄存器的RTOFF位来进入配置模式。
RTC计数器计数器寄存器低位寄存器低位(低位(RTC_CNTL) 偏移地址:1Ch 复位值:0000h
RTC_CNT[15:0]:RTC计数器低位。
可通过读RTC_CNTL寄存器来获得RTC计数器的当前值的低位部分。要对此寄存器进行写操
作,必须先通过使用RTC_CR寄存器的RTOFF位来进入配置模式。
8.4.6 RTC闹钟寄存器闹钟寄存器(寄存器(RTC_ALRH/RTC_ALRL)
当可编程计数器的值与RTC_ALR中的32位值相等时,即触发一个闹钟事件,并且产生RTC闹钟中断。此寄存器被RTC_CR寄存器里的RTOFF位写保护,如果RTOFF值是1时,允许写操作。
RTC闹钟寄存器闹钟寄存器高位寄存器高位(高位(RTC_ALRH) 偏移地址:20h 只写
复位值:FFFFh
RTC_CNT[31:16]:RTC闹钟值高位。
此寄存器用来保存由软件写入的闹钟时间的高位部分。要对此寄存器进行写操作,必须先通
过使用RTC_CR寄存器的RTOFF位来进入配置模式。
RTC闹钟寄存器闹钟寄存器低位寄存器低位(低位(RTC_ALRL) 偏移地址:24h 只写
复位值:FFFFh
RTC_CNT[15:0]:RTC闹钟值低位。
此寄存器用来保存由软件写入的闹钟时间的低位部分。要对此寄存器进行写操作,必须先通
过使用RTC_CR寄存器的RTOFF位来进入配置模式。
8.5 RTC寄存器映像
RTC寄存器是16位可寻址寄存器,具体描述如下: 表8-1 RTC-寄存器映像和复位值
三亿文库包含各类专业文献、应用写作文书、幼儿教育、小学教育、中学教育、各类资格考试、文学作品欣赏、70STM32技术参考手册第8章实时时钟(RTC)等内容。 
 stm32 实时时钟rtc配置_理学_高等教育_教育专区。stm32 实时时钟(rtc)的配置方法u8 RTC_Init(void) { //启用 PWR 和 BKP 的时钟(from APB1) RCC_APB1Perip...  STM32 开发板 //RTC 实时时钟 驱动代码 //正点原子@ALIENTEK //技术论坛:www...(只允许
年) //输入参数:公历年月日 //返回值:星期号 u8 RTC_...  RTC 实时时钟说明书一:工作原理 STM32 芯片中内置 RTC 时钟,当对 RTC 进行初始化后,便可以像电子钟一样运行,通 过读取 RTC 对应的寄存器,可以获知年月日、时...  超透彻的STM32讲解资料――RTC时钟_电子/电路_工程科技_专业资料。STM32,RTC ...STM32技术参考手册第8章... 10页 2下载券 基于STM32 RTC实时时钟 13页 1下载...  STM32F4系列RTC模块中文翻译_电子/电路_工程科技_专业资料。STM32F4的实时时钟模块的翻译,M4较M3的RTC模块区别很大。英语水平有限,内容仅供参考,以英文文档为准郑州...  STM32最简单的RTC中断_电子/电路_工程科技_专业资料。此程序是我自己写的,并且经过试验的,固件库用的3.5的,适合初学者学习STM32 RTC的使用方法。今日...  STM32F10x 系列的实时时钟,可以用来进行定时报警和时间的计时。RTC 具有独立的...STM32F10x 参考手册备份... 4页 1下载券
第8章 数据库备份和恢复 58页 ...  STM32F207的RTC模块笔记_计算机软件及应用_IT/计算机_专业资料。STM32F207的RTC模块笔记STM32F207 的 RTC 模块笔记 实时时钟介绍: ???STM32F207 的实时时钟...  浅谈STM32F10X芯片RTC实时时钟_信息与通信_工程科技...图 1 简化的 RTC 框图(详见手册) 3、RTC 寄存器...在电子工程世界为您找到如下关于“预分频器”的新闻
预分频器资料下载
TIM8捕获/比较使能寄存器(TIMx_CCER) 244
13.4.10 TIM1和TIM8计数器(TIMx_CNT) 246
13.4.11 TIM1和TIM8预分频器(TIMx_PSC) 246
13.4.12 TIM1和TIM8自动重装载寄存器(TIMx_ARR) 246
13.4.13 TIM1和TIM8重复计数寄存器(TIMx_RCR) 246
13.4.14...
在正常操作期间,一次WDT 超时溢出将产生一次器件复位。如果器件处于休眠状态,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT 唤醒)。对WDTE 设置位清零可以永久性地关闭WDT。后分频器分配完全是由软件控制,即它可在程序执行期间随时更改。在例26-1 中,如果需要的预分频值不是1:1,就不需要对OPTION_REG 寄存器做初始修改。如果需要的预分频值是1:1,那么先向...
在正常操作期间,一次WDT 超时溢出将产生一次器件复位。如果器件处于休眠状态,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT 唤醒)。对WDTE 设置位清零可以永久性地关闭WDT。后分频器分配完全是由软件控制,即它可在程序执行期间随时更改。在例26-1 中,如果需要的预分频值不是1:1,就不需要对OPTION_REG 寄存器做初始修改。如果需要的预分频值是1:1,那么先向...
& 提出了一种零中频两次变频接收机频率合成方案!降低电路功耗的同时!提高了电路可靠性改进了双模预分频器的结构!提出了一种新型集成逻辑的结构锁存器采用数模混合工艺投片测试...
64K 字节的优化的外部存储器空间
– 可以对锁定位进行编程以实现软件加密
– 可以通过SPI 实现系统内编程
o JTAG 接口( 与IEEE 1149.1 标准兼容)
– 遵循JTAG 标准的边界扫描功能
– 支持扩展的片内调试
– 通过JTAG 接口实现对Flash, EEPROM, 熔丝位和锁定位的编程
o 外设特点
– 两个具有独立的预分频器和比较器功能的8 位定时器...
介绍一款2GHz÷64(65)、÷128(129)预置分频器介 绍 一 款 2GHz ÷64/65、 ÷128/129 预 置 分 频 器简 要 :本 文 介 绍 一 款 国 产 2GHz÷64/65、÷128/129 预 置 分 频 器 S E 1 2 0 3 2A。 它 在 电 气 指 标 上 已 达 到 和 MC12032 兼 容 , 在 功 能 上 增...
寄存器描述................................................................................................... 297
4.9.5 预分频器...
: 10,000 次
– 具有独立锁定位的可选Boot 代码区
通过片上Boot 程序实现系统内编程
真正的同时读写操作
– 512 字节的EEPROM
擦写寿命: 100,000 次
– 1K字节的片内SRAM
– 可以对锁定位进行编程以实现用户程序的加密
o 外设特点
– 两个具有独立预分频器8 位定时器/ 计数器, 其中之一有比较功能
– 一个具有预分频器、比较功能和捕捉功能的...
擦写寿命: 100,000 次
– 512/1K/1K 字节的片内SRAM (ATmega48/88/168)
– 可以对锁定位进行编程以实现用户程序的加密
o 外设特点
– 两个具有独立预分频器和比较器功能的8 位定时器/ 计数器
– 一个具有预分频器、比较功能和捕捉功能的16 位定时器/ 计数器
– 具有独立振荡器的实时计数器RTC
– 六通道PWM
– 8路10 位...
~ PA7)定时器/计数器:8 位 x 3 (TMR0, TMR1, TMR2)TMR1 与TMR2 可连接成为16 位定时器预分频器:3 位五个中断请求源:3 个内部中断请求:TMR0, TMR1, TMR2 计数溢出中断2个外部中断请求:PA0/RESETB0/INT0,PA5/ RESETB1/INT1 引脚中断Watchdog 定时器:WDT 以内部RC 振荡器为时钟源 (该RC 振荡器只...
预分频器相关帖子
独立预分频器的8 位定时器/ 计数器及2路PWM 通道,10位 转换器,8路单端通道,12路差分通道。  4.温度测量,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器,通用串行接口,特殊的处理器特点。  5.debugWIRE 在线调试接口,通过SPI 端口在系统内可编程,片内/ 片外中断源,12个引脚中断源,4种睡眠模式:空闲模式、ADC 噪声抑制模式、省电模式、掉电模式,内部上电复位...
, since the objective is toaccurately follow a rectified 100 or 120 Hertz sine wave with minimal amplitudeor phase distortion.图7是UC3854预调节器电路重绘以强调回路和信号路径。Unitrode UC3854里的电流环调节0.25-ohm电流取样电阻两端电压恰好是同样的方法作为...
; I/O&&引脚配置
具有独立方向控制的 11 个 I/O 引脚:PA 口 5 个、PC 口 6
一个只能作输入的 PA3 口。
高灌/拉电流可直接驱动 LED。
PA 端口引脚电平变化中断。
PA、PC 端口独立的可编程弱上拉。
&&定时器
Timer0:带 8 位可编程预分频器的 8 位定时器/计数器。
24位输入寄存器中。在接收到LE后,先前输入的24位数据根据地址位到达对应的锁存器。当ADF4111接收到反馈回来的输出频率后,首先通过预分频比例因子P,经A,B分频器,得到分频以后的回馈信号,之后输入到锁相器。与分频以后的标准频率源信号在鉴相器中比较,输出低频控制信号以控制外部VCO的频率,使其锁定在参考频率的稳定度上。
设计中采用40 MHz晶振作标准频率源信号。为了得到1 MHz的步进量...
) Timer库介绍timer.counter([value]) &&获取或设置定时计数器timer.freq([value]&& 获取或(如果设置改变预分频器和周期)设定的频率计时器.timer.init(*, freq, prescaler, period)&&初始化计时器。初始化必须是有频率(Hz)或预分频器tim.init(freq=100...
控制软件,用户选择所要设置的时钟工作方式、输出频率等参数,该软件生成其内部寄存器的值,通过SPI或I2S接口写入就完成整个芯片的配置。
CDCM6208的内部结构如图2所示。从图中可以看出,可选两路时钟输入后,首先经过一个14倍频器,作为参考时钟驱动片内VCO产生时钟信号。为了提高时钟相位噪声,倍频后信号经过一个片内的滤波器,该滤波器可以由片内提供阻容电路设置。VCO时钟功分到两路预分频器,预...
;36K字节FLASH存储器3.&&内嵌上电复位电路POR4.内嵌掉电复位电路BOR5.支持外部复位6.内部4MHz或16MHz RC振荡器(HRC)可配置为系统时钟源7.&&8K字节SRAM存储8.&&本芯片最多支持41个端口,外部可用35个端口9.&&4路16位定时器/计数器,带预分频器,扩展输入捕捉/输出调制功能...
&&& & & & //1:时钟选择
& & & &&&TIM3-&SMCR &=&&0XFFF8;& & //选择内部时钟,则由内部时钟来控制分频器
& & & & //2:分频...
;& && && &&&//获取PCLK1预分频器
& & return ((RCC_ClockFreq.PCLK1_Frequency / PeriodValue) * 8);//PCLK1预分频器
; 波特率预分频器:1...32
& & SJW:1...4,但是不大于Min{4,Phase_Seg1}
& & 在同步的时候,Phase_Seg1可以长于编程的标称时间而Phase_Seg2可以短于标称时间。
& & “数据处理时间”从采样点之后开始,它是用于决定随后发送的位电平的时间(例如,数据位、CRC位、填充位、错误标志或...
预分频器视频
预分频器创意
你可能感兴趣的标签
热门资源推荐您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
实验四 RTC实验.doc 9页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:120 &&
你可能关注的文档:
··········
··········
实验四RTC万年历实验一、实验目的1、熟悉RTC模块的内部结构2、RTC模块中断的处理过程3、掌握RTC模块的相关寄存器的操作方法和应用。二、实验要求1、使用LPC2138的RTC模块作秒中断实验,在发送秒增量中断的时取反LED灯。2、用LPC2138的RTC模块,编写一个简单万年历程序,将年、月、日、星期、时、分和秒在串口终端上显示出来。三实验设备1.电脑一台2.Proteus-ARM实验箱四、实验原理1.主要知识点概述本实验能够完整的显示出年、月、日、星期以及时间,要求对实时时钟有较好的掌握,并能熟练应用。实时时钟(RTC)提供一套计数器在系统上电和关闭操作时对时间进行测量。提供秒、分、小时、日、月、年和星期,RTC消耗的功率非常低。LPC2138的RTC时钟可由独立的32.768kHz振荡器或基于VPB时钟的可编程预分频器来提供。另外,RTC还具有专用的电源管脚Vbat,可连接到电池或其它器件使用的相同的3.3V电压上,其功能框图如下所示。图1实时时钟功能框图RTC中断的产生由中断位置寄存器(ILR)、计数器递增中断寄存器(CIIR)、报警寄存器和报警屏蔽寄存器(AMR)控制。只有转换到中断状态才能产生中断。ILR单独使能CIIR和AMR中断。CIIR中的每个位都对应一个时间计数器。如果CIIR使能用于一个特定的计数器,那么该计数器的值每增加一次就产生一个中断。报警寄存器允许用户设定产生中断的日期或时间。AMR提供一个屏蔽报警比较的机制。如果所有非屏蔽报警寄存器与它们对应的时间计数器的值相匹配时,则会产生中断。六实验内容1、使用LPC2138的RTC模块作秒中断实验,在发送秒增量中断的时取反LED灯。实验原理图画出实验流程图实验程序********************************************************************************File:Main.c*功能:使能当外部中断0有效时,控制LED1取反;********************************************************************************/#include&config.h&#defineLED11&&10/*P0.10引脚控制LED1,低电平点亮*//********************************************************************************名称:RTC_INT()*功能:外部中断EINT0服务函数,取反LED1*******************************************************************************/void__irqRTC_INT(void){uint32i;i=IO0SET;//读取当前LED1控制值if((i&LED1)==0)//控制LED1输出{IO0SET=LED1;}else{IO0CLR=LED1;}ILR=0x03;VICVectAddr=0x00;}/********************************************************************************名称:main()*功能:初始化外部中断0,外部中断1及I/O连接等*******************************************************************************/intmain(void){PINSEL0=PINSEL0&0xFFCFFFFF;IO0DIR=LED1;//设置LED1控制口为输出,其它I/O为输入IO0SET=LED1;PREINT=Fpclk/32768-1;
//设置基准时钟分频器PREFRAC=Fpclk-(Fpclk/3;CIIR=0x01;//产生设置秒值的增量产生一次中断ILR=0x03;//清楚RTC增量和报警中断标志CCR=0x01;//启动RTCVICIntSelect=0x;//设置所有通道为IRQ中断VICVectCntl0=0x20|13;//RTC通道分配到IRQSlot0,即优先级最高VICVectAddr0=(int32)RTC_INT;//设置RTC向量地址VICIntEnable=(1&&13);//使能RTCIRQEnable();//使能IRQ中断while(1);//等待中断return(0);}2、用LPC2138的RTC模块,编写一个简单万年历程序,将年、月、
正在加载中,请稍后...21ic官方微信-->
后使用快捷导航没有帐号?
查看: 2773|回复: 14
RTC自动校验的方法
&&已结帖(0)
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
看了下官方的文档,对RTC校验是否如下:
1.先不管预分频,直接得出64分频后的频率f64,然后算出实际的晶振频率f,取其整数部分为F;
2.在F为预分频系数为前提下,计算出ppm,就是(f64-(float)F/64.0)/((float)F/64.0)*1000000,
3.对ppm四舍五入后得到整数,找对应的校正值,并写入校正寄存器,并将预分频系数设置为F。
这样不管晶振频率多少,都能在一定范围内对RTC进行校正。
测试得到64分频后为511.814,计算预分频应该为32756,理论64分频频率为511.8125,ppm=(511.814-511.25*.93,取3,得到对于的校正值为7,则设置RTC预分频系数为32755,校正值为7。
请各位大大们告知是否是这种做法?另文档中的例子中得到的ppm为27.35,为何要取整为28?另说27误差为69秒,27.35大约为71秒,0.65ppm的话误差1.7秒,请问,这个1.7秒时怎么算出来的?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 365, 距离下一级还需 135 积分
资深技术员, 积分 365, 距离下一级还需 135 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
资深技术员, 积分 365, 距离下一级还需 135 积分
资深技术员, 积分 365, 距离下一级还需 135 积分
楼主的步骤基本上是对的
误差1.7秒是指对每个月,以30天计算的情况,误差0.65ppm则
30×24×/1000000 = 1.68秒
要注意,校准寄存器的作用,是指在没2^20即1048576个RTC时钟脉冲当中扣掉相应个时钟脉冲
RTC的时钟信号先通过校准寄存器,再进入预分频寄存器
明白这个原理的话,就很清楚应该怎么样校准了。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
我已按照以上方法做了校验,却发现误差比没校验前还大。
72MHZ, TIM 4分频,捕获RTC的64分频脉冲为35170个计数值,通过计算得晶振实际为32755.19HZ,取RTC为32755分频(寄存器内写32754),(55)/=5.8,取为6,对应校准值为6.
看了下8MHZ晶振的频率,为27ppm(实测),现在的问题是,设定时间后,几乎达到了每个小时差1秒的程度了。
各位看官,有何经验不妨介绍下吧,谢谢。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
主题帖子积分
专家等级:结帖率:29%打赏:0.00受赏:11.00
主题帖子积分
请通过实验找出最佳参数。
I do not teach, but I coach. I do not feed, but I seed.
欢迎访问我的博客:/BLOG_OWNER_199055.HTM
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
如果需要试验找出最佳参数的话就失去了自动校验的意义了。谢谢
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
主题帖子积分
专家等级:结帖率:29%打赏:0.00受赏:11.00
主题帖子积分
自动校验应该是一个闭环的控制,而不是开环的单向控制。
另一方面,可以通过实验找出最佳参数,再反过来检查哪里计算错了。
I do not teach, but I coach. I do not feed, but I seed.
欢迎访问我的博客:/BLOG_OWNER_199055.HTM
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
呵呵,谢谢
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 365, 距离下一级还需 135 积分
资深技术员, 积分 365, 距离下一级还需 135 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
资深技术员, 积分 365, 距离下一级还需 135 积分
资深技术员, 积分 365, 距离下一级还需 135 积分
本帖最后由 barboon 于
15:55 编辑
我觉得楼主用STM32的内部定时器来自动校准RTC思路很不错,但我很怀疑实际的可行性。
因为RTC的校准功能目的对晶振进行ppm级范围的微调。这就需要你实际测得的RTC频率非常精确可靠。
先不说用来测的8MHz晶振本身就有28ppm的误差,楼主用的定时器时钟72MHz,输入捕获本身至少引入一个脉冲长度的误差就不可忽视了。
楼主确定测量得到RTC时钟晶振32755.19Hz这个结果确实可靠吗?
事实上,在STM32的固件库里附带了一个类似的例子,用定时器校验RTC,不过使用的时钟源是STM32内部的低速振荡器,它的频率设计振荡频率是40KHz,实际可能的震荡频率在30-60KHz,经过校验以后带来的精度提升相当可观。但是用同样的方法校准本身精度比较高的外部晶振,我觉得有点悬。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
现在我对外部晶振做了自动校验,但是结果是1天快了1秒钟,确实感觉效果不理想。可能用存在误差的72M来测是有点问题,但库里的例子只不过是将晶振由外部的改成了内部的,还是使用72M来测的,这个我估计也是不那么准,只不过跟他原来的精度比是提高不少而已,应该还是达不到高精度的要求的。
想要提高RTC的精度,只有先将测量的基准误差尽量的小,这样测出来的结果才准确点。
难不成还真的要我外加个独立的RTC不成?
谢谢回复。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深工程师, 积分 11272, 距离下一级还需 8728 积分
资深工程师, 积分 11272, 距离下一级还需 8728 积分
主题帖子积分
专家等级:结帖率:75%
主题帖子积分
资深工程师, 积分 11272, 距离下一级还需 8728 积分
资深工程师, 积分 11272, 距离下一级还需 8728 积分
应该这么进行校准:首先需要一个准确的外部信号,比如GPS来的秒信号,或者其它很准确的信号;然后通过定时器来测量RTC的晶振误差,然后再对该误差进行校准。
有一点用注意STM32的HSE晶振来校准RTC的32768Hz晶振是不行的,因为通常HSE晶振误差比32768Hz晶振的误差大。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
主题帖子积分
专家等级:结帖率:29%打赏:0.00受赏:11.00
主题帖子积分
现在我对外部晶振做了自动校验,但是结果是1天快了1秒钟,确实感觉效果不理想。可能用存在误差的72M来测是有点问题,但库里的例子只不过是将晶振由外部的改成了内部的,还是使用72M来测的,这个我估计也是不那么准, ...
freny 发表于
没有一个准确地基准,如何能得到精确的校验?
这就好比,你要想把桌子擦干净,就必须使用干净的抹布,如果擦一遍后还不干净,就要把抹布洗洗干净再擦,脏的抹布是无论如何不能擦干净桌子的。
I do not teach, but I coach. I do not feed, but I seed.
欢迎访问我的博客:/BLOG_OWNER_199055.HTM
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
主题帖子积分
专家等级:结帖率:0%
主题帖子积分
中级技术员, 积分 136, 距离下一级还需 164 积分
中级技术员, 积分 136, 距离下一级还需 164 积分
呵呵,老大你的比喻还蛮贴切的哈,呵呵,谢谢各位,已决定用外部RTC来,初步选用DS1302,就用13,14,15管脚。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
高级技术员, 积分 903, 距离下一级还需 97 积分
高级技术员, 积分 903, 距离下一级还需 97 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
高级技术员, 积分 903, 距离下一级还需 97 积分
高级技术员, 积分 903, 距离下一级还需 97 积分
想问下楼主,你在做RTC自动校验时,BKP_SetRTCCalibrationValue函数是怎么调用的,是实时调用?还是每30天调用一次?
不会是因为你懒
主题帖子积分
助理工程师, 积分 1361, 距离下一级还需 639 积分
助理工程师, 积分 1361, 距离下一级还需 639 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
助理工程师, 积分 1361, 距离下一级还需 639 积分
助理工程师, 积分 1361, 距离下一级还需 639 积分
误差有那么大?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
晶莹之水滴
发帖类勋章
技术高手奖章
人才类勋章
时间类勋章
荣誉元老奖章
等级类勋章
坚毅之洋流
发帖类勋章
时间类勋章
技术领袖奖章
人才类勋章
核心会员奖章
等级类勋章
技术新星奖章
人才类勋章
涓涓之细流
发帖类勋章
时间类勋章}

我要回帖

更多关于 波特率预分频值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信