前几天ST发了个H735的板子给俺玩玩,折腾了几天后发一下对这个板子的感想。
本文将同步在其他平台发表
1.板子介绍
H735G-DK的主MCU是STM32H735GK6,BGA176封装,属于H725/35系列。
与H7其他的板子不同,这个板子FMC完全没有用到,至于外扩ROM及RAM使用的是Octo-Spi接口的芯片,分别为为MX25LM51245G?512Mbit Octo-Spi Flash及S70KL1281DABHI 128Mbit HyperRam
此外引出了三个CAN接口,一个以太网,一对SAI音频输出以及一个Mems麦克风,一个OTG Fs接口,一个出厂并没有连接到任何IO的BNC插座,最后是一块480*272的RGB屏。开发板还自带了ST-LINK V3,可玩性还是挺高的。
板子还没拆的样子
2.芯片介绍
STM32H735BK:ST推出的H7系列单片机,主频可达550Mhz,有了其他系列没有的Octo-Spi外设及SMPs电源管理,但内存砍到了500K,虽然与其他系列(F*)对比很多,但是很鸡肋,与H7系列其他芯片的Memory Map对比,便可以看出ST的刀法有多精准
STM32H735 RAM MAP,RM0468,Table6
H735最大连续内存大小大小为AXI-SRAM,0x50000=327k,只能驱动272*480@16b的RGB屏幕,且不带JPEG解码,极大的制约了其图像显示能力
STM32H743 RAM MAP, DS12110, Table7
实际上AXI-SRAM大小为512K,不知为什么ST写错了 H743最大连续内存大小大小为AXI-SRAM,0x80000=512k,只能驱动272*480@16b或480*800@LUT8的RGB屏幕
STM32H7A3 RAM MAP, RM0433 ,Table6
H7A3最大连续内存大小为AXI SRAM1-3,0x100000=1024k,足够驱动16位VGA或8位1024*768分辨率的屏幕。
不过ST这一系列的芯片主打的是低成本(当然到手上又是另一回事了),根据官方的指导价,除了只有128k Flash的超值型外,便是H725系列的芯片了。
售价,仅列出UFBGA176封装
而ST的宣传也是如此,其宣传中H725自带的OCTO-Spi也有利于BOM成本的降低,同时多了许多与安全相关的外设(H725也如此)。从H735DK自带的demo中也可以看出ST对这个芯片的定位是高性能计算,数据采集及工业控制,自带的DEMO除了跑分外,还有一个基于Touch-GFX的家庭控制平台,以及一个ADC-DAC的demo。
但与常用的750/743系列,少了一个HRTIM,此外,该型号最大的用户可用IO仅有128个,对比H743系列的168个,只能说刀法运用到了极致。
3.使用感受
开发平台:keil AC6+VS code,使用clang
开发类型:寄存器开发
首先,你几乎无法在简中平台上看到有关本开发板,乃至H735/725的教程等东西,且这板子许多外设与其他芯片乃至开发板是不通用的(指Octo-Spi),极大的增加了学习的成本
其次,该开发板许多外设没有引出,模拟类就最基础的ADC及DAC。SPI,DCMI,FMC一个都没有,串口也就两个,一个还是连的VCAP(虚拟串口),CAN倒是搞了两个可以玩回环,屏幕则搞了RGB888的接线,以及两个OCTO-SPI,还有一个Pmod接口,这个玩Fpga开发板的同学可能比较熟悉。
对于通用的外设,可以直接复制粘贴其他芯片的代码来使用,需要注意时钟的问题,此外ST可能是发现了ADC时钟的问题,现在H725的ADC时钟输入频率可达到160M,二分频刚好达到ADC12的最优运行速度,配合550M的主频,在数据采集这方面还是非常爽的
然而对于图形应用就有点悲催了,鉴于上文所说的内存不足,很明显ST是想让用户调用HyperRam作为LCD Buffer来显示24bit的内容,然而HyperRam也没有具体的教程,而对着参考手册折腾了几天也只能做到以Memory-Map模式读取片外RAM内容,至于写入,HardWare Fault伺候,反正16bit模式也能用,不想折腾了,Octo-Flash自然也是懒得去搞了。
板子自带的ST-LINK V3自带虚拟串口,最快可达到1.3Mbps的速度(115200*12),且SW下载时钟可达到24M,妈妈再也不用担心下载好几秒了
最后吐槽,在debug下已经发现好几个bug了,keil的debug寄存器好几个和技术手册对不上,估计是用的人少没人反馈吧(
最新动态:不知道怎么回事,原来能运行的程序多烧写几次居然运行不了了,然而debug发现单片机一直在启动汇编代码处鬼畜,活见鬼
结尾来个板子实拍图
usb口居然在下面,根本不方便使用,绝了
|