STM32外接正点原子显示屏开机屏幕闪一下就灭的解决方案

任务场景:

使用一块(非正点原子的)STM32F407核心板,外接正点原子4.3寸电容屏时遇到的问题



问题描述:

反复检查硬件接口对上之后,还是会出现开机屏幕闪一下,然后全黑的问题

并且,同一份代码,接在正点原子开发板上可以正常使用,接在另一块不是正点原子的核心板上就不能使用。



调试找问题:

逐行运行调试代码,进入 LCD_Init() 函数

在GPIO配置完之后屏幕会正常亮白色,但是跳出 LCD_Init() 之后就变黑,说明初始化配置下面的代码中有不兼容的地方。

逐行调试到 LCD_Init() 最下面三行函数的时候找到了问题——执行完 LCD_LED=0 之后屏幕灭了。

void LCD_Init(void)
{ 
	......
	// 最下面三行
	LCD_Display_Dir(0);		//横屏(1)还是竖屏(0)
	LCD_LED=0;				//点亮背光
	LCD_Clear(WHITE);
}  

在头文件 lcd.h 中可以找到 LCD_LED 的宏定义:

///	 
//-----------------LCD端口定义---------------- 
#define	LCD_LED PBout(15)  		//LCD背光    		 PB15 

对应的原理图引脚是:

在这里插入图片描述

而查了一下我那块不是正点原子的核心板的LCD接口原理图之后:

在这里插入图片描述
发现这块核心板的 LCD_BL 上接了一个三极管的反相电路!!!


解决方案:

于是,把 LCD_LED=0 改为 LCD_LED=1 即可解决问题。

void LCD_Init(void)
{ 
	......
	// 最下面三行
	LCD_Display_Dir(0);		//横屏(1)还是竖屏(0)
	LCD_LED=1;				//点亮背光
	LCD_Clear(WHITE);
}  
  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chorgy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值