⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 +

📁 设计仿真实例的运行文件及C程序
💻
字号:
/******************************************************************************/

#include <reg51.h>
#define uchar unsigned char

sbit dula=P2^0;
sbit wela=P2^1;

sbit CLK=P1^3;
sbit ST=P1^2;
sbit OE=P1^0;
sbit EOC=P1^1;

sbit wei1=P2^1;
sbit wei2=P2^2;
sbit wei3=P2^3;

sbit wei4=P2^5;
sbit wei5=P2^6;
sbit wei6=P2^7;

uchar code dulatab[]={0x3f,0x06,0x5b,0x4f,0x66,
					  0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //数字编码0-9
uchar code welatab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//位控制字

uchar count;

void delay(uchar time)	 //延时
{
	uchar i,j;
	for(i=0;i<time;i++)
	{
		for(j=0;j<110;j++)
		;
	}
}

/*********系统初始化***********/
void init()
{
 P2=0xff;
 EA = 1;                     //开总中断
 TMOD = 0x02;                //设定定时器T0工作方式  
 TH0=216;                    //利用T0中断产生CLK信号
 TL0=216;					 //定时40us频率25K
 TR0=1;                      //启动定时器T0
 ET0=1;
 ST=0;
 OE=0;  
 P1=0x30;
}

void write1(uchar num)
{

	uchar i,j,k;
	k=num/100;
	j=num%100/10;
	i=num%10;

	P2=0xff;
	P0=dulatab[k];
	wei4=0;

	delay(4);
	
	P2=0xff;
	P0=dulatab[j];
	wei5=0;

	delay(4);
	
	P2=0xff;
	P0=dulatab[i];
	wei6=0;

	delay(4);
}

void write0(uchar num)
{
	uchar i,j,k;
	k=num/100;
	j=num%100/10;
	i=num%10;

	P2=0xff;
	P0=dulatab[k];
	wei1=0;

	delay(4);
	
	P2=0xff;
	P0=dulatab[j];
	wei2=0;

	delay(4);
	
	P2=0xff;
	P0=dulatab[i];
	wei3=0;

	delay(4);

}
uchar adin0()
{
	uchar value;
	OE=0;
	EOC=1;
	ST=0;
	P1&=0x8f;
	P1|=0x30;
	delay(10);
	ST=1;
	delay(10);
	ST=0;
	while(!EOC);
//	EOC=0;
	delay(10);
	OE=1;
	delay(1);
	value=P3;
	OE=0; 
	return value;
}
uchar adin1()
{
	uchar value;
	OE=0;
	EOC=1;
	ST=0;
	P1&=0x8f;
	P1|=0x00;
	delay(10);
	ST=1;
	delay(10);
	ST=0;
	while(!EOC);
//	EOC=0;
	delay(10);
	OE=1;
	delay(1);
	value=P3;
	OE=0; 
	return value;
}
void main()
{
	uchar in0,in1;
	init();
	while(1)
	{
		in0=adin0();
		write0(in0);
		in1=adin1();
		write1(in1);
	}		
}

void timer0(void) interrupt 1
{
 CLK=~CLK;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -