电子产业一站式赋能平台

PCB联盟网

搜索
查看: 1825|回复: 3
收起左侧

有大佬能帮忙看看代码吗

[复制链接]

633

主题

1927

帖子

8108

积分

联盟顾问

Rank: 3Rank: 3

积分
8108
发表于 2023-5-26 07:58:44 | 显示全部楼层 |阅读模式
这是我们实习的一个作业,我组员发烧,就只有我一个在做 做不出来,明天就要交了
有大佬能帮忙看看代码吗-1.png
作业要求:51单片机,串口输出或者数码管显示距离,距离过近报警
#include <REGX51.H>
#include "stdio.h"
#include "UART.h"

sbit TRIG=P3^6;
sbit ECHO=P3^7;

unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x0c,0x89,0xbf};
unsigned int sec,Time,meter;
unsigned char num;
unsigned char a;


void Delay10us()
{
unsigned char i;

i = 2;
while (--i);
}

void Delay(unsigned int xms)
{
unsigned int i,j;
for(i=0;i<xms;i++)
{
for(j=0;j<120;j++);
}
}

void Time_Init()
{
PCON &= 0x7F;
SCON = 0x50;
TMOD=0x21;
TH1=TL1=0xFD;
TR1=1;
EA=1;
ES=1;
}
void multiple()
{
TRIG=0;
TRIG=1;
Delay10us();
TRIG=0;

while(!ECHO);
TR0=1;
while(ECHO);

Time=(TH0<<8)|TL0;
TR0=0;
TL0=TH0=0;
  meter=(Time*34)/2000;

}

void display()
{
printf("METER=%d\r\n",meter);
}

void main()
{
Time_Init();
while(1)
{
multiple();

display();
if(meter<2)
{
P0_7=0;
Delay(500);
P0_7=1;
}
}
}

void ser() interrupt 4 //当接收到消息的时候RI=1;
{
RI=0;//接收到数据后,将RI置0
meter=SBUF;//接收数据
num=1;//成功接收标志位
}
回复

使用道具 举报

2

主题

849

帖子

722

积分

二级会员

Rank: 2

积分
722
发表于 2023-5-26 07:59:22 | 显示全部楼层
可以,私信你了
回复 支持 反对

使用道具 举报

0

主题

875

帖子

675

积分

二级会员

Rank: 2

积分
675
发表于 2023-5-26 08:00:15 | 显示全部楼层
已经有人帮忙了
有大佬能帮忙看看代码吗-1.png ,谢谢大佬们的好心
回复 支持 反对

使用道具 举报

0

主题

825

帖子

683

积分

二级会员

Rank: 2

积分
683
发表于 2023-5-26 08:00:46 | 显示全部楼层
这个人是骗子,大家防雷

有大佬能帮忙看看代码吗-1.jpg
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表