嵌入式Linux | 核心板 自制底版不启动问题排查及解决(飞凌iMX6q为例)

Posted “逛丢一只鞋”

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式Linux | 核心板 自制底版不启动问题排查及解决(飞凌iMX6q为例)相关的知识,希望对你有一定的参考价值。

前言

项目中需要对底版进行裁剪重新绘制

采用了飞凌的嵌入式核心板iMX6q型号

底版经过重新设计之后,插上核心板,发现底版没有任何反应

Debug调试接口没有任何的打印信息

U-Boot都没有正常启动,现在开始排查

USB转网口供电模块电容极性反接

板子不能正常启动,首先就是要排查电压的问题

电容或者有极性器件有没有接反

果然,usb转网口的供电 出现了问题,电容因为SMT下单过程中排查疏忽,接反了

重新焊接之后供电异常解决

Boot Mode拨码

核心板要想正常启动Boot Mode要正确的配置,所以要检查是不是正确的启动模式

以及检查电压是不是正确

Debug串口检查

接下来发现板子还是没有办法正常启动,考虑到U-Boot信息都没有正常打印,所以要么是Debug串口有问题,要么就是核心板有问题

通过万用表检查通路,没有发现有异常

错误排除

核心板工作条件

查看飞凌官方提供的硬件参考手册


考虑到有可能是因为上电顺序的原因导致

因为核心板要想正常启动,有一些IO口的电压要符合默认设置,所以要在核心板完成启动之后,底版器件再上电运行,保证底版的电压信号不会影响到核心板的启动

自己的底版经过大幅度的改动,所以对于之前开发板底版中的上电顺序不能保证

经过与飞凌工程师的沟通,主要检查EIM_DA0--DA15EIM_A16--A24EIM_WAITEIM_RWEIM_LBAEIM_EB这些引脚有没有被底版的一些电路使用

在我的底版设计中,检查后发现有四五个引脚被拉高使用,刚好都在上述的雷区GPIO

通过简单粗暴的将这些拉高的引脚断开

结果还是不能正常启动

核心板低压区

这时候顺着刚才的思路继续检查原理图,发现了一些端倪
核心板中有一个座子区域是特殊标记了 1.8V

发现其中的CSI0_DAT11CSI0_DAT10引脚被我用来拉高给旋转编码器用了

剔除掉上拉的电压之后

再次给板子上电

成功启动!

以上是关于嵌入式Linux | 核心板 自制底版不启动问题排查及解决(飞凌iMX6q为例)的主要内容,如果未能解决你的问题,请参考以下文章

飞凌嵌入式 S5P4418 核心板为自助加油系统“加油”

ARM开发板 嵌入式Linux 修改开机启动LOGO

嵌入式Linux驱动开发 01:基础开发与使用

控制 Linux 嵌入式应用程序的启动屏幕

rtlinux尺寸

如何在linux嵌入式开发板上开机自动运行用户应用程序