找回密码
 立即注册
查看: 484|回复: 8

求助帖 | 已解决

[复制链接]
  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-18 21:23:32 | 显示全部楼层 |阅读模式
编译出现这种情况,但是全局搜索后没有发现这个语句,也不知道哪里错了,,

2.我把源文件复制过来还是错误,但是用范例文件能够正常编译,目前用的是核心板

截图202512182122043047.jpg

回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-24 15:32:24 | 显示全部楼层
求助帖KEY_Task为什么不能用,是溢出了吗?
关于多任务调度当中,为什么最后一点,多任务调度按键按下打印输出的版块,无法实现呢?
下面是我的代码部分,
io.h文件:
#ifndef __IO_h                                //只能用特定的格式
#define __IO_h
#include "task.h"

/*
        C 语言编译器是按文件独立编译的(每个.c文件是一个 “编译单元”),
        编译器处理 A.c 时,根本不知道 B.c 里定义了哪些函数 —— 除非你明确 “告诉它”(也就是函数声明)。
        你在led.c里实现了void LED0_Blink(void);
        想在main.c里调用这个函数;
        如果main.c里没有看到LED0_Blink的声明,编译器编译main.c时,会认为 “这个函数未定义”,
        直接报undefined reference to 'LED0_Blink'(链接阶段错误),
        或implicit declaration of function 'LED0_Blink'(编译阶段警告 / 错误)。
                        所有的.h文件都在main.c文件里面使用
*/
                //调用头文件
void LED0_Blink(void);
void LED1_Blink(void);
void LED2_Blink(void);        
void KEY_Task(void);                        //函数声明,在主函数中调用

                                                        //声明文件
#endif
io.c文件:
#include "io.h"
#include "config.h"
u8 state1 = 0;                        //1        初始状态
u8 state2 = 0;                        //2 初始状态
u8 state3 = 0;                        //LED3初始状态

u16 Key_Vol = 0;

void LED0_Blink(void)
{
        state1 =! state1;
        P20 =  state1;
}
void LED1_Blink(void)
{
        state2 =! state2;
        P21 =  state2;
}
void LED2_Blink(void)
{
        state3 =! state3;
        P22 =  state3;
}

void KEY_Task(void)
{
        if( P32 == 0)
        {
               
                Key_Vol++;
                if( Key_Vol == 5)
                {
                        //按键按下的任务;
                        printf("按键单击\r\n");
                }
                else
                {
                        Key_Vol = 0;
                }
        }
}
task.c:
static TASK_COMPONENTS Task_Comps[]=
{
////状态  计数  周期  函数

        {0, 300,   300,  LED0_Blink},      /* task 1 Period: 300ms */
        {0, 600,   600,  LED1_Blink},      /* task 1 Period: 600ms */
        {0, 900,   900,  LED2_Blink},      /* task 1 Period: 900ms */
        {0, 10,    10,   KEY_Task},      /* task 1 Period: 900ms */

        /* Add new task here */
};
u8 Tasks_Max = sizeof(Task_Comps)/sizeof(Task_Comps[0]);
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-24 15:32:53 | 显示全部楼层
htmw*** 发表于 2025-12-24 15:32
求助帖KEY_Task为什么不能用,是溢出了吗?
关于多任务调度当中,为什么最后一点,多任务调度按键按下打印 ...

灯可以正常使用
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-18 21:34:01 | 显示全部楼层
已经解决
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:813
  • 最近打卡:2026-03-23 08:19:26
已绑定手机

25

主题

630

回帖

3959

积分

论坛元老

积分
3959
发表于 2025-12-19 08:32:24 | 显示全部楼层

怎么解决的呢
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-19 20:07:43 | 显示全部楼层

好像是头文件的问题,哎呦你这一问,我又忘记了,我当时去问了豆包子,然后逐项排查原因解决掉了
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-20 15:17:41 | 显示全部楼层

是之前复制示例代码的时候,吧原来应该注释掉的部分没有注释,然后同一个变量被重复用了,这个函数就产生冲突,我又重新复制粘贴上去,把要改的部分,自己又改了一遍,最好是做完一项编译一下,这样就不会报错了,原因也就知道了
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-20 15:28:36 | 显示全部楼层

或者你把这个参数给注释掉
  • 一方面,usb相关的库文件(cdc_32g.LIB)里已经定义过 “USER_USB_CMD” 这个东西;
  • 另一方面,您写的led.c文件里又重新定义了一次这个东西;很简单问题当时给忽略掉了,导致USBCDC无法测试

截图202512201527286725.jpg

回复

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:22
  • 最近打卡:2026-01-02 14:48:10
已绑定手机

16

主题

42

回帖

221

积分

中级会员

积分
221
发表于 2025-12-20 15:29:04 | 显示全部楼层

你可以看下这个帖子的回复,我刚刚给解答了一遍
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-3-23 23:12 , Processed in 0.114525 second(s), 85 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表