STM32单片机自带RTC的使用
- 芯片解密#include "delay.h"
 - 芯片解密#include "sys.h"
 - 芯片解密#include "oled.h"
 - 芯片解密#include "bmp.h"
 - 芯片解密#include "rtc.h"
 - 芯片解密#include "dht11.h"
 - int main(void)
 -   {        u8 t;
 -         delay_init();                     //延时函数初始化          
 -         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2         //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
 -         OLED_Init();                        //初始化OLED
 -         OLED_ColorTurn(0);//0正常显示,1 反色显示
 -         OLED_DisplayTurn(0);//0正常显示 1 屏幕翻转显示               
 -         OLED_Clear();
 -                
 -         while(RTC_Init())                //RTC初始化        ,一定要初始化成功
 -         {
 -                 OLED_ShowString(8,6,"RTC ERROR!     ",16,1);
 -                 OLED_Refresh();
 -                 delay_ms(800);
 -                 OLED_Clear();
 -                 OLED_ShowString(8,6,"RTC Trying...  ",8,1);
 -                 OLED_Refresh();
 -                 delay_ms(800);
 -                 OLED_Clear();
 -         }       
 -        
 -         OLED_ShowString(8,6,"RTC OK!  ",8,1);
 -         OLED_Refresh();       
 -   delay_ms(800);
 -         OLED_Clear();
 -         OLED_ShowChinese(25,4,9,12,1);//12*12 年       
 -         OLED_ShowChinese(50,4,10,12,1);//12*12 月       
 -         OLED_ShowChinese(76,4,2,12,1);//12*12 日       
 -         OLED_ShowChinese(0,52,11,12,1);//12*12 温
 -         OLED_ShowChinese(13,52,13,12,1);//12*12 度
 -         OLED_ShowChinese(69,52,12,12,1);//12*12 湿
 -         OLED_ShowChinese(82,52,13,12,1);//12*12 度
 -         OLED_ShowChinese(48,52,14,12,1);//12*12 ℃       
 -         OLED_ShowChinese(116,52,15,12,1);//12*12 %       
 -         //OLED_DrawCircle(100,26,18);
 -         OLED_Refresh();
 -         while(1)
 -         {               
 -                 if(t!=calendar.sec)
 -                 {
 -                         t=calendar.sec;
 -                         OLED_ShowString(28,19,":",24,1);
 -                         OLED_ShowNum(0,5,calendar.w_year,4,12,1);               
 -                         OLED_ShowNum(38,5,calendar.w_month,2,12,1);       
 -                         OLED_ShowNum(63,5,calendar.w_date,2,12,1);
 -                         OLED_Refresh();
 -                         //switch(calendar.week)
 -                         //{
 -                         //        case 0:
 -                         //                OLED_ShowChinese(62,1,2,12,0); //12*12 日
 -                         //                break;
 -                         //        case 1:
 -                         //                OLED_ShowChinese(62,1,3,12,0); //12*12 一
 -                         //                break;
 -                         //        case 2:
 -                         //                OLED_ShowChinese(62,1,4,12,0); //12*12 二
 -                         //                break;
 -                         //        case 3:
 -                         //                OLED_ShowChinese(62,1,5,12,0); //12*12 三
 -                         //                break;
 -                         //        case 4:
 -                         //                OLED_ShowChinese(62,1,6,12,0); //12*12 四
 -                         //                break;
 -                         //        case 5:
 -                         //                OLED_ShowChinese(62,1,7,12,0); //12*12 五
 -                         //                break;
 -                         //        case 6:
 -                         //                OLED_ShowChinese(62,1,8,12,0); //12*12 六
 -                         //                break;  
 -                         //}
 -                 OLED_ShowNum(4,20,calendar.hour,2,24,1);
 -                 OLED_ShowNum(40,20,calendar.min,2,24,1);
 -                 OLED_ShowNum(68,32,calendar.sec,2,12,1);
 -                 OLED_Refresh();
 -                 if(DHT11_ReadData())  //如果DHT11读取到数据了,那么就显示                 
 -                         {  
 -                                 OLED_ShowNum(32,52,DHT11_GetTemp()/256,2,12,1);    //输出温度  
 -                                 OLED_ShowNum(100,52,DHT11_GetHem()/256,2,12,1);    //输出湿度
 -                          }  
 -                 else   //若DHT11采集不成功,那么就失败  
 -                         {  
 -                                 OLED_ShowString(32,52,"??",12,1);   
 -                                 OLED_ShowString(100,52,"??",12,1);   
 -                         }  
 -                         delay_ms(500);
 -                         delay_ms(500);  //延时,避免刷新DHT11数据太块                         
 -         }          
 - }
 - }
 
  
 
  芯片解密