找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2640|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

HC32F030開發(fā)板所實(shí)現(xiàn)的電子時(shí)鐘

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:776997 發(fā)表于 2020-10-11 02:07 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
HC32F030HC32L136不同,它自身沒有內(nèi)置硬件的萬年歷 RTC,要想實(shí)現(xiàn)與RTC類似的功能只能借助于systick,利用秒信號(hào)來進(jìn)行計(jì)時(shí),并通過程序來完成時(shí)間的進(jìn)制轉(zhuǎn)換。
實(shí)現(xiàn)電子時(shí)鐘功能的主程序如下:
  1. int32_t main(void)
  2. {
  3. stc_gpio_config_t stcGpioCfg;
  4. Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);
  5. delay1ms(500);
  6. App_OledInit();        
  7. OLED_VCC();
  8. OLED_GND();
  9. OLED_Init();
  10. OLED_Clear();
  11. OLED_ShowString(0,0,"HC32F030 TEST",16);
  12. OLED_ShowString(0,2,"OLED DISPLAY",16);
  13. OLED_ShowCHinese(0, 4, 0);
  14. OLED_ShowCHinese(16, 4, 1);
  15. OLED_ShowCHinese(32, 4, 2);
  16. OLED_ShowCHinese(48, 4, 3);
  17. OLED_ShowCHinese(64, 4, 4);
  18. OLED_ShowString(0,6,"   :  :",16);
  19. stcGpioCfg.enDir = GpioDirOut;
  20. stcGpioCfg.enDrv = GpioDrvH;
  21. stcGpioCfg.enPuPd = GpioPd;
  22. stcGpioCfg.enOD = GpioOdDisable;
  23. Gpio_Init(GpioPortD, GpioPin5, &stcGpioCfg);
  24. SysTick_Config(SystemCoreClock);
  25. while (1)
  26. {
  27. OLED_ShowNum(8,6,hh,2,16);
  28. OLED_ShowNum(32,6,mm,2,16);
  29. OLED_ShowNum(56,6,ss,2,16);
  30. }
  31. }
復(fù)制代碼

顯示計(jì)時(shí)的處理函數(shù)為:
  1. void SysTick_Handler(void)
  2. {
  3. static uint8_t u8Flag = TRUE;
  4. Gpio_WriteOutputIO(GpioPortD, GpioPin5, u8Flag);
  5. ss++;
  6. if(ss==60)
  7. {
  8. mm++;
  9. ss=0;
  10. }
  11. if(mm==60)
  12. {
  13. hh++;
  14. mm=0;
  15. }
  16. if(hh==24)
  17. {
  18. hh=0;
  19. }
  20. u8Flag = !u8Flag;
  21. }
復(fù)制代碼
程序下載后,其運(yùn)行效果如圖1和圖2所示。

1  計(jì)時(shí)效果1

2計(jì)時(shí)效果2
工程文件:

rtc_systick.rar

6.41 KB, 下載次數(shù): 16, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:33522 發(fā)表于 2020-10-17 19:18 | 只看該作者
你這個(gè)是軟件模擬IIC驅(qū)動(dòng),還是內(nèi)部硬件IIC驅(qū)動(dòng)的呢
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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