AI辅助Stm32l031项目开发调试完成与总结

AI辅助Stm32l031项目开发调试完成与总结

一、低功耗调试

在本次案例中,选用的是低功耗芯片,能干到ua级别,功能不是特复杂时级别都能达到需求。关闭基本耗电的外设,关闭必要的时钟,低功耗代码片段如下:

复制代码
/**
 * @brief 进入低功耗模式
 */
void LowPower_Enter(void)
{
    // 关闭LED
    LED_Off();
    
    // 关闭传感器
    Disable_Sensor();
    
    // 关闭ADC
    HAL_ADC_Stop_DMA(&hadc);
    
	HAL_GPIO_WritePin(POEWR_CONTROL_GPIO_Port,POEWR_CONTROL_Pin,GPIO_PIN_RESET);
	
    // 进入待机模式
    g_system_status = SYSTEM_SLEEP;
    
    // 配置按键为唤醒源
    GPIO_InitTypeDef GPIO_InitStruct = {
        .Pin = KEY_Pin,
        .Mode = GPIO_MODE_IT_FALLING,
        .Pull = GPIO_PULLUP,
    };
    HAL_GPIO_Init(KEY_GPIO_Port, &GPIO_InitStruct);
    
    // 进入STOP模式
    HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
}

/**
 * @brief 退出低功耗模式
 */
void LowPower_Exit(void)
{
    __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);

    // 恢复系统时钟
    SystemClock_Config();
    
    // 重新初始化外设
    MX_GPIO_Init();
    MX_DMA_Init();
    MX_ADC_Init();
    MX_USART2_UART_Init();
    
    // 重新初始化传感器
    Initialize_VEML7700();
    
    // 启动ADC
    HAL_ADC_Start_DMA(&hadc, (uint32_t *)g_adc_buff, 2);
    
    // 恢复系统状态
    g_system_status = SYSTEM_WORK;
    uint32_t current_time = HAL_GetTick();
    g_work_mode_start_time = current_time;      // 重置工作模式开始时间
    g_last_operation_time = current_time;      // 重置最后操作时间
    g_meter_flag = 1;
}

设计低功耗主要从以下几方面着手:

​ 1.用户需要根据最低电源消耗、最快速启动时间和可用的唤醒源等条件,选定一个最佳的低功耗模式。

可以使用的低功耗方式有休眠模式,待机模式,停机模式。

  1. 选择了低功耗方式后就是关闭可以关闭的外设时钟。
  2. 降低系统主频。
  3. 注意I/O的状态。
    如果此IO口带上拉,请设置为高电平输出或者高阻态输入;
    如果此IO口带下拉,请设置为低电平输出或者高阻态输入;
    a. 在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态。
    b. 在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态。
    c. 在待机模式下,所有的I/O引脚处于高阻态,除了以下的引脚:
    ● 复位引脚(仍可用)。
    ● RTC_AF1 引脚 (PC13)(如果针对入侵、时间戳、 RTC 闹钟输出或 RTC 时钟校准输出进行了配置)。
    ● WKUP 引脚 (PA0)(如果使能)。
  4. 注意IO和外设IC的连接。
  5. 测低功耗的时候,一定不要连接调试器,更不能边调试边测电流。

二、功耗结果

本次案例中,功耗结果是5ua左右,可以接受。

三、项目总结

因为我调过这个项目,所以在和AI的沟通互动中有明确需求,AI能根据你明确需求进行生成代码,一点点的问AI具体问题,AI一次解决一小部分问题,然后综合解决,是一个不错的不工具。AI时代,一个是一个公司也是有可能。拿来辅助编程吧,学无止境。

四、项目源码

本次开发中使用的源码,本案完!

【免费】meter-led-004-2026-01-12-整体功能ok-低功耗ok.zip资源-CSDN下载

相关推荐
Lee川34 分钟前
mini-cursor 揭秘:从 Tool 定义到 Agent 循环的完整实现
前端·人工智能·后端
weelinking1 小时前
【产品】00_产品经理用Claude实现产品系列介绍
数据库·人工智能·sql·数据挖掘·github·产品经理
Agent产品评测局1 小时前
制造业模具管理AI系统,主流产品能力对比详解:2026年智能制造选型深度洞察
人工智能·ai·chatgpt·制造
研华科技Advantech2 小时前
如何用一套实训设备,打通工业AI预测性维护技术全流程?
人工智能
Lab_AI2 小时前
AI for Science: MaXFlow AI Agent+ 报告体验双升级,让AI智能体更高效易用!
人工智能·ai for science·ai agent·ai智能体
李坤2 小时前
让 Codex 和 Claude 互相 Review:告别手动复制
人工智能·openai·claude
南屹川2 小时前
【API设计】GraphQL实战:从REST到GraphQL的演进
人工智能
KJ_BioMed2 小时前
当计算生物学遇上生成式AI:从头设计生物分子的“新范式”初探
人工智能·从头设计·生命科学·生物医药·科研干货·科晶生物
明月醉窗台2 小时前
深度学习(17)YOLO训练中的超参数详解
人工智能·深度学习·yolo
淘矿人2 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops