公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager
100 likes received

我正在开发一个使用 xmc7200 的项目,其中我有 2 个按钮 5 种模式,一个 OLED.1 按钮用于浏览模式,另一个用于选择或进入模式。 如何实现这一点。 我尝试了下面的代码,但是当我按下按钮时什么也没发生。

//检查导航按钮
if (cyhal_gpio_read (CYBSP_USER_BTN1) == CYBSP_BTN_OFF)
{
//按下按钮,导航到下一个模式
currentMode = (currentMode + 1)% MODE_COUNT;
cyhal_system_delay_ms (SHORT_GLITCH_DELAY_MS);//添加延迟或去抖逻辑
而 (cyhal_gpio_read (CYBSP_USER_BTN2) == CYBSP_BTN_OFF);
}
 
//检查选择按钮
if (cyhal_gpio_read (CYBSP_USER_BTN2) == CYBSP_BTN_OFF)
{
//按下按钮,根据所选模式执行操作
开关(当前模式)
{
case 独立模式:
//模式 1 的代码
printf (" 独立模式\ r\n ");
休息;
案例 USER_MODE:
//模式 2 的代码
printf (" 用户模式\ r\n ");
休息;
//为其他模式添加案例
 
默认:
休息;
}
 
cyhal_system_delay_ms(SHORT_GLITCH_DELAY_MS);
而 (cyhal_gpio_read (CYBSP_USER_BTN2) == CYBSP_BTN_OFF);
}

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/Button-operation/td-p/652371

0 点赞
1 解答
Translation_Bot
Community Manager
Community Manager
Community Manager
100 likes received

嗨,

1:我们有一份关于 XMC7000 GPIO 点击的应用说明。

2:问题:" 我尝试了下面的代码,但是当我按下按钮时什么也没发生。"

请尝试调试应用程序项目,并检查代码运行到哪里。

2.1 请检查有关 PIN: CYBSP_USER_BTN1 的物理电压,然后查看有关 " cyhal_gpio_read (CYBSP_USER_BTN1) " 的返回值。

我找不到来自 main.c 的代码片段 你提供的文件。 请检查此处是否存在不匹配的情况。

3:请试试代码中关于 GPIO 的配置是否正确,就像:

结果 = cyhal_gpio_init (CYBSP_USER_BTN、CYHAL_GPIO_DIR_INPUT、CYHAL_GPIO_DRIVE_PULLUP、CYBSP_BTN_OFF);

4:请从 Modus Toolbox 中下载 XMC7000 GPIO 代码示例。

5:希望它能对你有所帮助。

谢谢,

玲玲

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/Button-operation/m-p/654349

在原帖中查看解决方案

0 点赞
3 回复数
Translation_Bot
Community Manager
Community Manager
Community Manager
100 likes received

请向我们分享您的测试项目,该项目可以重现该问题。

代码片段不足以让我们分析问题。

 

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/Button-operation/m-p/652567

0 点赞
lock attach
Attachments are accessible only for community members.
Translation_Bot
Community Manager
Community Manager
Community Manager
100 likes received
 
0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager
100 likes received

嗨,

1:我们有一份关于 XMC7000 GPIO 点击的应用说明。

2:问题:" 我尝试了下面的代码,但是当我按下按钮时什么也没发生。"

请尝试调试应用程序项目,并检查代码运行到哪里。

2.1 请检查有关 PIN: CYBSP_USER_BTN1 的物理电压,然后查看有关 " cyhal_gpio_read (CYBSP_USER_BTN1) " 的返回值。

我找不到来自 main.c 的代码片段 你提供的文件。 请检查此处是否存在不匹配的情况。

3:请试试代码中关于 GPIO 的配置是否正确,就像:

结果 = cyhal_gpio_init (CYBSP_USER_BTN、CYHAL_GPIO_DIR_INPUT、CYHAL_GPIO_DRIVE_PULLUP、CYBSP_BTN_OFF);

4:请从 Modus Toolbox 中下载 XMC7000 GPIO 代码示例。

5:希望它能对你有所帮助。

谢谢,

玲玲

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/Button-operation/m-p/654349

0 点赞