数码管

  • 1.点亮一个数码管
  • 2.点亮两个数码管
  • 3.显示八个数码管
  • 4.一位数码管倒计时
  • 5.两位数码管倒计时

1.点亮一个数码管

#include <reg51.h>//阴极数码管typedef unsigned char u8;
typedef unsigned int u16;sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;u8 code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void main()
{while(1){LSA=0;           //这里是开发板上的段选芯片,选择最后一个数码管LSB=0;          //平时点亮一个数码管,正常点亮即可LSC=0;        P0=smgduan[5];}}

2.点亮两个数码管

#include <reg51.h>typedef unsigned char u8;
typedef unsigned int u16;u8 code smgduan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};sbit SLA=P2^2;
sbit SLB=P2^3;
sbit SLC=P2^4;void delay(u16 i)
{while(i--);
}void DigDisplay()
{u8 i;for(i=0;i<2;i++){switch(i){case(0):SLA=0;SLB=0;SLC=0;break;case(1):SLA=1;SLB=0;SLC=0;break;default: break;}P0=smgduan[i];delay(100);P0=0X00;}
}void main()
{while(1){DigDisplay();}}

3.显示八个数码管

#include <reg51.h>typedef unsigned char u8;
typedef unsigned int u16;u8 code smgduan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};sbit SLA=P2^2;
sbit SLB=P2^3;
sbit SLC=P2^4;void delay(u16 i)
{while(i--);
}void DigDisplay()
{u8 i;for(i=0;i<8;i++){switch(i){case(0):SLA=0;SLB=0;SLC=0;break;case(1):SLA=1;SLB=0;SLC=0;break;case(2):SLA=0;SLB=1;SLC=0;break;case(3):SLA=1;SLB=1;SLC=0;break;case(4):SLA=0;SLB=0;SLC=1;break;case(5):SLA=1;SLB=0;SLC=1;break;case(6):SLA=0;SLB=1;SLC=1;break;case(7):SLA=1;SLB=1;SLC=1;break;default: break;}P0=smgduan[i];delay(100);P0=0X00;}
}void main()
{while(1){DigDisplay();}}

4.一位数码管倒计时

#include <reg51.h>typedef unsigned char u8;
typedef unsigned int u16;u8 code smgduan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;void delay(u16 i)
{while(i--);
}void main()
{   u16 m;LSA=0;LSB=0;LSC=0;while(1){for(m=9;m>0;m--){P0=smgduan[m];delay(50000);}}}

5.两位数码管倒计时

