串行口实验 编写程序利用PC机控制单片机实验板上的数码管设备工作

编写程序利用PC机控制单片机实验板上的数码管设备工作

在这里插入图片描述
在pc上输入fe,第一个数码管显示1.

在这里插入图片描述
在pc上输入fa第五个数码管显示5

程序:
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar temp;
uchar led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
int main(void)
{
SCON=0x50;
PCON=0X00;
TMOD=0X20;
EA=1;
ES=1;
TH1=0XFD;
TL1=0XFD;
TR1=1;
while(1);
}
void int1(void) interrupt 4
{
ES=0;
if(RI)
{
RI=0;
temp=SBUF;
switch(temp)
{
case 0xff : P0=led[0],P2=0xfe;break;
case 0xfe : P0=led[1],P2=0xfd;break;
case 0xfd : P0=led[2],P2=0xfb;break;
case 0xfc : P0=led[3],P2=0xf7;break;
case 0xfb : P0=led[4],P2=0xef;break;
case 0xfa : P0=led[5],P2=0xdf;break;
case 0xf9 : P0=led[6],P2=0xbf;break;
case 0xf8 : P0=led[7],P2=0x7f;break;
case 0xf7 : P0=led[8],P2=0xfe;break;
case 0xf6 : P0=led[9],P2=0xfd;break;
}
}
ES=1;
}

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
这个问题需要分为两部分解决: 第一部分:单片机与PC机通信 单片机需要通过串口与PC机进行通信,因此需要使用单片机的串口模块,并设置串口参数(如波特率、数据位、校验位等)。具体的实现方法可以根据单片机型号和开发板的具体情况进行选择。 在单片机程序中,需要不断地读取串口接收缓冲区中的数据,并对收到的数据进行处理。如果收到了一个合法的字符(即0-F之间的一个十六进制数字),则将其转换为相应的数码管显示,并通过串口将其发送回PC机。 第二部分:PC机串口调试助手的使用 PC机串口调试助手是用来模拟串口通信的工具,可以用于发送和接收数据。在本例中,需要将PC机串口调试助手上输入的字符发送给单片机,同时将单片机回传的数据显示在调试助手上。 具体的实现方法是,在调试助手中选择正确的串口和串口参数,并在发送框中输入要发送的数据。然后,单片机会接收到这些数据,并进行处理。处理完成后,单片机会将结果通过串口发送回PC机,调试助手会接收到这些数据,并将其显示出来。 需要注意的是,单片机和PC机之间的串口通信需要保证数据格式的一致性,否则会出现接收不到或接收错误的情况。因此,在编写单片机程序和使用调试助手时,需要注意串口参数的设置和数据格式的定义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值