第一次接触单片机,还在摸索
希望能有人可以给个建议,我按照正点原子的教程一步步进行,并重看了两遍😞
这个错误提示是什么?
【以下回答由 GPT 生成】
首先,我看到你的代码中存在一些错误。你缺少了一些头文件的引用,并且在 printf
语句中使用了错误的格式选项。我将解释这些错误,并提供具体的解决方案。
delay.h
和 usart.h
的函数,但是没有引入这两个头文件。你需要在代码的开头添加以下两行:#include "./SYSTEM/delay/delay.h"
#include "./SYSTEM/usart/usart.h"
printf
语句中,你使用了错误的格式选项 %a
和 \x
。这两个选项在 C 语言中是无效的,你需要将其修正为正确的选项。printf("t:%d\n", t);
这样可以将 t
的值以十进制的形式打印出来,并在结尾添加一个换行符。
此外,你还需要修复一个语法错误。在 t++
的代码行中,你忘记了加上分号 ;
。修正后的代码如下:
#include "./SYSTEM/syS/sy3.h"
#include "./SYSTEM/usart/usart.h"
#include "./SYSTEM/delay/delay.h"
int main(void) {
uint8_t t = 0;
sys_stm32_clock_init(9); // 设置时钟,72MHz
delay_init(72); // 延时初始化
usart_init(72, 5200); // 串口初始化
while(1) {
printf("t:%d\n", t);
delay_ms(500);
t++;
}
}
请按照上述方法进行修改并重新编译运行你的代码,应该可以解决问题。如果你遇到了其他错误,请提供错误信息和相关的代码以便我进一步帮助你。
【相关推荐】