写程序遇到的,想知道return返回是返回到哪一句。。。
在测试时如果加上 i=0 这一句和没加效果一样 都是LCD1602上显示 o 闪烁
求指导
#include<reg51.h>
#include"All.h"
int i=1;
void main(void)
{
LCD_Init();
LCD_Clear();//清屏
// LCD_Write_Char(7,0,'o');
//LCD_Write_Char(8,0,'k');
//DelayMs(500);
while(1)
{
if(i==1)
{
LCD1602_Write_Char(7,0,'O');
// i=0;
return ;
}
else
{
LCD1602_Write_Char(8,0,'A');
}
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
想问的是跳出哪个函数,下面又该运行哪句代码了,小白,求指导。。。。
原本的主程序是下面的程序,我就是不知道程序中return返回的什么,下面又该怎么运行,才写的上面的代码看看能不能试出来的。。。。。。
就是 err=1 下面怎么运行 完整的主程序在下面
if(err != 0){//如果发生错误
sprintf(Data,"ERR:%d",(int)err);//显示错误代码
LCD_Write_String(0,0,Data);
return;//发生错误后跳出循环
程序原来就是LCD1602显示DH11采集的温度和湿度。。。。
void main(void)
{
unsigned char err,Data[10],val[5];
LCD_Init();
delayms(20);//有助于液晶稳定
LCD_Clear();
while(1)
{
DHT11_start();
err = DHT11_r_data(val);
if(err != 0){//如果发生错误
sprintf(Data,"ERR:%d",(int)err);//显示错误代码
LCD_Write_String(0,0,Data);
return;//发生错误后跳出循环
}else{
LCD_Write_String(14,0,"OK");
}
sprintf(Data,"H:%d.%d %%",(int)val[0],(int)val[1]);//显示湿度
LCD_Write_String(0,0,Data);
sprintf(Data,"T:%d.%d C",(int)val[2],(int)val[3]);//显示温度
LCD_Write_String(0,1,Data);
if((val[0] + val[1] + val[2] + val[3]) == val[4]){//效验数据是否正确,根据器件资料 所有温度和湿度的总和等于最后一个数据
LCD_Write_String(14,1,"OK");
}else{
LCD_Write_String(13,1,"ERR");
}
delayms(1000);
LCD_Clear();
}
}
你在main函数中直接来个return就相当于程序已执行完毕
一周热门 更多>