|
这篇文章将来测评AT32A403A的硬件RTC。
我选用的OLED是市面上常见的0.96寸OLED,它支持I2C和SPI接口,这里我用AT32的硬件I2C将其驱动。
首先,在hardware文件夹中新建RTC.c等C文件及其对应的h头文件。新建的RTC.c文件源于官方提供的RTC例程,位置在AT32A403A_Firmware_Library_V2.0.1\project\at_start_a403a\examples\rtc\calendar\src里面
第二步,通过WorkBench配置AT32A403A的硬件RTC,记得要使能外部的32.768K晶振,是在CRM模块使能,要选择时钟振荡器。然后在时钟配置里面选择外部低速时钟lext,不然会选择到内置的lick作为时钟源,其为40khz,精度差。
最后在main函数里面放入对应的API,这里将RTC初始化和设置时间分离开,并将读取到的时间显示在OLED上。
这是最后的效果