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

51单片机-实机演示(单多个数码管)

仿真链接: http://t.csdnimg.cn/QAPhx

目录

一.引脚位置

二.多个显示

三 扩展


一.引脚位置

注意P00 - >A ; 这个多个的在左边,右边的A到B是控制最右边那个单个的.

接下来上显示单个的代码

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned intuchar code leddata[]={0x3F,  //"0"0x06,  //"1"0x5B,  //"2"0x4F,  //"3"0x66,  //"4"0x6D,  //"5"0x7D,  //"6"0x07,  //"7"0x7F,  //"8"0x6F,  //"9"0x77,  //"A"0x7C,  //"B"0x39,  //"C"0x5E,  //"D"0x79,  //"E"0x71,  //"F"0x76,  //"H"0x38,  //"L"0x37,  //"n"0x3E,  //"u"0x73,  //"P"0x5C,  //"o"0x40,  //"-"0x00  //熄灭};void DelayMS(uint x)
{uchar t;while(x--)for(t=120;t>0;t--);
}void main()
{uchar i=0;P0=0x00;while(i<24){P0=leddata[i];i++;DelayMS(400);}
}

二.多个显示

再加上控制引脚:  P22->A  P23->B P24->C   引脚位置,主要看代码里面的定义.定义的是哪个就插在哪个引脚上.

代码奉上

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code leddata[]={0x3F,  //"0"0x06,  //"1"0x5B,  //"2"0x4F,  //"3"0x66,  //"4"0x6D,  //"5"0x7D,  //"6"0x07,  //"7"0x7F,  //"8"0x6F,  //"9"0x77,  //"A"0x7C,  //"B"0x39,  //"C"0x5E,  //"D"0x79,  //"E"0x71,  //"F"0x76,  //"H"0x38,  //"L"0x37,  //"n"0x3E,  //"u"0x73,  //"P"0x5C,  //"o"0x40,  //"-"0x00  //熄灭};//定义数码管位选信号控制脚
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;void DelayMS(uint x)
{while(x--);
}
void delay(unsigned int t)
{unsigned int i, j;for (i = 0; i < t; i++) {for (j = 0; j < 1275; j++) {; // 空循环,等待时间过去}}
}
void main()
{uchar i=0;P0=0x00;while(1){for (i = 0; i < 8; i++){switch (i){case 0: LSC=1;LSB=1;LSA=1;break;case 1: LSC=1;LSB=1;LSA=0;break;case 2: LSC=1;LSB=0;LSA=1;break;case 3: LSC=1;LSB=0;LSA=0;break;case 4: LSC=0;LSB=1;LSA=1;break;case 5: LSC=0;LSB=1;LSA=0;break;case 6: LSC=0;LSB=0;LSA=1;break;case 7: LSC=0;LSB=0;LSA=0;break;}P0 =leddata[i];DelayMS(100);P0=0x00;}}
}

三 扩展

既然基础的可以写了,就可以自定义了,比如显示当前时间.

比如动态时间,加上两个变量,随时间++,到60,前进一位,自身归零.

http://www.lryc.cn/news/355240.html

相关文章:

  • Pytorch深度学习实践笔记10(b站刘二大人)
  • QT5.15.2及以上版本安装
  • 5月27日
  • python给三维点上色,并添加颜色柱
  • Ubuntu22.04之解决:忘记登录密码(二百三十二)
  • stream-并行流
  • 插件“猫抓”使用方法 - 浏览器下载m3u8视频 - 合并 - 视频检测下载 - 网课下载神器
  • 【quarkus系列】构建可执行文件native image
  • linux(ubuntu)常用的代理设置
  • 红队攻防渗透技术实战流程:红队目标上线之Webshell免杀对抗
  • Habicht定理中有关子结式命题3.4.6的证明
  • 【Unity AR开发插件】如何快速地开发可热更的AR应用
  • Divisibility Part1(整除理论1)
  • 代码随想录算法训练营第三十七天 | 860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球
  • GolangFoundation
  • 如果任务过多,队列积压怎么处理?
  • FTP协议——BFTPD基本操作(Ubuntu+Win)
  • 为什么需要分布式 ID?
  • MIT6.828 Lab2-3 Sysinfo
  • 形态学操作:腐蚀、膨胀、开闭运算、顶帽底帽变换、形态学梯度区别与联系
  • StringBufferInputStream类,你学会了吗?
  • 06_Tomcat
  • 系统安全扫描扫出了:可能存在 CSRF 攻击怎么办
  • Android ART 虚拟机简析
  • Android低代码开发 - MenuPanel的源码剖析和基本使用
  • Leetcode刷题笔记3
  • 初识C语言——第二十九天
  • LeetCode27.移除元素
  • DiffMap:首个利用LDM来增强高精地图构建的网络
  • ComfyUI简单介绍