#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;sbit LSA = P2^2;
sbit LSB = P2^3;
sbit LSC = P2^4;
sbit beep= P2^7;
u8 code smgduan[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,
};          //共阴u16 n = 0;
u16 m = 99;void Timer0Init(void)       //1毫秒@11.0592MHz
{TMOD &= 0xF0;     //设置定时器模式   定时器0 是 13位的TL0 = 0x30;     //设置定时初值TH0 = 0xE3;        //设置定时初值TF0 = 0;       //清除TF0标志TR0 = 1;      //定时器0开始计时
}void   DIGdisplay()
{u8 i;for (i=0;i<2;i++){switch(i){case(0): LSA = 0 ;LSB = 1 ; LSC = 1 ;P0 = smgduan[m/10] ; break; //6case(1): LSA = 1 ;LSB = 1 ; LSC = 1 ;P0 = smgduan[m%10]    ; break; //7 第八个         }                                                            P0 =0X00;}
}void Delay200us()      //@11.0592MHz
{unsigned char i, j;for(i=99;i>0;i--)for(j=0;j<110;j++);   }/*    i = 3;j = 35;do{while (--j);} while (--i);
}  */void warning()
{beep = ~beep;Delay200us();
}void main()
{Timer0Init();ET0 = 1;EA  = 1;P0 = 0x00;while(1){DIGdisplay();}
}void InterruptTime0() interrupt 1
{TL0 = 0x30;       //设置定时初值TH0 = 0xE3;n++;if (n == 1000) {n = 0;if(m != 0) m--;}if(m == 0)  warning();
}
//代码书写有参考,侵权立删

普中科技51纯代码(数码管)相关推荐

  1. 普中科技51纯代码(流水灯)

    流水灯 1.点亮一个灯 2.一个灯闪烁 3.流水灯 4.灯左右来回流水 5.左右来回不定位平移 6.番外:蜂鸣器 7.流水灯+蜂鸣器 1.点亮一个灯 #include <reg51.h>s ...

  2. 普中科技51纯代码(按键)

    1.独立按键控制灯 #include <reg51.h>typedef unsigned char u8; typedef unsigned int u16;sbit led1=P0^0; ...

  3. 普中科技51单片机_【笔记】普中科技-51单片机-静态数码管显示

    #include <reg51.h> #include <intrins.h> typedef unsigned char u8; typedef unsigned int u ...

  4. 普中科技51单片机的ADC采样电位器功能实现以及特点

    ADC模数转换的目的: **单片机能够接受和处理的数据都是离散的数字量,而不是连续的模拟量,**就和机器语言不能和普通语言一样通用,要先转换成单片机能够接受的数据,才能进行对模拟量数据(比如,温度,受 ...

  5. 使用普中科技51单片机进行(I^2)C总线操作

    /*C51单片机学习打卡*/ /*观看郭天祥老师教学视频,使用普中科技51单片机开发板进行学习(I^2)C总线操作*/ /*功能:在开发版上进行999秒计时,在单片机掉电情况下可以记录最后一秒的数据* ...

  6. 基于普中科技的单片机开发实验仪编写的数字表

    基于普中科技的单片机开发实验仪编写的数字表 1.项目简单说明 一.显示日期,对ds1302芯片进行计时所得的日期用数码管进行显示: 二.显示温度,对18B20芯片测量所得的温度用数码管进行显示: 三. ...

  7. 使用普中科技ESV2.0开发板控制步进电机

    使用普中科技ESV2.0开发板驱动步进电机 文章目录 使用普中科技ESV2.0开发板驱动步进电机 前言 一.步进电机的驱动原理 工作原理 二.如何让步进电机转起来 相数 驱动方法 注意图中接线顺序,不 ...

  8. 普中科技开发板使用说明书_普中科技单片机实验板使用操作说明.pdf

    普中科技单片机实验板使用操作说明 单片机学习的良师益友 好帮手单片机学习套件 -PRECHIN 用手册 普中科技有限公司 P R E C H I N - V 2 . 0 开发板 Version 1.2 ...

  9. 基于STM 32、矩阵键盘和独立键盘实现LCD显示的智能计算器(带括号的加减乘除运算、混合四则运算)——普中科技单片机开发试验仪嵌入式开发

    0 引言 智能计算器是嵌入式开发的入门项目,本章使用STM 32芯片作为CPU,并将矩阵键盘和独立键盘作为输入外设,LCD1602作为显示屏,实现可输入的可视化智能计算器. 备注:最终生成的可执行HE ...

最新文章

  1. CORBA/DCOM使用协议
  2. 3DSSD:基于点云的single-stage物体检测模型 | CVPR2020
  3. java字符串逐个分解_改进JAVA字符串分解的方法
  4. Eigen 模板库的简介
  5. Python模拟汉诺塔问题移动盘子的过程
  6. idea:properties in parent definition are prohibited警告去除
  7. python脚本用类编写_跟老齐学Python之编写类之二方法
  8. JSP三大指令、七大动作、九大对象
  9. mysql linux查看配置文件my.cnf位置
  10. 地震matlab频域分析,基于matlab的地震数据的分析.doc
  11. 字节跳动面试题 —— 水壶问题
  12. 如何快速又优雅的一键保存网页
  13. 马云的“虚拟信用卡”动了谁的奶酪?
  14. 网页版魔兽争霸游戏策划
  15. RStudio常用快捷键
  16. 一条 SQL 语句是如何执行的
  17. css constant() env()设置iphoneX等机型刘海屏、底部小黑条自动留白 设置安全区域与边界的距离
  18. No.2第一章 启航 | Flink 知其然,知其所以然
  19. 企业官网建设需要多少钱
  20. 读《鬼谷子的局》笔记

热门文章

  1. 基于asp.net的图书管理系统
  2. 快逃!从来没有被“坑”这么惨!
  3. CC00211.CloudKubernetes——|KuberNetes高级调度.V14|——|Pod亲和力反亲和力.v02|pod亲和力_跨namespace|
  4. 中国汽车ARG玻璃市场深度研究分析报告
  5. 推广运营新应用:短网址的正确使用方式
  6. unity3d游戏开发之如何快速接入渠道SDK
  7. 在HuntBird游戏中,需要模拟不同鸟的多种行为,鸟类中提供了对其各种行为信息进行显示的show()方法,目前游戏需要呈现的是鸽子和企鹅的飞和游泳行为,现使用桥接模式设计该游戏
  8. linux服务器 更新显卡驱动
  9. 都市赛车6 ~u9gt2完美运行
  10. c++之模板初阶详解!