设计用PLC控制数码管循环显示数字0-9,控制要求如下(1)按下启动按钮后,数码管从0开始显示,1s后显示1,再过1s后显示2,…,显示9,1s后再重新屏示0.如此循环。(2)当按下停止孩钮后,数码管烟灭。7数码营实际上是由7只

采用共阴极LED数码管,51单片机P1口输出数据:ORG 0000H JMP MAIN ORG 0100H MAIN:MOV DPTR,#TAB MOV R1,#00H DISP:MOV A,R1 MOVC A,@A+DPTR MOV P1,A LCALL DELAY INC R1 CJNE R1,#0AH,DISP SJMP TAB:

define TubeNumber 6//数码管个数 define KeyLine 4//矩阵按键行数 define KeyColumn 4//矩阵按键列数 //数码管真值表 uchar code LED_Number[]={0x0C,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//

1/首先把段码端和片选端都设为输出,也就是led和单片机连的那几个角 2/你先用延时来做吧,大致是这样的 设一个片选有效;把要显示的内容放段码中;延时15ms;设第二个片选有效;把要显示的内容放段码中;延时15ms

51单片机编写4个LED数码管同时循环显示0—9的数字的程序。芝士回答void t1isr()interrupt 3/显示{ TH1=0xec;TL1=0x78;P2=1< < p=""><> P0=~ledtab[tiao];scanled+;scanled%4;}单片机如何同时控制四位数码管显

delay(2000);n1++; if(n1 > 9) n1 = 0;} } 4个(任意个)共阳数码管的段选端,接在 P0,其位选,都接电源即可。

51单片机 编写4个LED数码管同时循环显示0—9的数字 的程序。

