c编的单片机程序出现问题,用keil编译提示scan()调用函数missing return value,怎么办?高分悬赏

#include "reg51.h"
#include "intrins.h" //延时函数用
#define Disdata P1 //段码输出口
#define discan P3 //扫描口
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P3^7; //温度输入口
sbit DIN=P1^7; //LED小数点控制
uint h;
uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,
0x06,0x06,0x07,0x08,0x08,0x09,0x09};//温度小数部分用查表法
uchar codedis_7[12]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,
0x90,0xff,0xbf}; /* 共阳LED段码表 "0" "1" "2" "3" "4" "5" "6" "7" "8" "9""不亮" "-" */
uchar code scan_con[4]={0xfe,0xfd,0xfb,0xf7}; // 列扫描控制字
uchar data temp_data[2]={0x00,0x00}; // 读出温度暂放
uchar data display[5]={0x00,0x00,0x00,0x00,0x00};//显示单元数据,共4个数据,一个运算暂存用
void delay(uint t)//11微秒延时函数
{ for(;t>0;t--); }
scan()//显示扫描函数
{ char k;
for(k=0;k<4;k++) //四位LED扫描控制
{ Disdata=dis_7[display[k]];
if(k==1){DIN=0;}
discan=~scan_con[k];delay(90);discan=0x00;
}
}

函数要指定返回值的,写成void scan(),
或者
int scan()//显示扫描函数
{ char k;
for(k=0;k<4;k++) //四位LED扫描控制
{ Disdata=dis_7[display[k]];
if(k==1){DIN=0;}
discan=~scan_con[k];delay(90);discan=0x00;
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-21
这只是警告,错误在代码别的地方
第2个回答  2013-11-21
void scan()

...软件中编译的时候出现警告:missing return value,而且始终在同一行...
你的函数里少了返回值,检查一下你需要这个函数返回的值并加上,若不需要返回值,就在函数前加Void。 本回答由提问者推荐 举报| 答案纠错 | 评论(1) 16 1 aebsfb 采纳率:50% 擅长: 暂未定制 为您推荐: keil uvision4怎么用 编译程序 keil 编译 编译原理 keil重新编译 keil编译在哪儿 keil的编译...

...11.c(52): warning C290: missing return value.我该怎么处理?_百 ...
应该是你的函数有返回值的类型,但你却没有返回一个值,你return一下就行

单片机程序出现warning C291: not every exit path returns a value什 ...
函数返回值类型为非空的 但是在函数中有一个或者以上的分支没有返回值 例如 int test(){ if(){ ...return 0;} else if{ ...return 0;} else{...而这里没有返回值的话就可能会出现这种情况了} }

关于51 C编程中使用stdio.h开发串口,使用printf的问题。
在单片机中用printf通过串口输出需要对串口进行相应配置,你可以在KEIL51的例程中看到一个HELLO的程序。\/*--- HELLO.C Copyright 1995-2005 Keil Software, Inc.---*\/ include <REG52.H> \/* special function register declarations *\/ \/* for the ...

...4中编译出现33.C(40): error C129: missing ';' before 'num'改后...
首先,unint 是个啥东西?你要是不告诉编译器的话,它当然会报错!其次,写程序时用英文输入!别乱敲全角符号!

Keil遇到问题,不会改 TEXT1.C(33): error C216: subscript on non...
错误的意思是你把下标用在了一个非数组的变量上。从你的代码看, display不是数组,但第33句,使用了display[k]。所以出错。

keil中怎么使用三角函数 要给个c编程例子 谢谢
math.h 和C一样调用。程序:sin Summary #include <math.h> float sin (float x); \/* value to calculate sine for *\/ Description The sin function calculates the sine of the floating-point value x. The value of x must be in the -65535 to +65535 range or an NaN ...

51单片机C语言开发与实例的目录
1.2 MCS-51单片机的内部结构1.1.3 MCS-51单片机的存储器组织1.2 汇编语言1.3 C语言1.4 单片机汇编语言与C语言程序设计对照1.5 汇编语言和C语言混合编程1.5.1 在C51中嵌入汇编1.5.2 C程序中调用汇编功能程序1.5.3 汇编程序调用C程序第2章 KeilC51的数据结构2.1 KeilC512.2 ...

相似回答