王志华904 2024-04-21 11:37 采纳率: 0%
浏览 137

proteus仿真OLED反应慢,什么问题

img

img


这是出现的警告,怎么解决啊?很离谱,但我不知道原因是什么,本人刚学刚入门,希望能帮助一下

  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-21 11:37
    关注

    引自免费微信小程序:皆我百晓生

    看起来你在使用Proteus软件进行STM32微控制器与OLED显示屏的仿真,并且遇到了逻辑冲突(logic contention)的警告信息。这通常意味着在同一个信号线上有多个驱动源,导致不确定的电压状态。要解决这个问题,你需要检查以下几个方面:

    1. 硬件连接: 确保在实际硬件设计中,没有将同一GPIO引脚连接到两个不同的输出设备上。

    2. 软件配置: 在STM32的初始化代码中,确保每个GPIO引脚被正确地配置为输入、输出或保留。特别是那些报告逻辑冲突的引脚(如#LCD1#00126, #00012, U1_U29_SPEED_CHECK, U1_GPIO_B9)。以下是配置GPIO的基本步骤,你可以根据你的具体项目进行调整:

    #include "stm32f1xx.h"
    
    void GPIO_Config(void) {
        RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE); // Enable GPIO clock for example (replace with the correct peripheral)
    
        GPIO_InitTypeDef GPIO_InitStructure;
    
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5; // Replace with the pins you need to configure
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
        GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
        GPIO_Init(GPIOA, &GPIO_InitStructure);
    
        GPIO_SetBits(GPIOA, GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5); // Set initial output state if needed (e.g., high or low)
    }
    
    1. 清除冲突: 在 Proteus 的原理图编辑器中,找到这些冲突的引脚并确认它们是否只连接到了一个驱动源。例如,如果PB3同时连接到OLED和另一个外设,你需要断开其中一个连接,确保只有一个驱动。

    2. 仿真设置: 检查仿真设置,确保没有错误地设置了相同的信号线为多路复用功能。在 Proteus 中,确保每个信号线只连接了一个驱动源。

    3. 驱动程序: 如果使用了第三方库来控制OLED,确保库函数正确初始化并管理GPIO引脚,避免产生竞争条件。

    按照上述步骤排查和修改后,重新加载HEX文件并运行仿真,应该可以消除逻辑冲突警告。如果你仍然遇到问题,可能需要提供更详细的代码片段以及OLED和STM32之间的通信协议描述,以便进一步分析和提供帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月21日

悬赏问题

  • ¥15 Opencv配置出错
  • ¥15 模电中二极管,三极管和电容的应用
  • ¥15 关于模型导入UNITY的.FBX: Check external application preferences.警告。
  • ¥15 气象网格数据与卫星轨道数据如何匹配
  • ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
  • ¥15 微软账户问题不小心注销了好像
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?