main.c(45): warning: #223-D: function "Delay_ms" declared implicitly什么问题
时间: 2023-09-21 08:08:09 浏览: 952
这个警告是因为您在调用函数 `Delay_ms` 之前没有提前声明它。当您调用一个未声明的函数时,编译器会假设该函数返回 `int` 类型,并且该函数的参数列表是未知的。
为了避免这个警告,您需要在调用 `Delay_ms` 函数之前,提前在代码中声明它。这可以通过在文件顶部添加以下声明来实现:
```
void Delay_ms(unsigned int ms);
```
这样,编译器就知道 `Delay_ms` 函数的参数列表和返回类型,并且不会再发出警告。
另外,建议您在编写代码时,始终在文件开头添加所有函数的声明,以便更清晰地表示代码结构,并且不会遇到类似的警告或错误。
相关问题
User\MotorDrive.c(150): warning: #223-D: function "delay_ms" declared implicitly
这个警告是因为在 User\MotorDrive.c 文件中使用了一个名为 delay_ms 的函数,但是编译器在该文件之前并没有找到该函数的声明。为了避免这个警告,你需要在 User\MotorDrive.c 文件中添加如下代码:
```c
void delay_ms(unsigned int ms);
```
这个代码片段应该放在 User\MotorDrive.c 文件的开头,这样编译器就能够找到 delay_ms 函数的声明,并且不会再产生警告了。
ps.c(208): warning: #223-D: function "delay_us" declared implicitly
这个警告信息表示在 ps.c 文件中的第 208 行,函数 delay_us 被隐式声明了。这通常是因为在该文件中没有包含 delay_us 函数的头文件或者函数原型声明。
为了解决这个警告,你可以在 ps.c 文件中添加 delay_us 函数的头文件或者函数原型声明。具体的做法是,在 ps.c 文件的开头部分添加如下代码:
```c
#include <delay.h> // 假设 delay_us 函数定义在 delay.h 头文件中
void delay_us(unsigned int us); // 声明 delay_us 函数原型
```
这样就能够在编译时正确地识别 delay_us 函数,并消除警告信息。