找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2641|回復(fù): 2
收起左側(cè)

總是提示:接收.c(31): warning C290: missing return value等等還有c38 55 61

[復(fù)制鏈接]
ID:884801 發(fā)表于 2021-2-24 10:03 | 顯示全部樓層 |閱讀模式
#pragma src(E:\remote.asm)
#include "reg51.h"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
#define disout P2
sbit   dula=P3^7;
uchar code   table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit  remotein=P3^1;
sbit sin=P3^0;
sbit K1=P0^0;
sbit K2=P0^1;
sbit K3=P0^2;
sbit K4=P0^3;
sbit K5=P0^4;
sbit K6=P0^5;
sbit K7=P0^6;
sbit K8=P0^7;
uint i,j,m,n,k,s=1;
uint keyvol;              //值存放
//
/*********1 毫秒延時(shí)程序**********/
delay1ms(uint t)
{
for(i=0;i<t;i++)
for(j=0;j<120;j++);
}
/***********初始化函數(shù)**********/
clearmen()
{
dula=0;
EX0=1;
EA=1;              //開總中斷
}
//

/**********函數(shù)************/
loop()
{
switch(disout&0x07)
{
case 0:{s=1;break;}
case 1:{s=2;break;}
case 2:{s=3;break;}
case 3:{s=4;break;}
case 4:{s=5;break;}
case 5:{s=6;break;}
case 6:{s=7;break;}
case 7:{s=8;break;}
default:break;}
}
xianshi()
{
dula=1;
P1=table[keyvol-2] ;
dula=0;
}

/***********主函數(shù)***************/
main()
{
clearmen();              //初始化
loop();
while(1)
{
while(sin==1);
delay1ms(s);
K8=0;
delay1ms(1);
K8=1;
}
}
/************外中斷遙控接收函數(shù)**************/
void intt0(void) interrupt 0
{
EX0=0;keyvol=0;
if(remotein==0)
   {delay1ms(1);
    if(remotein==0)
{while(1)
{while(remotein==0);
keyvol++;k=0;
while(remotein==1){delay1ms(1);k++;if(k>2){ xianshi();goto OOUUTT; xianshi();};}
}
OOUUTT:
switch(keyvol)
{
case 2:{K1=~K1;break;}
case 3:{K2=~K2;break;}
case 4:{K3=~K3;break;}
case 5:{K4=~K4;break;}
case 6:{K5=~K5;break;}
case 7:{K6=~K6;break;}
case 8:{K7=~K7;break;}
case 9:{if(disout==0x00){disout=0xff;}else{disout--;}loop();break;}
default:break;
}
}
}
EX0=1;
}

回復(fù)

使用道具 舉報(bào)

ID:332444 發(fā)表于 2021-2-25 08:25 | 顯示全部樓層
從31起到文件頭全部注釋掉然后逐行解釋
回復(fù)

使用道具 舉報(bào)

ID:466505 發(fā)表于 2021-2-25 10:45 | 顯示全部樓層
函數(shù)名前面要加上返回類型,沒有就加上void,比如
delay1ms(uint t)
{
for(i=0;i<t;i++)
for(j=0;j<120;j++);
}
要改成
void delay1ms(uint t)
{
for(i=0;i<t;i++)
for(j=0;j<120;j++);
}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表