• 正文
  • 相关推荐
申请入驻 产业图谱

从硬件电路到神经网络的STM32N6开发:硬件电路设计

10小时前
142
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

自从2024年底意法半导体正式发布STM32N6以来已经过去了一年多的时间,但是STM32N6始终蒙着一层厚厚的面纱,极强的性能下伴随而来的是极高的开发难度。

最近有一个项目准备使用STM32N6作为主控制器,这代表着不仅仅需要从原理图开始绘制STM32N6电路板,还需要克服其中遇到的一系列问题,包括软件硬件以及代码编译烧录等等。

这是一个面向科研的项目,主要目的是使用STM32N6实现摄像头读取、屏幕显示以及卷积神经网络推理工作。

本期作为硬件篇介绍这个项目的硬件电路。

1、主控选择

主控选择上面并没有采用官方DK板子上使用的STM32N657X0H3而是选择了STM32N55X0H3,也算是为了增加一点开发难度(并非省钱)

2、外部存储器选择

官方STM32N657-DK开发板中所使用的PSRAM芯片为APS256XXN,是一个16线的BGA封装的芯片。但是嘉立创画图的时候发现这颗芯片不仅仅没有对应的封装,也没有对应的器件。

因此这块板子将其降级为APS6404L,QPI通讯四线SPI,大小为8MB,勉强够用而且价格便宜,封装简单。

STM32N657-DK开发板中的Flash芯片选择的是MX66UW1G45GXD100,这一颗芯片也是一整个雷霆大缺货,权衡考虑降级为W25Q256JVFIQ用以替代。

从八线SPI降为四线SPI,同时需要注意的是,先前的MX66UW是1.8V电平而W25Q256是3.3V电平,这个地方格外注意,如果依旧是照抄STM32N657-DK板子的电源布局的话会让设备有烧坏的风险。稍后我们在电源处理上会讲。

3、电源

N6的电源相当的复杂,这里我们分开来讲,首先来看看STM32N6的主控需要哪些电源。

STM32N6需要VDDIO到3.3V,VDDUSB为3.3V,VDD1.8V的电压域为1.8V,VDDCORE为0.81V(超频0.89V),VDDCSI为1.8V,VDDIO2到VDDIO5这四个电压域需要按需选择。

VDDIO2对应XSPI1电压域,VDDIO3对应XSPI2电压域,在外面这个项目中,XSPI1为1.8V,XSPI2为3.3V。因此对应的VDDIO2和VDDIO3的电压也不一样。这个地方设置不好的话可能使用BESC会导致芯片烧毁。

因此我们总结一下就是除了3V3之外还需要1V8和0.81V这两个电压。

0.81V电压参考STM32N657-DK板子使用TPS62088YFPR芯片。该芯片计算公式为(R1/R2 + 1)*0.6,因此设置R1 = 56K,R2  = 160K,正好计算出来是0.81V。通过PG7设置MOS管状态可以接入R47电阻,将输出电压变为0.89V进入超频状态。

顺带一提,早知道这里不适用这颗TPS62088了,这颗DCDC降压芯片实在是太小太小了,导致我觉得制作这块板子的时候这里出现了问题。

它的大小仅为1.2mm*0.8mm,大小连1mm²都不到,测试板子的时候发现这个地方除了问题。VDDCORE的输出电压为0。但是电路图肯定是正确的。后来自己飞线接了一颗DCDC电压后一切正常。

1.8V和3.3V均使用不同型号的LP5907来产生,这颗LDO芯片也是我比较喜欢的低功耗,大电流,小封装的LDO。

电源使用USB输入,一颗CH340N作为串口。

经过开关后进入IP5306这颗锂电池放电管理芯片,之后输出5V电压。

关于IP5306的选型,他是一颗经典的充电宝的充放电和升压芯片,并不太适合用在低功耗场景....后续考虑更改。

4、外设配置

整个系统除了几组FPC排线之外主要有三个基本外设分别是LTDC显示屏,IMX224摄像头还有一个SD卡。

LTDC使用40Pin的RGB565屏幕,但是有一个地方设计有问题,忘记修改。

40pin的LCD显示屏的LEDA和LEDK之间是6颗LED串联,导通需要19.7V电压,横流20mA,第一次画这种屏幕的驱动没什么经验,还是太粗心。导致屏幕之后要通过一块转接板(内含背光驱动)。

CSI摄像头倒是没啥,只要根据自己买的CSI摄像头型号画对应的电路即可。

SD卡使用一个单刀双掷开关来切换SD卡电压,其他的也没有太多需要注意的东西,主要还是参考了官方的STM32N657-DK原理图来实现。

5、315 消费者权益日

整体板子采用4层板布局,但是打板的时候由于BGA封装和3mm钻孔,实际的价格和六层板差不多。

相关推荐