main(){ for (;;){ z=js(z);i=js(i);P0=0;P1=0xff-(0x01<

3、每次中断循环显示一位数码管;下面是我曾经写的一个显示程序(显示缓冲区G_Disp_Buf):define PIN_SDINP0_0 define PIN_STP0_1 define PIN_SHP0_2 define LOC_D10x08 void Display(void){ unsigned char i,ch,

1/首先把段码端和片选端都设为输出,也就是led和单片机连的那几个角 2/你先用延时来做吧,大致是这样的 设一个片选有效;把要显示的内容放段码中;延时15ms;设第二个片选有效;把要显示的内容放段码中;延时15ms

define uchar unsigned char//宏定义 define uint unsigned int uchar count;uint disnum;sbit dula=P2^6;sbit wela=P2^7;uchar code tabledu[]={//段码表 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x

uchar number,nn=0;uchar dat[]={2,0,1,2,1,1,4,5,8,2};void t0isr() interrupt 1 { TH0=(65536-5000)/256;TL0=(65536-5000)%256;number++;number%=4;switch(number){ case 0:P2=0x08;P0=distab[nn

//关第一位显示 p2=tab[2];p3_1=0;//开第二位显示 for(i=0;i<200:i++);p3_1=1;这个程序就是让两个数码管分别显示1和2,注意程序开头包含头文件regx52.h,如果是包含reg52.h编译不了的

运用51单片机实现4位8段LED数码管的动态数字显示,写出C语言程序

main(){ for (;;){ z=js(z);i=js(i);P0=0;P1=0xff-(0x01<

uchar led[]={0,4,1,2};void t0isr() interrupt 1 { TH0=(65536-5000)/256;TL0=(65536-5000)%256;switch(num){ case 0:P2=0x01;break;case 1:P2=0x02;break;case 2:P2=0x04;break;case 3:P2=0x08;

3、每次中断循环显示一位数码管;下面是我曾经写的一个显示程序(显示缓冲区G_Disp_Buf):define PIN_SDINP0_0 define PIN_STP0_1 define PIN_SHP0_2 define LOC_D10x08 void Display(void){ unsigned char i,ch,

1/首先把段码端和片选端都设为输出,也就是led和单片机连的那几个角 2/你先用延时来做吧,大致是这样的 设一个片选有效;把要显示的内容放段码中;延时15ms;设第二个片选有效;把要显示的内容放段码中;延时15ms

define uchar unsigned char//宏定义 define uint unsigned int uchar count;uint disnum;sbit dula=P2^6;sbit wela=P2^7;uchar code tabledu[]={//段码表 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x

uchar number,nn=0;uchar dat[]={2,0,1,2,1,1,4,5,8,2};void t0isr() interrupt 1 { TH0=(65536-5000)/256;TL0=(65536-5000)%256;number++;number%=4;switch(number){ case 0:P2=0x08;P0=distab[nn

//关第一位显示 p2=tab[2];p3_1=0;//开第二位显示 for(i=0;i<200:i++);p3_1=1;这个程序就是让两个数码管分别显示1和2,注意程序开头包含头文件regx52.h,如果是包含reg52.h编译不了的

运用51单片机实现4位8段LED数码管的动态数字显示,写出C语言程序

请问,你是问“keil51数码管动态怎么显示学号后四位”这个问题吗?该动态显示学号后四位方法如下:1、定义一个包含四位学号后四位的段码表table。2、使用display函数来选通不同的数码管,并发送对应的段码,实现动态显示

下面是使用AT89S51单片机控制4位一体数码管轮流显示1234的程序代码:```c include // 数码管显示字型码表 unsigned char code LEDDisplay[] = { 0x3F, // 0 0x06, // 1 0x5B, // 2 0x4F

while(1){ count=++count%(StuNumLeng-1);P0=SEG_B_List[StuNum[count]];P2=SEG_B_List[StuNum[count+1]];Delay_ms(650);} } 未编译,直接打的,愿上帝保佑你。 以后会定时器了显示函数独立一个函数

第一次显示1,延时一定时间,显示12,延时一定时间显示123,……,然后循环,这样就实现了

这是四位数码管从右从左流动显示,像滚动字幕一样的。用不着矩阵按键哪。其实程序很简单,没那么复杂。程序如下 include define uchar unsigned char define uint unsigned int uchar code tab[]={0x3f,0x06

1.共阴极:就是将八段数码管的阴极(负极)接地在一起,需要高电平点亮。如下图所示 2.共阳极:就是将八段数码管的阳极(正极)接(+5v)在一起,需要低电平点亮。如下图所示 3.数码管的具体

keil51单片机数码管滚的显示

#include //----------------------------------------------- void delay(unsigned int i) //延时 { unsigned char j; while(i--) for(j = 0; j < 115; j++); } //----------------------------------------------- void main(void) { unsigned char n1; unsigned char code SEG[] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, //0-4 0x92, 0x82, 0xf8, 0x80, 0x90};//5-9 while(1) { P0 = SEG[n1]; //P0口,外接共阳数码管的段选端 delay(2000); n1++; if(n1 > 9) n1 = 0; } } 4个(任意个)共阳数码管的段选端,接在 P0,其位选,都接电源即可。
假设8个数码管公共端均接地,同时显示1-9 #include #include #define uchar unsigned char #define uint unsigned int uchar code DSY_CODE[]= { 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0x82,0xf8,0x80,0x90,0xff }; void DelayMS(uint x) { uchar t; while(x--) for(t=120;t>0;t--); } void main() { uchar i=0; P0=0x00; while(1) { P0=~DSY_CODE[i]; i=(i+1)%10;/*显示0-9*/ DelayMS(200); } } 下面程序从左到右显示 #include #include #define uchar unsigned char #define uint unsigned int uchar code DSY_CODE[]= { 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90 }; void DelayMS(uint x) { uchar i; while(x--) { for(i=200;i>0;i--); } } void main() { uchar i,k=0x80; while(1) { for(i=8;i>0;i--) { P2=0xff; k=_crol_(k,1); P0=DSY_CODE[8-i]; P2=k; DelayMS(3); } } }