问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

单片机定时器实验:按键控制数码管显示

创作时间:
作者:
@小白创作中心

单片机定时器实验:按键控制数码管显示

引用
CSDN
1.
https://blog.csdn.net/2302_78924724/article/details/143924561

单片机定时器是单片机系统中一个非常重要的功能模块,广泛应用于各种需要定时或计数的场合。本文通过一个具体的实验案例,详细介绍了51单片机定时器的工作原理和应用方法,包括硬件连接、软件编程以及实验结果分析。

实验目的

  1. 掌握通过定时器扫描按键键值的基本方法;
  2. 掌握51单片机定时器工作模式和配置方法。

实验仪器、设备及材料

  1. PC 机
  2. keilC 51
  3. proteus开发工具
  4. 电路开发板

实验原理或内容

实现功能:按S7、S6按键,数码管显示数字分别加减1。

实验步骤、过程、源代码

#include <reg51.h>

sbit P3_5=P3^5;
sbit P3_7=P3^7;

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

unsigned char count;

void delay (unsigned int time){
    unsigned int j=0;
    for(;time>0;time--)
        for(j=0;j<125;j++);
}

void main (){
    count=0;
    P0=table[count];
    P2=table[count+9];
    while(1){
        if(P3_5==0){
            delay(10);
            if(P3_5==0){
                count++;
                if(count==10){
                    count=0;
                }
                P0=table[count];
            }
            while(P3_5==0);
        }
        if(P3_7==0){
            delay(10);
            if(P3_7==0){
                count--;
                if(count==-1){
                    count=9;
                }
                P2=table[count];
            }
            while(P3_7==0);
        }
    }
}

实验结果分析

通过本次LED数码管进行51定时器实验,让我知道了对教材应该熟悉,因为教材是基础的,只有把基础的搞好了才能够进行其它层次的学习。其次此次试验我还懂得了有时候可以通过软件的仿真来验证书上的一些理论行的东西。通过C语言的编程,对LED灯的控制及51定时器的应用让我对单片机理解更加明了。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号