mmm.c(149): error C267: 'LCD_ShowNum': requires ANSI-style prototype
时间: 2023-09-28 21:05:41 浏览: 264
这个错误通常是由于函数的声明不符合 ANSI C 标准导致的。ANSI C 标准要求在函数声明中明确指定函数的返回类型和参数类型。在你的代码中,函数 `LCD_ShowNum` 的声明可能没有按照 ANSI C 标准进行声明,导致编译器无法识别该函数。
为了解决这个问题,你需要按照 ANSI C 标准对函数进行声明。具体来说,你需要在函数声明中指定函数的返回类型和参数类型。例如,如果函数 `LCD_ShowNum` 的返回类型为 `void`,参数类型为 `int`,你可以这样声明该函数:
```
void LCD_ShowNum(int num);
```
如果你已经按照 ANSI C 标准进行了函数声明,但仍然遇到了这个错误,可能是因为你的编译器不完全支持 ANSI C 标准。你可以尝试更新编译器或者使用符合 ANSI C 标准的编译器来解决这个问题。
相关问题
LCD_ShowNum(18,56,0,1,12,0x0000);//p1×ø±ê LCD_ShowNum(80,56,59,2,12,0x0000); LCD_DrawLine(82,54,82,51, 0x0000); LCD_ShowNum(140,56,119,3,12,0x0000); LCD_ShowChar(130,38,84,12,0x0000,1); LCD_ShowChar(135,38,47,12,0x0000,1); LCD_ShowChar(140,38,115,12,0x0000,1); LCD_ShowNum(8,47,0,1,12,0x0000); LCD_ShowNum(8,30,5,1,12,0x0000); LCD_DrawLine(15,35,18,35, 0x0000); LCD_ShowNum(8,10,9,1,12,0x0000); LCD_ShowChar(25,4,85,12,0x0000,1); LCD_ShowChar(30,4,47,12,0x0000,1); LCD_ShowChar(35,4,118,12,0x0000,1); LCD_DrawLine(15,20,155,20, 0xF800);//»Ïß解释每句代码的含义
这段代码是用来控制LCD屏幕上显示一些数字和字符,并绘制一些直线。具体解释如下:
- LCD_ShowNum(18,56,0,1,12,0x0000):在LCD屏幕上显示一个数字0,位置为(18,56),字体大小为12,颜色为黑色。
- LCD_ShowNum(80,56,59,2,12,0x0000):在LCD屏幕上显示一个数字59,位置为(80,56),字体大小为12,颜色为黑色。
- LCD_DrawLine(82,54,82,51, 0x0000):在LCD屏幕上绘制一条从(82,54)到(82,51)的直线,颜色为黑色。
- LCD_ShowNum(140,56,119,3,12,0x0000):在LCD屏幕上显示一个数字119,位置为(140,56),字体大小为12,颜色为黑色。
- LCD_ShowChar(130,38,84,12,0x0000,1):在LCD屏幕上显示一个字符'T',位置为(130,38),字体大小为12,颜色为黑色。
- LCD_ShowChar(135,38,47,12,0x0000,1):在LCD屏幕上显示一个字符'O',位置为(135,38),字体大小为12,颜色为黑色。
- LCD_ShowChar(140,38,115,12,0x0000,1):在LCD屏幕上显示一个字符'P',位置为(140,38),字体大小为12,颜色为黑色。
- LCD_ShowNum(8,47,0,1,12,0x0000):在LCD屏幕上显示一个数字0,位置为(8,47),字体大小为12,颜色为黑色。
- LCD_ShowNum(8,30,5,1,12,0x0000):在LCD屏幕上显示一个数字5,位置为(8,30),字体大小为12,颜色为黑色。
- LCD_DrawLine(15,35,18,35, 0x0000):在LCD屏幕上绘制一条从(15,35)到(18,35)的直线,颜色为黑色。
- LCD_ShowNum(8,10,9,1,12,0x0000):在LCD屏幕上显示一个数字9,位置为(8,10),字体大小为12,颜色为黑色。
- LCD_ShowChar(25,4,85,12,0x0000,1):在LCD屏幕上显示一个字符'E',位置为(25,4),字体大小为12,颜色为黑色。
- LCD_ShowChar(30,4,47,12,0x0000,1):在LCD屏幕上显示一个字符'O',位置为(30,4),字体大小为12,颜色为黑色。
- LCD_ShowChar(35,4,118,12,0x0000,1):在LCD屏幕上显示一个字符'R',位置为(35,4),字体大小为12,颜色为黑色。
- LCD_DrawLine(15,20,155,20, 0xF800):在LCD屏幕上绘制一条从(15,20)到(155,20)的直线,颜色为红色。
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_FILL_PICTURE?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_DELAY_50MS?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?OLED_DISPLAY_ON?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?OLED_DISPLAY_OFF?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?OLED_ON?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_OLED_SHOWNUM?OLED *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_OLED_DRAWBMP?OLED Program Size: data=46.0 xdata=0 code=6157 creating hex file from "OLED"... OBJECT TO HEX FILE CONVERTER OH51 V2.7.0.0 COPYRIGHT KEIL ELEKTRONIK GmbH 1991 - 2001 GENERATING INTEL HEX FILE: OLED.hex *** ERROR: UNKNOWN RECORD TYPE 49H *** OH51 ABORTED. "OLED" - 0 Error(s), 7 Warning(s). Build Time Elapsed: 00:00:01
这段信息包含了一些警告和一个错误。警告信息是由编译器生成的,表示某些代码段没有被调用,但是由于可能会被其他代码段调用,因此编译器没有将其从可执行文件中删除。这些警告信息通常不影响程序的正常运行,只是告诉你一些没有被使用的代码段被忽略了。
错误信息是由转换工具生成的,表示转换工具无法识别记录类型 49H。可能的原因是 HEX 文件格式出现了错误,或者转换工具版本不兼容。建议检查 HEX 文件格式是否正确,并尝试更新转换工具版本。
阅读全文