📄 1.txt
字号:
/**************************************************
失恋过度
QQ:175264198
TEL:13049829737
jcxyx@126.com
www.QINGHAI.com
>>>>>>>>>>>>>>>>>>>>>>>>>>>
***************************************************/
#include <reg51.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar a,b,c,d;
uchar buf; // 接收数据暂存
sbit P33 = P3^3; // 此引脚控制发光管
//sbit P32 = P3^2; // 此引脚控制蜂鸣器
/********************HC138控制状态**********************/
sbit E1=P2^3;
sbit C1=P2^2;
sbit B1=P2^1;
sbit A1=P2^0;
sbit E2=P2^7;
sbit C2=P2^6;
sbit B2=P2^5;
sbit A2=P2^4;
sbit A3=P1^7;
sbit B3=P1^6;
sbit C3=P1^5;
sbit E3=P1^4;
sbit A4=P1^3;
sbit B4=P1^2;
sbit C4=P1^1;
sbit E4=P1^0;
/********************延时函数****************************/
void delay(int ms)
{
while(ms--)
{
uchar i;
for(i=0;i<250;i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
/********************接收数据函数*************************/
void recvdata()
{
while(RI==0);
RI = 0;
buf = SBUF;
}
/********************串口初始化函数 **********************/
void init()
{
TMOD = 0x20; // 定时器T1使用工作方式2
TH1 = 250;
TL1 = 250;
TR1 = 1; // 开始计时
//PCON = 0x80; // SMOD = 1
SCON = 0xd0; // 工作方式,9位数据位,波特率9600kbit/s,允许接收
EA = 1; // 关闭所有中断
P33 = 1;
P2=0x00; // 发光管不亮
P1=0x00;
}
/**********************主程序*****************************/
void main()
{
init(); // 串口初始化
while(1) // 进入设备应答
{
recvdata(); //数据接收
switch(buf)
{
case '0': E1=0;a='0';break;//0 //1组输出
case '!': A1=1;B1=1;C1=1;E1=1;a='1';break;//1
case '@': A1=0;B1=1;C1=1;E1=1;a='2';break;//2
case '#': A1=1;B1=0;C1=1;E1=1;a='3';break;//3
case '$': A1=0;B1=0;C1=1;E1=1;a='4';break;//4
case '%': A1=1;B1=1;C1=0;E1=1;a='5';break;//5
case '^': A1=0;B1=1;C1=0;E1=1;a='6';break;//6
case '&': A1=1;B1=0;C1=0;E1=1;a='7';break;//7
case '*': A1=0;B1=0;C1=0;E1=1;a='8';break;//8
case 'A': E2=0;b='0';break;//0 //2组输出
case 'B': A2=1;B2=1;C2=1;E2=1;b='1';break;//1
case 'C': A2=0;B2=1;C2=1;E2=1;b='2';break;//2
case 'D': A2=1;B2=0;C2=1;E2=1;b='3';break;//3
case 'E': A2=0;B2=0;C2=1;E2=1;b='4';break;//4
case 'F': A2=1;B2=1;C2=0;E2=1;b='5';break;//5
case 'G': A2=0;B2=1;C2=0;E2=1;b='6';break;//6
case 'H': A2=1;B2=0;C2=0;E2=1;b='7';break;//7
case 'I': A2=0;B2=0;C2=0;E2=1;b='8';break;//8
case 'J': E3=0;c='0';break;// //3组输出
case 'K': A3=1;B3=1;C3=1;E3=1;c='1';break;//1
case 'L': A3=0;B3=1;C3=1;E3=1;c='2';break;//2
case 'M': A3=1;B3=0;C3=1;E3=1;c='3';break;//3
case 'N': A3=0;B3=0;C3=1;E3=1;c='4';break;//4
case 'O': A3=1;B3=1;C3=0;E3=1;c='5';break;//5
case 'P': A3=0;B3=1;C3=0;E3=1;c='6';break;//6
case 'Q': A3=1;B3=0;C3=0;E3=1;c='7';break;//7
case 'R': A3=0;B3=0;C3=0;E3=1;c='8';break;//8
case 'S': E4=0;d='0';break;//0 //4组输出
case 'T': A4=1;B4=1;C4=1;E4=1;d='1';break;//1
case 'U': A4=0;B4=1;C4=1;E4=1;d='2';break;//2
case 'V': A4=1;B4=0;C4=1;E4=1;d='3';break;//3
case 'W': A4=0;B4=0;C4=1;E4=1;d='4';break;//4
case 'X': A4=1;B4=1;C4=0;E4=1;d='5';break;//5
case 'Y': A4=0;B4=1;C4=0;E4=1;d='6';break;//6
case 'Z': A4=1;B4=0;C4=0;E4=1;d='7';break;//7
case '9': A4=0;B4=0;C4=0;E4=1;d='8';break;//8
case 'v': SBUF =a; while(TI==0);TI = 0;;break;
case 'x': SBUF =b; while(TI==0);TI = 0;;break;
case 'y': SBUF =c; while(TI==0);TI = 0;;break;
case 'z': SBUF =d; while(TI==0);TI = 0;;break;
}
P33 = 0;//绿灯亮,表示接收数据成功
delay(2);
P33 = 1;
}
}
/**********************主程序END***********************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -