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

网站图片地址怎么做使用cnnic证书的网站

网站图片地址怎么做,使用cnnic证书的网站,discuz论坛使用方法,全国疫苗接种率目录 1.数码管的介绍 2.原理图 3.数码管运行原理 4.C51数组 5.C51子函数 6.数码管段码表 7.数码管驱动方式(了解) 8.静态数码管显示代码 第一步:搞懂原理图 第二步:开始写代码 最终代码: 9.动态数码管显示…

目录

1.数码管的介绍

2.原理图

3.数码管运行原理

4.C51数组

5.C51子函数

6.数码管段码表

7.数码管驱动方式(了解)

8.静态数码管显示代码

第一步:搞懂原理图

第二步:开始写代码

最终代码:

9.动态数码管显示代码

第一步:

第二步:

第三步:

第四步:

最终代码:


1.数码管的介绍

数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的器件

板中数码管,可控制显示各个位置显示不同数字

2.原理图

138译码器与数码数码管相连。138译码器使用CBA顺序识辨二进制数字转化为十进制数字,对应Y几亮,例如:Y5(5是十进制) C、A、D分别是1、0、1(二级制)。想要显示数码数字,看数码管原理图最左边的P00~P07(统称为P0)达成效果

3.数码管运行原理

管脚定义(对应字母控制对应位置亮):上面的为共阴极、下面的为共阳极(可以理解为3,8管脚处为供电,三角形尖尖有一横的是负极,所有共阴极),两个图中的数字为引脚

用共阴极(因为共阴极所有3、8号公共端要接地,即为0)连接显示数字6的操作,有电势差即有电流流过灯才会亮,所有下面的1为亮,0不亮:(位选:10111110:显示6)

共阳极,接VCC为1,下面的为0才亮,有电流流过,有电势差灯才亮

下面为多个数码管,PCB板的4个为一体,同样上面为共阴极、下面为共阳极的原理图

共阴极,那么我们公共端(12、9、8、6)接地给0才会亮,及可以控制第几个亮;显示的数字则通过下面(11、7、4、2、1、10、5、3即对应字母ABCDEFG)控制,给1才亮,给0不亮(电势差);下图显示结果:第三亮,显示数字1:(共引脚,其他亮的话数字也一样)

4.C51数组

5.C51子函数

6.数码管段码表

7.数码管驱动方式(了解就好)

8.静态数码管显示代码

第一步:搞懂原理图

原理图是共阴极(上面给0、下给1亮)

上图完整版

输入3(ABC,读的时候是从下读 C B A )个口,控制输出8个口,输出口连接共阴极的,是0还是1,在这里控制:使能端连接(按下图给1和0就可以用了)

通过CBA给数字0和1二进制转换10进制(得到数字几)就控制Y几,Y0头上“—”是表示低电平有效(即给0)

双向缓冲,高电平往低电频送数据

对上图内比较重要的几个原件解释:

        CC2(电容):滤波电容,稳定电源,确定电路稳定性,提高电路工作性能可靠运行

        RP4:排阻,限流,防止电流过大

这里的P01......P07,就是用P0口,后面代码就是通过P0口控制灯的

只有Y5为0,其他Y0...Y7都为1

读取顺序都是从下到上

代码控制公共端,从下往上写

二进制101转换为1十进制为5,控制Y5,即公共端的LED6

要显示下图的数字6

第二步:开始写代码

代码实现如下(P2控制共阴极,P0控制显示数字)及结果

优化操作代码,代码第三行根据数码管段码表,下面//8表示第一个灯Y7即LED8,在最左边那个

函数调用(前面参数为显示位置,后面为显示数字),接上面代码:

最终代码:

#include <REGX52.H>unsigned char NixieTable[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};void Nixie(unsigned char Location,Number)
{switch(Location){case 1:P2_4 = 1;P2_3 = 1;P2_2 = 1;break;case 2:P2_4 = 1;P2_3 = 1;P2_2 = 0;break;case 3:P2_4 = 1;P2_3 = 0;P2_2 = 1;break;case 4:P2_4 = 1;P2_3 = 0;P2_2 = 0;break;case 5:P2_4 = 0;P2_3 = 1;P2_2 = 1;break;case 6:P2_4 = 0;P2_3 = 1;P2_2 = 0;break;case 7:P2_4 = 0;P2_3 = 0;P2_2 = 1;break;case 8:P2_4 = 0;P2_3 = 0;P2_2 = 0;break;}P0 = NixieTable[Number];
}void main()
{Nixie(1,5);while(1){}
}

9.动态数码管显示代码

第一步:

将静态数码管的代码复制粘贴到这里的项目中

第二步:

生成延迟函数复制过来,修改一下

第三步:

动态显示,放循环里面

第四步:

注释掉上面的延时调用,旁边的管会有些影响,需要消影,段选、位选影响造成串位,如下代码消除

最终代码:

#include <REGX52.H>unsigned char NixieTable[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};void Delay(unsigned int xms)
{unsigned char i, j;while(xms--){i = 2;j = 239;do{while (--j);} while (--i);	}}void Nixie(unsigned char Location,Number)
{switch(Location){case 1:P2_4 = 1;P2_3 = 1;P2_2 = 1;break;case 2:P2_4 = 1;P2_3 = 1;P2_2 = 0;break;case 3:P2_4 = 1;P2_3 = 0;P2_2 = 1;break;case 4:P2_4 = 1;P2_3 = 0;P2_2 = 0;break;case 5:P2_4 = 0;P2_3 = 1;P2_2 = 1;break;case 6:P2_4 = 0;P2_3 = 1;P2_2 = 0;break;case 7:P2_4 = 0;P2_3 = 0;P2_2 = 1;break;case 8:P2_4 = 0;P2_3 = 0;P2_2 = 0;break;}P0 = NixieTable[Number];Delay(1);P0 = 0x00;
}void main()
{while(1){Nixie(1,1);//Delay(20);Nixie(2,3);//Delay(20);Nixie(3,1);//Delay(20);Nixie(4,4);//Delay(20);Nixie(5,5);//Delay(20);Nixie(6,2);//Delay(20);Nixie(7,0);//Delay(20);}
}
http://www.dtcms.com/wzjs/790708.html

相关文章:

  • 视频网站VIP卡怎么做赠品wordpress添加浮动小人
  • 上海 顶尖 网站设计网站建设与管理试题一
  • 浙江建设局网站毕设网站代做一般预算多少钱
  • 网站域名一年多少钱网站版心怎么做
  • 网站空间购买多少钱知识付费小程序搭建
  • 品牌网站建设开发价格深圳做网站开发公司
  • 淘宝上做的网站 域名到期可以自己续费吗早晨设计公司官网
  • 网站备案 网站名称雄安做网站
  • 安徽省建设协会网站广州seo网站推广优化
  • 校园网站psd我想看女生尿频怎么办
  • 坪山网站建设行情池州网站设计
  • 安徽省水利建设厅官方网站wordpress图文直播插件
  • 单页销售网站源码它有什么特点
  • 甘肃建设住房厅网站首页重庆大渡口营销型网站建设公司推荐
  • 自动优化网站建设电话科技公司官网首页
  • 宁波网站推广工具创业论坛网站有哪些
  • 罗湖网站开发商丘网站建设商丘
  • 进一步加强区门户网站建设管理中企动力总部在哪里
  • 网站wordpresswordpress搭建视频
  • 图文消息点击进去是自己的网站在游戏网站做中介合法
  • 兰州网络营销网站乌海市建设工程网站
  • 学校网站的建设方案务川县住房和城乡建设局网站
  • 做动漫网站南庄顺德网站建设
  • 室内效果图代做网站济南制作网站企业
  • 做网站ps注意事项深圳的产品设计公司
  • 为网站优势公司建站比较好的
  • 自己办网站中国住房和城乡建设局官网
  • 用dw制作影视网站怎样做专业做视频的网站有哪些内容
  • 易优cms仿站教程国内个人网站设计欣赏
  • 福州网站建设服务平台江苏建设准考证打印在哪个网站