当前位置: 首页 > news >正文

蓝桥杯单片机大模板(西风)

#include <REGX52.H>
#include "Key.h"
#include "Seg.h"


//变量声明区 
unsigned char Key_Val,Key_Down,Key_Old;//按键扫描专用变量
unsigned char Key_Slow_Down;//按键减速专用变量 10ms
unsigned int Seg_Slow_Down;//按键扫描专用变量 500ms
unsigned char Seg_Pos;//数码管扫描变量
unsigned char Seg_Buf[6]={1,2,3,4,5,6};//数码管显示数据存放数组


//按键处理函数
void Key_Proc()
{
    if(Key_Slow_Down)return ;
    Key_Slow_Down=1;//按键减速程序
    
    Key_Val=Key_Read();//读取按键的键码值
    Key_Down=Key_Val&(Key_Val^Key_Old);//捕捉下降沿
    Key_Old=Key_Val;//辅助扫描
    
    switch(Key_Down)
    {
    
    }
}


//信息处理函数,显示信息
void Seg_Proc()
{
if(Seg_Slow_Down)return ;
    Seg_Slow_Down=1;//数码管减速程序

}


//其他显示函数
void Led_Proc()
{

}


//定时器0初始化函数
void Timer0Init(void)        //1毫秒@12.000MHz
{
    //AUXR &= 0x7F;        //定时器时钟12T模式
    TMOD &= 0xF0;        //设置定时器模式
    TMOD |= 0x01;        //设置定时器模式
    TL0 = 0x18;        //设置定时初值
    TH0 = 0xFC;        //设置定时初值
    TF0 = 0;        //清除TF0标志
    TR0 = 1;        //定时器0开始计时
    ET0=1;
    EA=1;
}


//定时器0中断服务函数,名字可以随便取
void Timer0Server() interrupt 1
{
    TL0 = 0x18;        //设置定时初值
    TH0 = 0xFC;        //设置定时初值
    
    if(++Key_Slow_Down==10)Key_Slow_Down=0;
    if(++Seg_Slow_Down==500)Seg_Slow_Down=0;

if(++Seg_Pos==6)Seg_Pos=0;
    Seg_Disp(Seg_Pos,Seg_Buf[Seg_Pos];
}


//main函数
void main()
{
    Timer0Init();
    while(1)
    {
        Key_Proc();
        Seg_Proc();
        Led_Proc();
    }
}

相关文章:

  • Java 大视界 -- 边缘计算与 Java 大数据协同发展的前景与挑战(85)
  • linux-带宽性能压测-全解iperfwgetspeedtest-cli
  • 【第9章:计算机视觉实战—9.4 计算机视觉在其他领域的应用探索】
  • 2021年下半年软件设计师下午试卷题型和考点总结(附真题及答案解析)
  • AI大模型的技术突破与传媒行业变革
  • 语音识别(实时语音转录)——funasr的详细部署和使用教程(包括实时语音转录)
  • Unity CommandBuffer绘制粒子系统网格显示
  • 【漫话机器学习系列】094.交叉熵(Cross-Entropy)
  • 【LeetCode】15.三数之和
  • Java 实现简单动态字符串
  • 机器学习--逻辑回归模型
  • MyBatis映射文件常用元素详解与示例
  • 青少年编程与数学 02-009 Django 5 Web 编程 16课题、权限管理
  • 【2025最新计算机毕业设计】基于SpringBoot+Vue药管家家庭医药品回收系统【提供源码+答辩PPT+文档+项目部署】
  • 论文阅读_用于低频隔振的高负刚度新型阵列磁性弹簧的分析与设计_1
  • MySQL智障离谱问题,删了库确还存在、也不能再创建同名库
  • linux kasan 使用举例
  • Spring-AOP
  • Windows Docker运行Implicit-SVSDF-Planner
  • Python 面试常见问题解析
  • 中国证券监督管理委员会党委委员、副主席王建军接受审查调查
  • 迎接八方来客:全国多地“五一”假期党政机关大院停车场免费开放
  • 马上评|什么才是地方文旅宣传的正确姿势
  • 黄育奇当选福建惠安县人民政府县长
  • 笔墨如何“构城”?上海美院城市山水晋京展出
  • 2025年“投资新余•上海行”钢铁产业“双招双引”推介会成功举行