ZKX's LAB

2段数码管控制程序 求 高人指点 用西门子S7-200控制两个7段数码管显示0-99的程序

2020-07-23知识9

求两个按键控制数码管数字加减C语言程序 void main(void){unsigned char num=0;KEY_ADD=1;按键输入端口电平置高KEY_DEC=1;while(1)/主循环{if。KEY_ADD)/如果检测到低电平,说明按键按下{DelayMs(10);延时去抖,一般10-20msif。KEY_ADD)/再次确认按键是否按下,没有按下则退出{while。KEY_ADD);如果确认按下按键等待按键释放,没有释放则一直等待{if(num)/加操作num+;}}}if。KEY_DEC)/如果检测到低电平,说明按键按下{DelayMs(10);延时去抖,一般10-20msif。KEY_DEC)/再次确认按键是否按下,没有按下则退出{while。KEY_DEC);如果确认按下按键等待按键释放,没有释放则一直等待{if(num>;0)/减操作num-;}}}TempData[0]=dofly_DuanMa[num/10];分解显示信息,如要显示68,则68/10=6 68%10=8TempData[1]=dofly_DuanMa[num%10];Display(0,8);显示全部8位主循环中添加其他需要一直工作的程序}}uS延时函数,含有输入参数 unsigned char t,无返回值unsigned char 是定义无符号字符变量,其值的范围是0~255 这里使用晶振12M,精确延时请使用汇编,大致延时长度如下 T=tx2+5 uSvoid DelayUs2x(unsigned char t){while(-t);}mS延时函数,含有输入参数 unsigned char t,无返回值。求一个单片机4键控制四个数码管显示的程序或思路 应该是P2.0-P2.3控制四个位选码 P2.0-P2.78个段选码使用两个74HC573 锁存器 并另外用两个端口入P1.0 P1.1分别控制段选使能和位选使能 sbit dula=P1^0 sbit wela=P1^1 写程序时,先开位选dula=1 再送数P2=0xxx 关段选dula=0 位选操作如上求 高人指点 用西门子S7-200控制两个7段数码管显示0-99的程序 程序2113看图片以下是程序说明vb0是准备显示的数值存放区,将5261VB0 转换为16位的整数存放在4102VW10中,将vw10 中的数值除以10,其中商就是165310位数,余数就是个位数,例如27除以10得到的商是2,余数是7这样就把1个数分割开了商存入VW14,余数存入VW12,将VW14和vw12 转换为字节型存储,经由SEG指令变为七段数码管的输出,QB0对应个位数,QB1对应十位数怎样用keil编写4位数码管显示1234的程序,编写数码管显示1234程序求一段s51控制数码管的程序 #includedefine uint unsigned intdefine uchar unsigned charuchar num;unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};sbit s1=P3^4;sbit s2=P3^5;sbit s3=P3^6;sbit s4=P3^7;void delay(){unsigned char i;for(i=0;i;i+);}void main(){while(1){P1=table[num];s1=0;delay();s1=1;P1=table[num];s2=0;delay();s2=1;P1=table[num];s3=0;delay();s3=1;P1=table[num];s4=0;delay();s4=1;}}单片机中二位数码管的显示,怎样用c语言写一段从0到99的程序啊? 公阳,P0.2,P0.3 分别通过PNP管接个位,十位数码管公共端,P1口输出数据,都是低电平有效includesbit shi=P0^3;十位公共极sbit ge=P0^2;个位公共极define Out P1/数据输出端unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};共阳实际显示 0 1 2 3 4 5 6 7 8 9延时-Delay(unsigned int t){while(t-);}主程序-main(){unsigned char i=j=0;while(1)/循环显示{for(i=0;i;i+){Out=tab[j%10];ge=0;Delay(1000);ge=1;Out=tab[j/10];shi=0;Delay(1000);shi=1;}j+;}}求单个按键控制数码管显示(动态)1234的程序,或者帮我改下下面这段数码管的代码程序 程序如下includesbit k1=P3^2;bit dis;显示标志位unsigned char code ledtab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};unsigned char ledbuf[]={1,2,3,4};void delay(unsigned char x){unsigned int j;while(x-)for(j=400;j>;0;j-);}void display(){unsigned char j,ledbit=1;for(j=0;j;j+){P0=ledbit;P2=ledtab[ledbuf[j]];delay(1);ledbit;}P0=0;关掉显示}void main(){while(1){if(dis=0)display();if(k1=0){delay(10);if(k1=0){dis=。dis;while(k1=0);}}}}仿真图

#unsigned#char函数#数码管#char#num

随机阅读

qrcode
访问手机版