基于stm32单片机多功能可调时钟闹钟万年历计时器闹铃提醒Proteus仿真

编程入门 行业动态 更新时间:2024-10-13 22:23:58

基于stm32单片机多功能可调时钟闹钟万年历计时器<a href=https://www.elefans.com/category/jswz/34/1749795.html style=闹铃提醒Proteus仿真"/>

基于stm32单片机多功能可调时钟闹钟万年历计时器闹铃提醒Proteus仿真

资料编号:148   下面是相关功能视频演示:

148-基于stm32单片机多功能可调时钟闹钟万年历计时器闹铃提醒Proteus仿真(源码+仿真+原理图+PCB)

本设计采用stm32单片机作为主控,LCD1602显示时间,采用按键来调节时间和调节闹铃的时间,当闹铃时间到达,LED闪烁进行提醒,全套资料齐全:

下面是该资料的程序部分展示:

int main(void)
{
    bool i = 0;
  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();
  /* Configure the system clock */
  SystemClock_Config();
    delay_init(10);                       //初始化延时函数
  TIM3_Init(2400-1, 72-1); // 10ms
    MX_RTC_Init();    
    
    Key_Init();
    Beep_Init();
    LCD_Init();
    
    sAlrm_g.Alm_Hour = 0;
    sAlrm_g.Alm_Min  = 0;
    sAlrm_g.Alm_Sec  = 10;

  while(1)
  {
        switch(set_mode)
        {
            case 0:
                HAL_RTC_GetDate(&hrtc, &sDate_g, RTC_FORMAT_BIN);
                HAL_RTC_GetTime(&hrtc, &sTime_g, RTC_FORMAT_BIN);                
                Conv_Disp_Data(0);
                LCD_write_string(0, 0, (char*)temp_line_one);
                LCD_write_string(0, 1, (char*)temp_line_two);
            break;
            
            case 1:
                Conv_Disp_Data(i*1);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;
            
            case 2:
                Conv_Disp_Data(i*2);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;
            
            case 3:
                Conv_Disp_Data(i*3);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;
            
            case 4:
                Conv_Disp_Data(i*4);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;
            
            case 5:
                Conv_Disp_Data(i*5);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;
            
            case 6:
                Conv_Disp_Data(i*6);
                i = !i;
                LCD_write_string(0, 0, (char*)temp_line_one);
            break;

 下面是该资料的PCB展示:

下面是该资料的原理图展示: 

下面是该资料的分享下载链接:

=mkri 

更多推荐

基于stm32单片机多功能可调时钟闹钟万年历计时器闹铃提醒Proteus仿真

本文发布于:2024-02-06 15:51:47,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1750121.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:闹铃   可调   计时器   多功能   单片机

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!