• 基于stm32的秒表计时器设计系统Proteus仿真


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

    126-基于stm32的秒表计时器设计系统Proteus仿真(源码+仿真+全套资料)

    功能讲解:

    采用stm32单片机作为控制器,数码管来显示秒表时间,三个按键作为开始 清零 暂停来控制秒表的计时,秒表可以显示小数点后面一位,最大可以显示999.9s,全套资料齐全:

    下面是程序部分展示:

    //驱动数码管的函数
    //mode =0表示共阳,mode=1表示共阴,可以通过这个修改
    //m是要显示的数字,比如1.0就是m=10,放大10倍
    void Show_num(u16 m)
    {
        u8 num=0,n=0;
        static u8 temp_flag=0;
        //数码管消隐
        SEG1=0;SEG2=0;SEG3=0;SEG4=0;
        switch(temp_flag)
        {
            case 0://左侧第1位数码管        
                n=m/1000;//取数据
                num=CAseg_table[n];//查询数码管的断码表
                Drv_SEG(num);
                SEG1=1;//打开数码管显示
                temp_flag++;
            break;
            case 1://左侧第2位数码管
                
                n=m%1000/100;//取数据
                num=CAseg_table[n];//查询数码管的断码表
                Drv_SEG(num);
                SEG2=1;//打开数码管显示
                temp_flag++;
            break;
            case 2://左侧第3位数码管
                
                n=m%100/10;//取数据
                num=CAseg_table[n]&0x7f;//查询数码管的断码表
                Drv_SEG(num);
                SEG3=1;//打开数码管显示
                temp_flag++;
            break;
            case 3://左侧第4位数码管
                
            n=m%10;//取数据
            num=CAseg_table[n];//查询数码管的断码表
            Drv_SEG(num);
            SEG4=1;//打开数码管显示
            temp_flag=0;
            break;
        }
        
        Delay_ms(10);//延时
    }

    //获取独立按键数据
    u8 Get_key_num()
    {
        u8 temp_key=0;
        static u8 flag=0;
        if((flag==0)&&((K1==0)||(K2==0)||(K3==0)))
        {
            flag=1;//按键只获取一次按键数值
            SysTick_Delay_Ms(10);//消除抖动
            //如果有对应的按键按下就返回对应按键数值
            if(K1==0)
            {temp_key=1;}
            else if(K2==0)
            {temp_key=2;}
            else if(K3==0)
            {temp_key=3;}

        }
        else if((K1==1)&&(K2==1)&&(K3==1))
        {
            flag=0;//所有按键都弹起就清除标志
        }
        return temp_key;
    }

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

    https://pan.baidu.com/s/1dR0AqLPzxxL7pwfptJW4kg?pwd=hxqa

  • 相关阅读:
    Oracle Linux 8.8 发布 - Oracle 提供支持 RHEL 兼容发行版
    matlab的矩阵常用操作方法
    python+unittest+requests+HTMLRunner搭建接口测试框架,执行用例请求多个不同请求方式的接口
    css新特性?
    js 8位字母数组组合校验
    常用的OLED透明显示屏款式,有几种?
    Hive 和 HDFS、MySQL 之间的关系
    ardupilot 中电机输出逻辑及电机转轴状态分析
    机器学习笔记之EM算法(五)广义EM的总结与其他变种形式
    Nacos 配置中心--多配置文件的优先级
  • 原文地址:https://blog.csdn.net/m0_74295839/article/details/127836480