自从上次写了一篇关于盗版STM32芯片的问题文章,ST的官方也对我表示支持给我提供了一批样片,其中包含了STM32G473,这里对ST官方表示感谢。
本期我们用该芯片设计一款开发板。 STM32G4系列 针对高性能、低功耗、实时控制和数字信号处理等应用而设计。 频率可高达170
MHz,同时具有DSP和FPU指令集,可实现高效的数字信号处理和数学运算。
其在模拟外设上面远超于其他的芯片。
从CubeMX中可以看到其有丰富的ADC和DAC,以及多路比较器和运算放大器等,因此该芯片在模拟外设的资源上非常的丰富。
我们使用立创EDA绘制原理图和PCB,这里我们将分步介绍一下各部分的作用与设计目的。
- 烧录部分
首先是下载方式,下载方式通常使用的是两线制,结合VCC和GND,总共是四线制。不过我还是想用20Pin-Pin排线来连接,而不是使用杜邦线的连接方式
因此选择了20Pin的JTAG接口来连接,这里下载的方式也是选择了五线制,因为仔细的查看了一下,相较于两线下载,五线下载所多出来的IO并没有很特殊的功能,因为我主要使用的其模拟功能,而多出来的三个IO并没有模拟的功能,因此就干脆选择了五线下载。
- 供电及通讯
电源的部分选择16Pin的TypeC供电,加装1A跳闸自恢复保险丝防止异常的过大电流,自锁开关作为主要开关。
通过CH340芯片与单片机通讯,通过排针可选连接到串口一。
同样的还有一个USB设备同样通过CH340连接至STM32的串口二,但是这个是USB-A口的,方便与其他的开发板进行通讯。
最后利用AMS1117-3.3LDO芯片将5V电压转换为3.3V,前后加上滤波电容以及肖特基二极管进行抑制高频信号。
- ** 高速时钟源 **
高速时钟选择24MHZ贴片高速时钟,接入PF0/PF1并且使用两个小电容进行滤波。
这里就不加额外的低速时钟源了,因为低速时钟源又要占用两个IO,然后这块板子的IO资源还是比较缺乏的。
- ** 复位及按键 **
复位IO通过上拉电阻上拉,这里本来三个按键IO可以不用上拉的可以通过内部上拉或者下拉,这样子我们可以将这三个IO复用成普通IO。
至于按键的滤波电容,这里选择了不加,我们可以在软件上选择消抖,这里加上去的画就显得很冗余了。
屏幕部分我们选择TFTLCD,但是我们不使用并口LCD,实在是太占用板载IO了,因为一用的话就是十几个IO,这里我们使用SPI通讯,结合其控制IO最多使用5个IO,利用排母方便我们插接(排针也可以)同样的这里引出一组排针。
- 对外供电及OPA
这边我们设计两组5V和3.3V的对外供电,方便我们的板子给模块供电,这里还有两组接口,原因是我特意启用的一路板载OPAMP,即板载运算放大器,这里设计一组接口可以方便我们设计放大电路或者其他电路。
这里的PA8同样的也可以直接复用到ADC5中,方便我们直接进行ADC采样,同样的,这里的运放也可以直接当作可控增益放大器或者跟随器使用。
- ** 主控 **
最后是我们的主控方面,这里注意的是需要调节好各个IO的资源,将空余的IO引出(一些已经被占用的也可以引出)防止芯片的去耦电容,设置两个板载LED方便我们进行调试。
简单的画一下我们的PCB
这里画板功底并不是很深厚,见笑见笑