📄 ex7_2.c
字号:
//程序:ex7_2.c
//功能:乙机接收及显示程序
#include <reg51.h>
code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6D,0x7D,0x07,0x7f,0x6f}; //定义0~9显示字型码
unsigned char buffer[]={0x00,0x00,0x00,0x00,0x00,0x00}; //定义接收数据缓冲区
void disp(void); //显示函数声明
void main() //主函数
{
unsigned char i;
TMOD=0x20; //定时器1工作于方式2
TL1=0xf4; //波特率定义
TH1=0xf4;
TR1=1;
SCON=0x40; //定义串行口工作于方式1
for(i=0;i<6;i++)
{
REN=1; //接收允许
while(RI==0); //查询等待接收标志为1,表示接收到数据
buffer[i]=SBUF; //接收数据
RI=0; //RI由软件清0
}
for(;;) disp(); //显示接收数据
}
//函数名:disp
//函数功能:在六个LED上显示buffer中的六个数
//入口参数:无
//出口参数:无
void disp()
{
unsigned char w,i,j;
w=0x01; //位码赋初值
for(i=0;i<6;i++)
{
P1=~(tab[buffer[i]]); // 送显示字型段码,buffer[i]作为数组分量的下标
P2=~w; // 送位码
for(j=100;j>5;j--); // 显示延时
w<<=1; // w左移一位
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -