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

相关推荐
User_芊芊君子几秒前
CANN_MetaDef图定义框架全解析为AI模型构建灵活高效的计算图表示
人工智能·深度学习·神经网络
I'mChloe1 分钟前
CANN GE 深度技术剖析:图优化管线、Stream 调度与离线模型生成机制
人工智能
凯子坚持 c2 分钟前
CANN 生态全景:`cann-toolkit` —— 一站式开发套件如何提升 AI 工程效率
人工智能
lili-felicity4 分钟前
CANN流水线并行推理与资源调度优化
开发语言·人工智能
皮卡丘不断更5 分钟前
告别“金鱼记忆”:SwiftBoot v0.1.5 如何给 AI 装上“永久项目大脑”?
人工智能·系统架构·ai编程
lili-felicity7 分钟前
CANN模型量化详解:从FP32到INT8的精度与性能平衡
人工智能·python
北京耐用通信8 分钟前
破解AGV多协议互联难题:耐达讯自动化Profinet转Devicenet网关如何实现高效协同
人工智能·科技·物联网·网络协议·自动化·信息与通信
平安的平安9 分钟前
空间智能AI模型的推理加速优化实践
人工智能
baby_hua9 分钟前
20251217_大模型的分布式训练
人工智能
哈哈你是真的厉害13 分钟前
CANN生态核心算子库合集:赋能AIGC多模态落地的全链路算力支撑
人工智能·aigc·cann