登录  | 立即注册

游客您好!登录后享受更多精彩

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 函数进阶与按键

[复制链接]
发表于 2022-1-18 17:18:20 | 显示全部楼层 |阅读模式
学习笔记
学习科目: 单片机
学习安排: 函数进阶与按键
开始时间: 2022-01-18
结束时间: 2022-01-18
了解了如何来调用函数。
函数调用时一般先写在主函数的开头比如void dalay();分号必须加
使用调用函数使得逻辑更加清晰。
按键:
难点主要是按键的消抖今天仅仅学习了利用最简单的方法来进行消抖即利用延迟函数来完成(主要是增加了一个新的中间变量来完成延迟的实现)
#include<reg52.h>
unsigned char code ledchar[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
sbit led8=P2^7;                                   
sbit key1=P1^3;
void delay();

void main()
{
bit keybuff=1;
        bit backup=1;
        unsigned char cnt=0;

        P1=0x7F;
                P0=ledchar[cnt];
        while(1)
        {
        keybuff=key1;
                if(keybuff!=backup)
                {       
                        delay();
                if(keybuff==key1)
                {
                if(backup==0)
                {
                cnt++;
                        if(cnt>=10)
                        {
                        cnt=0;
                        }
                        P0=ledchar[cnt];
                }
                backup=keybuff;
                }
                }
        }
}
void delay()
{
unsigned int i=1000;
        while(i--);
}

               

好懒~~不想说~~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表