LingY_JJ 2025-10-09 16:01 采纳率: 0%
浏览 10

基于正点原子的小智ai LCD驱动移植 问题

使用正点原子的ESP32-S3开发板的小智ai,将原本的st7789驱动的lcd修改为st7735驱动的lcd,出现初始化界面以及固件升级界面可以正常显示,但是去到ui的交互也就是表情显示待命,说话中的交互界面之后,就开始花屏,无法正常显示,使用ESP-IDF进行的移植

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-10-09 16:01
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题分析

    您正在使用正点原子的ESP32-S3开发板,小智AI LCD驱动移植,原来的ST7789驱动被修改为ST7735驱动。您已经成功显示初始化界面和固件升级界面,但是在UI交互中,表情显示和说话中间出现问题。

    解决方案

    1. 检查ST7735驱动: 确保ST7735驱动正确安装并配置。您可以尝试使用ST7735的官方驱动或第三方驱动。
    2. LCD刷新率: 检查LCD的刷新率是否正确设置。ST7735驱动可能需要设置刷新率来解决UI交互问题。
    3. UI框架: 检查UI框架是否正确配置。您可以尝试使用不同的UI框架或调整现有的UI框架来解决问题。
    4. 表情显示: 检查表情显示的代码是否正确。您可以尝试使用不同的表情显示方式或调整现有的代码来解决问题。
    5. 说话中间: 检查说话中间的代码是否正确。您可以尝试使用不同的说话中间方式或调整现有的代码来解决问题。

    核心代码

    // ST7735驱动初始化
    void st7735_init() {
      // 设置LCD刷新率
      st7735_set_refresh_rate(60);
      // 初始化LCD
      st7735_init_lcd();
    }
    
    // UI框架初始化
    void ui_init() {
      // 初始化UI框架
      ui_framework_init();
      // 设置UI框架刷新率
      ui_framework_set_refresh_rate(60);
    }
    
    // 表情显示
    void show_expression() {
      // 获取表情数据
      uint8_t expression_data[32];
      // 显示表情
      st7735_draw_image(expression_data, 0, 0);
    }
    
    // 说的话中间
    void speak_middle() {
      // 获取说话数据
      uint8_t speak_data[32];
      // 显示说话数据
      st7735_draw_text(speak_data, 0, 0);
    }
    

    注意: 上述代码仅为示例,具体实现可能需要根据您的项目需求进行调整。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月9日