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下载

相关推荐
IT_陈寒5 小时前
Redis的持久化配置把我坑惨了:你以为数据安全了?
前端·人工智能·后端
miaowu3575 小时前
AI智能体推动数字化转型:从流程自动化到决策辅助的完整路线图
大数据·人工智能·自动化
阿里云大数据AI技术5 小时前
阿里云 Elasticsearch 日志采集与加工服务:让日志链路少一串组件,多一份稳定
人工智能·elasticsearch
ksueh5 小时前
AI写小说长篇创作中的上下文局限与外部记忆系统实践
人工智能
互联网江湖5 小时前
珞石机器人:向左科技股,向右零部件制造商?
大数据·人工智能
阿里云大数据AI技术6 小时前
从数据湖到多模态湖仓-基于阿里云EMR Serverless StarRocks与DLF Paimon构建AI时代的统一分析检索架构
人工智能
前端的阶梯6 小时前
浅谈Workflow和Agent的区别
人工智能
正在走向自律6 小时前
Deepseek V4 Flash 高效应用实战指南
人工智能·deepseek·deepseek v4·ai赋能中心
Xzaveir7 小时前
别把所有“认证”都塞进 AuthService:实名、一键登录与号码身份的领域拆分
android·人工智能
BerrySen1787 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践
android·人工智能