找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2060|回復(fù): 1
收起左側(cè)

STM32指針式時鐘代碼

[復(fù)制鏈接]
ID:1005190 發(fā)表于 2022-2-24 17:22 | 顯示全部樓層 |閱讀模式
分享一個基于STM32F103ZET6的指針式時鐘,非GUI設(shè)計。

單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"       
  7. #include "usmart.h"         
  8. #include "rtc.h"



  9. int main(void)
  10. {         
  11.         u8 t=0;       
  12.         delay_init();                     //延時函數(shù)初始化          
  13.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  14.         uart_init(115200);                 //串口初始化為115200
  15.         LED_Init();                             //LED端口初始化
  16.         LCD_Init();                                
  17.         usmart_dev.init(SystemCoreClock/1000000);        //初始化USMART       
  18.         RTC_Init();                                  //RTC初始化
  19.   Watch_mark();    //指針式時鐘刻度顯示
  20.         Pointer();      //指針跳動顯示函數(shù)

  21.          
  22.        
  23.         while(1)
  24.         {                                                                    
  25.                 if(t!=calendar.sec)
  26.                 {
  27.                         t=calendar.sec;
  28.             
  29.                 POINT_COLOR=RED;
  30.                 LCD_ShowNum(10,240,calendar.w_year,4,24);                                                                          
  31.                 LCD_ShowNum(60,240,calendar.w_month,2,24);                                                                          
  32.                 LCD_ShowNum(90,240,calendar.w_date,2,24);
  33.                 Pointer();         
  34.                         switch(calendar.week)
  35.                         {
  36.                                 case 0:
  37.                                         LCD_ShowString(130,240,200,24,24," Sunday ");
  38.                                         break;
  39.                                 case 1:
  40.                                         LCD_ShowString(130,240,200,24,24," Monday ");
  41.                                         break;
  42.                                 case 2:
  43.                                         LCD_ShowString(130,240,200,24,24," Tuesday ");
  44.                                         break;
  45.                                 case 3:
  46.                                         LCD_ShowString(130,240,200,24,24," Wednesday ");
  47.                                         break;
  48.                                 case 4:
  49.                                         LCD_ShowString(130,240,200,24,24," Thursday ");
  50.                                         break;
  51.                                 case 5:
  52.                                         LCD_ShowString(130,240,200,24,24," Friday ");
  53.                                         break;
  54.                                 case 6:
  55.                                         LCD_ShowString(130,240,200,24,24," Saturday ");
  56.                                         break;  
  57.                         }
  58.                         LCD_ShowNum(55,280,calendar.hour,2,24);                                                                          
  59.                         LCD_ShowNum(103,280,calendar.min,2,24);                                                                          
  60.                         LCD_ShowNum(151,280,calendar.sec,2,24);
  61.                 }                                                          
  62.         };        
  63. }
復(fù)制代碼

所有資料51hei附件下載:
STM32指針式時鐘顯示.7z (241.54 KB, 下載次數(shù): 22)


評分

參與人數(shù) 1黑幣 +10 收起 理由
admin + 10 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:608154 發(fā)表于 2022-2-26 13:30 來自觸屏版 | 顯示全部樓層
PLC和STM32到底學(xué)哪個好?
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表