2018-10-18 HAL库 WWDG RTC

发现并解决的问题:

1 IWDG与WWDG的区别

①IWDG是12位递减计数器,递减到0产生中断复位,要设定计数器初值;WWDG是7位递减计数器,递减到64(0x40)产生中断复位,要设定计数器初值和窗口值。

②IWDG须在计数器递减到0之前喂狗;WWDG须在计数器递减到窗口值与64之间时喂狗。

③IWDG无中断;WWDG有中断,通常在中断服务函数中(HAL库对应HAL_WWDG_EarlyWakeupCallback)保存重要数据并喂狗,中断服务函数要在计数器递减到63(0x3F)之前完成,否则会产生复位。

④IWDG使用内部低速时钟(约32kHz),精度低;WWDG使用系统时钟APB1,精度高。

2 RTC设定

RTC由后备区域管理,有独立的电源和时钟,只需在第一次上电时配置时间和日期,配置后在BKR寄存器写入特定值(用户自定义),标志配置完成。之后每次上电再读取该寄存器,如果与特定值相匹配,则无须再进行初始化。

每次系统复位后,为防止对后备区域进行意外写操作,会自动禁止访问后备寄存器和RTC,如果要重新配置时间和日期,先要取消备份区域写保护。RTC写保护寄存器为RTC_WPR,低8位有效,依次写入0xCA、0x53可解锁。在HAL库中,该步骤被封装在库函数HAL_RTC_Init中,定义为宏__HAL_RTC_WRITEPROTECTION_DISABLE。

目前进度:

完成所有外设调试,开会讨论须重做while(1)大循环,细化MPPT算法内容与判定条件。

思路:

明天在购入太阳能板和蓄电池的基础上进行MPPT算法调试,确定MPPT算法各判定条件。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 陷阱分发 陷阱(trap)指的是这样一种机制,当异常或中断发生时,处理器捕捉到一个执行线程,并且将控制权转移到...
    kotw_zjc阅读 1,306评论 0 0
  • 1 综述 1.1 时钟源 在STM32中,一共有5个时钟源,分别是HSI、HSE、LSI、LSE、PLL。 HSI...
    hackvilin阅读 3,604评论 0 6
  • SPI通信实验 SPI简介 串行外设接口(Serial Peripheral Interface Bus,SPI)...
    btskyrmb阅读 9,796评论 1 12
  • 1. 基础知识 1.1、 基本概念、 功能 冯诺伊曼体系结构1、计算机处理的数据和指令一律用二进制数表示2、顺序执...
    yunpiao阅读 5,507评论 1 22
  • 转载自 https://blog.csdn.net/csshuke/article/details/7889991...
    microchip阅读 247评论 0 1