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

📄 mc14433.c

📁 程序简单易读,稍加改动就可以开发出许多别的功能.
💻 C
字号:
#include<reg52.h>
#include<intrins.h>
#define disdata P0
#define discan P2
#define uchar unsigned char
#define uint unsigned int
sbit q0=P1^0;
sbit q1=P1^1;
sbit q2=P1^2;
sbit q3=P1^3;
sbit ds1=P1^4;
sbit ds2=P1^5;
sbit ds3=P1^6;
sbit ds4=P1^7;
uchar a=0xf,b,c;
uchar code dis_7[13]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf,0xb9};
//共阳LED段码表        "0"  "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9" "不亮" "-" "-|"
uchar code scan_con[4]={0xfe,0xfd,0xfb,0xf7};    //列扫描控制字
data mc14433[4] _at_ 0x20;
/*11us延时*/
void delay(uint t){
	for(;t>0;t--);
	}
/*显示扫描涵数*/
scan()
{
  char k;
     for(k=0;k<4;k++)                     //4位LED扫描控制
	 {
	  disdata=dis_7[mc14433[k]];          //数据显示
	  discan=scan_con[k];                 //位选
	  delay(200);
	 }
}
	/*主涵数*/
void main(){
  	EA=1;
	EX1=1;
   IT1=1;
	disdata=0xff;
	discan=0xff;
while(1){
	scan();
}
}
   /*读mc14433*/
void mc()interrupt 2 using 1 {
	while(ds1==0);
if(q0==1){
if(q2==1){mc14433[3]=0x01;
mc14433[2]=0x0a;
mc14433[1]=0x0a;
mc14433[0]=0x0a;
}
else{mc14433[3]=0x0c;
mc14433[2]=0x0a;
mc14433[1]=0x0a;
mc14433[0]=0x0a;
}
}
else{
if(q2==0){
if(q3==1){
mc14433[3]=0x0b;}
else{mc14433[3]=0x0c;}
}
else{
if(q3==1){
		mc14433[3]=0x00;
		}
else{mc14433[3]=0x01;
}
}
    while(ds2==0);
		mc14433[2]=(P1&0x0f);
	while(ds3==0);
		mc14433[1]=(P1&0x0f);
	while(ds4==0);
		mc14433[0]=(P1&0x0f);

}
}
     

⌨️ 快捷键说明

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