共阳极与共阴极数码管的显示代码各是什么意思?

关于共阳极与共阴极数码管的显示代码各是什么意思?的讨论正在各大平台持续发酵,我们精心筛选了最新资讯 ,希望能为您带来实质性的帮助。

拿八段数码管举例:顾名思义,一个八段数码管由八段二极管组成即a,b,c,d,e,f,g,dop(点),共八段 。其中数码管分两种 ,共阴极和共阳极(共阳极:数码管的阳极全部接在一起,低电平点亮它,如:如果是共阳极 ,显示数字“0” ,代码为ox80或80H;共阴极和共阳极相反。\x0d\ a ━ \x0d\ f│ │b\x0d\ g━\x0d\ e┃ ┃c\x0d\ ━d

共阴极共阳极七段数码管 从0至F

/***数显秒表,范围0~999***/

/***源程序默认硬件环境:52单片机,12MHz晶振,3位共阳数码管,P0 口段选,P10~P12 高电平位选(NPN三极管驱动),P12为最高位数码管***/

#include"reg52.h" //包含52头文件

#define TRUE 1 //定义布尔量'1':真

#define FALSE 0 //定义布尔量'0':假

#define uchar unsigned char //定义 无符号字符型数据 简称

#define uint unsigned int //定义 无符号整型数据 简称

#define th0 0xfc

#define tl0 0x18 //1ms at 12MHz(定时器工作模式1 状态)

#define SEG_Num 3 //数码管位数

#define SEG_Data P0 //数码管段驱动接口

#define SEG_En P1 //数码管位驱动接口

#define SEG_AllOff (SEG_En&=0xf8) //关闭所有数码管(位驱动)

#define DisTimeAt1msCount 5 //单'位'数码管显示时间,数码管刷新频率f=1/(N×t),其中 N为数码管位数, t为单'位'数码管显示时间

#define T1sAt1msCount 1000 //1秒 计数值(在定时器为1ms 情况下计数)

#define TimesEnd 1000 //显示内容范围 0~999

uchar code SEG_B_List[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //共阳数码管代码表"0-9"

uint Sec;

uchar bdata Flag=1;

sbit DisplayFlag=Flag^0; //显示标志位

sbit TimesUpFlag=Flag^1; //时间更新标志位

void Timer0() interrupt 1 //定时器0中断函数

{

static uchar t1ms; //定义静态变量 t1ms 定时计数寄存空间

static uint t1ms_sec;

TL0=tl0;

TH0=th0; //重赋 1ms 定时初值

t1ms=++t1ms%DisTimeAt1msCount; //先计数值加1,后对计数范围进行限制0~(DisTimeAt1msCount-1)

if(!t1ms) DisplayFlag=TRUE; //若定时计数值归0,则表示计数值曾到达 单'位'显示时间(DisTimeAt1msCount),显示标志 置位

t1ms_sec=++t1ms_sec%T1sAt1msCount; //在 T1sAt1msCount(1000) 范围内加1

if(!t1ms_sec) TimesUpFlag=TRUE; //若 归0,则1s 时间到,时间更新标志位 置位

}

void SystemInit() //系统初始化函数

{

TMOD=0x01; //关闭定时器1,开启定时器0,且工作在模式1(16位定时器)

TH0=th0;

TL0=tl0; //装定时初值(1ms at 12MHz)

TR0=1; //启动计时

ET0=1; //允许定时器0中断

EA=1; //开启系统中断功能

}

float Pow_Self(float x,uint y)//自编简易 x 的 y 次方函数,y只能是 非负整数

{

float sum;

if(x==0 && y==0) return; //0 的 0 次方无意义

else if(x==0) sum=0; //可有可无,y!=0的情况已经包含x=0,不加不影响结果,但影响运算速度

else if(y==0) sum=1; //除上述情况外,任何数的 0 次方均为 1

else if(y==1) sum=x; //任何数的 1 次方 均为 本身

else if(y>1) sum=Pow_Self(x,--y)*x; //递归调用,降幂

return sum; //返回计算结果

}

void TimesUpdata() //时间更新 函数

{

if(TimesUpFlag) //若 时间更新标志 为真

{

Sec=++Sec%TimesEnd; //Sec (秒)在 TimesEnd (0~999) 范围内加1

TimesUpFlag=FALSE; //清 时间更新标志位

}

}

void Display(uint dis_num) //显示函数,显示内容为 无符号整型数据 dis_num

{

static uchar dis_loca; //定义静态变量 显示位置

if(DisplayFlag) //若显示标志位为真(单'位'显示时间结束),则执行以下任务

{

DisplayFlag=FALSE; //清显示标志位

dis_loca=++dis_loca%SEG_Num; //先对 显示位置 加1,后对变量范围进行限制 0~(SEG_Num-1)

SEG_AllOff; //关闭所有数码管显示(位驱动)

SEG_Data=SEG_B_List[(dis_num/(uint)(Pow_Self(10,dis_loca)))%10]; //将显示内容(dis_num) 本次需显示的位(dis_loca)上的数值转成代码,并送到数据端口

SEG_En|=1<<dis_loca; //开启本次需要显示的位驱动

}

}

void main() //主函数

{

SystemInit(); //调用 系统初始化函数

while(1) //循环系统

{

TimesUpdata(); //调用 时间更新函数

Display(Sec); //调用 显示函数 显示内容为 Sec

}

}

将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。

这类数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com ,而每个LED的阴极分别为a,b,c ,d,e,f ,g及dp(小数点) 。

共阴极则是把所有LED的阴极连接到共同接点com,而每个LED的阳极分别为a,b ,c,d,e ,f ,g及dp(小数点),其中8个LED分别与A~DP各段相对应,通过控制各个LED的亮灭来显示数字。

扩展资料:

注意事项:

1、采用恒流驱动电路后可防止短时间的电流过载也可能对发光管造成永久性的损坏 , 以此避免电流故障所引起的七段数码管的大面积损坏。

2 、超大规模集成电路还具有热保护功能,当任何一片的温度超过一定值时可自动关断,并且可在控制室内看到故障显示 。

3、需要使其具有恒定的工作电流 。

百度百科-七段数码管

百度百科-共阳极数码管

百度百科-共阴极数码管

本文已完

拿八段数码管举例:顾名思义 ,一个八段数码管由八段二极管组成即a,b,c,d,e,f,g,dop(点),共八段。其中数码管分两种,共阴极和共阳极(共阳极:数码管的阳极全部接在一起 ,低电平点亮它,如:如果是共阳极,显示数字“0 ” ,代码为ox80或80H;共阴极和共阳极相反。\x0d\ a ━ \x0d\ f│ │b\x0d\ g━\x0d\ e┃ ┃c\x0d\ ━d

共阴极共阳极七段数码管 从0至F

/***数显秒表,范围0~999***/

/***源程序默认硬件环境:52单片机,12MHz晶振,3位共阳数码管,P0 口段选,P10~P12 高电平位选(NPN三极管驱动),P12为最高位数码管***/

#include"reg52.h" //包含52头文件

#define TRUE 1 //定义布尔量'1':真

#define FALSE 0 //定义布尔量'0':假

#define uchar unsigned char //定义 无符号字符型数据 简称

#define uint unsigned int //定义 无符号整型数据 简称

#define th0 0xfc

#define tl0 0x18 //1ms at 12MHz(定时器工作模式1 状态)

#define SEG_Num 3 //数码管位数

#define SEG_Data P0 //数码管段驱动接口

#define SEG_En P1 //数码管位驱动接口

#define SEG_AllOff (SEG_En&=0xf8) //关闭所有数码管(位驱动)

#define DisTimeAt1msCount 5 //单'位'数码管显示时间,数码管刷新频率f=1/(N×t),其中 N为数码管位数, t为单'位'数码管显示时间

#define T1sAt1msCount 1000 //1秒 计数值(在定时器为1ms 情况下计数)

#define TimesEnd 1000 //显示内容范围 0~999

uchar code SEG_B_List[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //共阳数码管代码表"0-9"

uint Sec;

uchar bdata Flag=1;

sbit DisplayFlag=Flag^0; //显示标志位

sbit TimesUpFlag=Flag^1; //时间更新标志位

void Timer0() interrupt 1 //定时器0中断函数

{

static uchar t1ms; //定义静态变量 t1ms 定时计数寄存空间

static uint t1ms_sec;

TL0=tl0;

TH0=th0; //重赋 1ms 定时初值

t1ms=++t1ms%DisTimeAt1msCount; //先计数值加1,后对计数范围进行限制0~(DisTimeAt1msCount-1)

if(!t1ms) DisplayFlag=TRUE; //若定时计数值归0,则表示计数值曾到达 单'位'显示时间(DisTimeAt1msCount),显示标志 置位

t1ms_sec=++t1ms_sec%T1sAt1msCount; //在 T1sAt1msCount(1000) 范围内加1

if(!t1ms_sec) TimesUpFlag=TRUE; //若 归0,则1s 时间到,时间更新标志位 置位

}

void SystemInit() //系统初始化函数

{

TMOD=0x01; //关闭定时器1,开启定时器0,且工作在模式1(16位定时器)

TH0=th0;

TL0=tl0; //装定时初值(1ms at 12MHz)

TR0=1; //启动计时

ET0=1; //允许定时器0中断

EA=1; //开启系统中断功能

}

float Pow_Self(float x,uint y)//自编简易 x 的 y 次方函数,y只能是 非负整数

{

float sum;

if(x==0 && y==0) return; //0 的 0 次方无意义

else if(x==0) sum=0; //可有可无,y!=0的情况已经包含x=0,不加不影响结果,但影响运算速度

else if(y==0) sum=1; //除上述情况外,任何数的 0 次方均为 1

else if(y==1) sum=x; //任何数的 1 次方 均为 本身

else if(y>1) sum=Pow_Self(x,--y)*x; //递归调用,降幂

return sum; //返回计算结果

}

void TimesUpdata() //时间更新 函数

{

if(TimesUpFlag) //若 时间更新标志 为真

{

Sec=++Sec%TimesEnd; //Sec (秒)在 TimesEnd (0~999) 范围内加1

TimesUpFlag=FALSE; //清 时间更新标志位

}

}

void Display(uint dis_num) //显示函数,显示内容为 无符号整型数据 dis_num

{

static uchar dis_loca; //定义静态变量 显示位置

if(DisplayFlag) //若显示标志位为真(单'位'显示时间结束),则执行以下任务

{

DisplayFlag=FALSE; //清显示标志位

dis_loca=++dis_loca%SEG_Num; //先对 显示位置 加1,后对变量范围进行限制 0~(SEG_Num-1)

SEG_AllOff; //关闭所有数码管显示(位驱动)

SEG_Data=SEG_B_List[(dis_num/(uint)(Pow_Self(10,dis_loca)))%10]; //将显示内容(dis_num) 本次需显示的位(dis_loca)上的数值转成代码,并送到数据端口

SEG_En|=1<<dis_loca; //开启本次需要显示的位驱动

}

}

void main() //主函数

{

SystemInit(); //调用 系统初始化函数

while(1) //循环系统

{

TimesUpdata(); //调用 时间更新函数

Display(Sec); //调用 显示函数 显示内容为 Sec

}

}

将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式 。

这类数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com ,而每个LED的阴极分别为a ,b,c,d ,e,f,g及dp(小数点)。

共阴极则是把所有LED的阴极连接到共同接点com ,而每个LED的阳极分别为a,b,c ,d,e,f ,g及dp(小数点),其中8个LED分别与A~DP各段相对应,通过控制各个LED的亮灭来显示数字。

扩展资料:

注意事项:

1、采用恒流驱动电路后可防止短时间的电流过载也可能对发光管造成永久性的损坏 , 以此避免电流故障所引起的七段数码管的大面积损坏 。

2 、超大规模集成电路还具有热保护功能 ,当任何一片的温度超过一定值时可自动关断,并且可在控制室内看到故障显示。

3、需要使其具有恒定的工作电流。

百度百科-七段数码管

百度百科-共阳极数码管

百度百科-共阴极数码管

呈现共阳极与共阴极数码管的显示代码各是什么意思?的核心内容解析,若这些分析对您的工作或学习有所助益 ,建议您将本站加入书签以便后续查阅 。

本文来自作者[pimuyin]投稿,不代表圣泉吧立场,如若转载,请注明出处:https://m.sqpump.com.cn/sq/32959.html

(7)

文章推荐

  • 堕落三部曲之我欲成魔电子书txt全集

    网上有关“堕落三部曲之我欲成魔电子书txt全集”话题很是火热,小编也是针对堕落三部曲之我欲成魔电子书txt全集寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。堕落三部曲之我欲成魔txt全集小说附件已上传到百度网盘,点击免费下载:内容预览:韩天欲:正统魔门遗孤

    2025年09月17日
    36321
  • 扬州哪里有修补汽车座椅的

    网上有关“扬州哪里有修补汽车座椅的”话题很是火热,小编也是针对扬州哪里有修补汽车座椅的寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。扬州欧睿汽车销售服务有限公司,扬州市开发区美车林汽车装潢美容中心。1、扬州欧睿汽车销售服务有限公司:扬州欧睿汽车销售服务有限公

    2025年09月24日
    34301
  • 河北2地调为高风险,河北高风险叫什么

    相关文章:⒜、经过石家庄需要隔离吗-经过石家庄健康码会变色吗⒝、河北辛集一地调整为高风险地区,当地民众该如何防疫?⒞、河北辛集一地调整为高风险地区,当地有关部门采取了哪些应急措施?_百度...⒟、天津部分区域调整风险等级经过石家庄需要隔离吗-经过石家庄健康码会变色吗这个要看

    2025年10月20日
    33318
  • 重大发现“云霄麻将可以开挂吗”最新辅助详细教程

    重大发现“云霄麻将可以开挂吗”最新辅助详细教程>>亲,云霄麻将可以开挂吗这款游戏原来确实可以开挂,详细开挂教程1、起手看牌2、随意选牌3、控制牌型4、注明,就是全场,公司软件防封号、防检测、 正版软件、非诚勿扰。2022首推。全网独家,诚信

    2025年11月12日
    14301
  • 必备绝技“微乐三丁拐有没有挂”附开挂脚本详细步骤

    必备绝技“微乐三丁拐有没有挂”附开挂脚本详细步骤认准官方唯一联系方式 客服24小时在线关于!微乐三丁拐有没有挂是不是有挂,有没有挂!很多玩家在这款游戏中打牌都会发现很多玩家的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所

    2025年11月13日
    17304
  • 必备绝技“新二号大厅有透视软件吗”详细开挂教程

    必备绝技“新二号大厅有透视软件吗”详细开挂教程亲,新二号大厅有透视软件吗这款游戏原来确实可以开挂,详细开挂教程有意向的用户,请加入上面Q_Q群.1、起手看牌2、随意选牌3、控制牌型4、注明,就是全场,公司软件防封号、防检测、 正

    2025年11月14日
    16318
  • 辅助开挂工具“微乐双扣记牌器”分享用挂教程

    辅助开挂工具“微乐双扣记牌器”分享用挂教程认准官方唯一联系方式 客服24小时在线关于!微乐双扣记牌器是不是有挂,有没有挂!很多玩家在这款游戏中打牌都会发现很多玩家的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙

    2025年11月28日
    11302
  • 必看教程“来三上海麻将开挂”详细开挂教程

    必看教程“来三上海麻将开挂”详细开挂教程来三上海麻将开挂是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加入我们(QQ群聊)免费测试,先看效果下载使用。手机打牌可以一键让你轻松成为“必赢”。其操作方式十分简单,打开这个应用便可以自定义手机打牌系统规律

    2025年11月29日
    13313
  • 实操教程“四方河南麻将有挂吗”开挂(透视)辅助教程

    实操教程“四方河南麻将有挂吗”开挂(透视)辅助教程四方河南麻将有挂吗是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加入我们(QQ群聊)免费测试,先看效果下载使用。手机打牌可以一键让你轻松成为“必赢”。其操作方式十分简单,打开这个应用便可以自定义手机

    2025年12月04日
    13310
  • 必备绝技“哈哈长沙麻将怎么开挂”分享用挂教程

    必备绝技“哈哈长沙麻将怎么开挂”分享用挂教程 您好:哈哈长沙麻将怎么开挂这款游戏是可以开挂的,软件加微信【添加图中***群】确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特别好,总是好牌,而且好像能看到其他人的牌一样。所以很多小伙伴就怀疑这款游戏是不是有挂,实

    2025年12月04日
    11310

发表回复

本站作者才能评论

评论列表(3条)

  • 劈木饮的头像
    劈木饮 2025年12月12日

    我是圣泉吧的签约作者“pimuyin”

  • 劈木饮
    劈木饮 2025年12月12日

    本文概览:关于共阳极与共阴极数码管的显示代码各是什么意思?的讨论正在各大平台持续发酵,我们精心筛选了最新资讯,希望能为您带来实质性的帮助。拿八段数码管举例:顾名思义,一个八段数码管由八...

  • 劈木饮
    用户121202 2025年12月12日

    文章不错《共阳极与共阴极数码管的显示代码各是什么意思?》内容很有帮助

联系我们

邮件:圣泉吧@gmail.com

工作时间:周一至周五,9:30-17:30,节假日休息

圣泉吧