173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

单片机7段

htxw 2023-03-13 资讯中心 20 ℃

求单片机实验七段数码管显示实验程序

/* ch03-3-4.c - 七段LED数码管实验程序 */

//==声明区=================================================

#includereg51.h //定义8051寄存器的头文件,P2-17~19

#define SEG P0 //定义七段LED数码管接至Port 0

/*声明七段LED数码管驱动信号数组(共阳)*/

char code TAB[10]={0xc0,0xf9,0xa4,0xb0,0x99, //数字0-4

0x92,0x83,0xf8,0x80,0x98}; //数字5-9

void delay(int); //声明延迟函数

//==主程序==========================================

main() //主程序开始

{ unsigned char i; //声明无符号变量i

while(1) //无穷循环,程序一直跑

for(i=0;i10;i++) //显示0-9,共10次

{ SEG=TAB[i]; //显示数字

delay(500); //延迟500×1m=0.5秒

} //for循环结束

} //主程序结束

//==子程序==========================================

/* 延迟函数,延迟约x×1ms */

void delay (int x) //延迟函数开始

{ int i,j; //声明整形变量i,j

for (i=0;ix;i++) //计数x次,延迟x×1ms

for (j=0;j160;j++); //计数120次,延迟1ms

} //延迟函数结束

单片机控制七段数码管显示,为什么要加三极管驱动啊?

数码管需要的工作电流大,单片机的驱动电流不够。一般的做法,就是利用单片机的输出,做三极管的基极驱动,然后让三极管的发射极做输出的驱动,输出更高的电压和大的电流。这样才能驱动数码管的显示。

所以工作中,一般选择共阳的。一段接电源,负端接单片机,但是为了增加驱动,一般也把单片机的输出口经过一个非门后,接数码管的负极。这样电路的输出电流和电压才能达到要求。

希望能对你

有用!!

单片机七段数码管循环显示0-FC语言程序

这要看你的数码管是共阴还是共阳的哈。还有和单片机IO口的链接情况。然后对应IO口将相应的''0-F编码。

如下面是我的开发板的一位数码管的显示程序,你在上面做些修改就是了哈!

#include reg51.h

#include intrins.h

#define NOP() _nop_() /* 定义空指令 */

void delay(unsigned int i); //函数声名

// 此表为 LED 的字模

unsigned char code LED7Code[] = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};

main()

{

unsigned int LedNumVal=1 ,C ; //定义变量

while(1)

{

if (++C= 300)

{ LedNumVal++ ; //每隔300个扫描周期加一次

C =0; //每隔300个扫描清零

}

// 将字模送到P0口显示

P0 = LED7Code[LedNumVal%10]0x7f; //LED7 0x7f为小数点 共阴和共阳此处也是不一样;

delay(150); //调用延时程序

}

}

/*****************************************************************

* *

* 延时程序 *

* *

*****************************************************************/

void delay(unsigned int i)

{

char j;

for(i; i 0; i--)

for(j = 200; j 0; j--);

}

单片机7段的介绍就聊到这里吧,感谢您花时间阅读,谢谢。

本文标签:单片机7段

<