基于STM32的RTC顯示
單片機源程序如下:
- /*********************************************************************************************
- 模板制作: 杜洋工作室/洋桃電子
- 程序名: 數碼管RTC顯示程序
- 編寫人: 杜洋
- 編寫時間: 2018年2月2日
- 硬件支持: STM32F103C8 外部晶振8MHz RCC函數設置主頻72MHz
- 修改日志:
- 1-
-
-
- 說明:
- # 本模板加載了STM32F103內部的RCC時鐘設置,并加入了利用滴答定時器的延時函數。
- # 可根據自己的需要增加或刪減。
- *********************************************************************************************/
- #include "stm32f10x.h" //STM32頭文件
- #include "sys.h"
- #include "delay.h"
- #include "rtc.h"
- #include "TM1640.h"
- int main (void){//主程序
- u8 c=0x01;
- RCC_Configuration(); //系統時鐘初始化
- RTC_Config(); //RTC初始化
- TM1640_Init(); //TM1640初始化
- while(1){
- if(RTC_Get()==0){ //讀出RTC時間
- TM1640_display(0,rday/10); //天
- TM1640_display(1,rday%10+10);
- TM1640_display(2,rhour/10); //時
- TM1640_display(3,rhour%10+10);
- TM1640_display(4,rmin/10); //分
- TM1640_display(5,rmin%10+10);
- TM1640_display(6,rsec/10); //秒
- TM1640_display(7,rsec%10);
- TM1640_led(c); //與TM1640連接的8個LED全亮
- c<<=1; //數據左移 流水燈
- if(c==0x00)c=0x01; //8個燈顯示完后重新開始
- delay_ms(125); //延時
- }
- }
- }
- /*
- 【變量定義】
- u32 a; //定義32位無符號變量a
- u16 a; //定義16位無符號變量a
- u8 a; //定義8位無符號變量a
- vu32 a; //定義易變的32位無符號變量a
- vu16 a; //定義易變的 16位無符號變量a
- vu8 a; //定義易變的 8位無符號變量a
- uc32 a; //定義只讀的32位無符號變量a
- uc16 a; //定義只讀 的16位無符號變量a
- uc8 a; //定義只讀 的8位無符號變量a
- #define ONE 1 //宏定義
- delay_us(1); //延時1微秒
- delay_ms(1); //延時1毫秒
- delay_s(1); //延時1秒
- GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1)); //LED控制
- */
復制代碼
所有資料51hei提供下載:
1-2-17-數碼管RTC顯示程序.7z
(194.3 KB, 下載次數: 76)
2019-1-9 18:17 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|