Nucelo系列开发板硬件对比
很早就想写这样一篇Nucelo系列开发板的对比,但是因为各种原因拖延下来。正好 EEWORLD 做 Nucleo-L432KC 开发板的评测活动,就借这个机会写了。外形我们先看看三种Nucleo系列开发板的对比图,从左到右依次是Nucleo-L432KC、Nucleo-F091RC、Nucleo-F746ZG,可以看到它们风格很一致,都是白底蓝字,CPU在中间,两边是扩展接口。
三种开发板的大小差异很大,尺寸上Nucleo-144是70x135mm,Nucleo-64是70x82mm,Nucleo-32是19x51mm,Nucleo-64板子的宽度和Nucleo-144相同,都是70mm。三种板子的面积的比例大约是 1 : 5.9 : 9.8。从PCB工艺看,Nucleo-64是双层板,Nucleo-32是4层板,而Nucleo-144是6层板。以太网从功能上看,Nucleo-144多出了一个以太网接口,相比Nucleo-64多出来的面积,大部分都是以太网相关的。U11是变压器,U10是ESD保护,U9是以太网控制器
为了减少板子的整体厚度,Nucleo-144采用了半沉结构的以太网插座,这样减少了约1/3的插座高度。
仿真器Nucleo系列开发板上都带有STLink/V2仿真器,它支持Mbed规定的三种主要功能:虚拟串口Mbed虚拟磁盘仿真器Nucleo-32的板载仿真器ST-Link不支持外连,而Nucleo-64和Nucleo-144都是支持的,可以仿真外部的ST单片机。甚至Nucleo-64和Nucleo-144开发板上的STLink可以掰下,作为独立的STlink使用。Nucleo-64和Nucleo-144开发板上的STLink很相似,连布局都基本一致,只有细微的差别。最大区别是USB和晶体。
时钟三种Nucleo都支持多种时钟输入,包括OSC、OSC32、外部时钟(MCO)、内部时钟等。OSC是系统外部主时钟,通常是一个4-26MHz晶体。在Nucleo-32上受体积限制,没有预留OSC位置,这也是因为某些Nucleo-32上的MCU没有OSC输入脚。Nucleo-64和Nucleo-144上虽然有OSC输入,但是都没有焊接,默认都是将STLink的MCO(8MHz)作为外部时钟输入。此外三种Nucleo上都焊接了32K晶体,可以选择OSC32作为系统时钟,这对于低功耗也有好处。从32K晶体型号上看,Nucleo-64因为出道最早,选择了普通的SMD封装,而Nucleo-32/Nucleo-144都使用了微型SMD封装。Nucleo-64上预留的主时钟也是最普通的封装。
接口Nucleo系列开发板的接口都是兼容Arduino的,这样可以充分利用Arduino的资源,使用各种Arduino的传感器、扩展板、接口板等。Nucleo-32的接口是兼容Arduino Nano的,而Nucleo-64和Nucleo-144是兼容Arduino Uno的。Nucleo-64和Nucleo-144除了Arduino接口外,还带有ST Morpho(大闪蝶)接口。Nucleo-32和ArduinoNano
Nucleo-64
Nucleo-144
电源Nucleo系列开发板都支持多种电源输入:USB、Vin、5V输入,Nucleo-32使用二极管隔离E5V和U5V电源输入,任何一路有输入都可以工作;Nucleo-64和Nucleo-144需要通过短路块选择输入的电源。通过USB接口供电时,由STLink控制MOSFET(ST890CDR)通断,将USB的U5V传递到+5V。在STlink没有被OS识别出来时,MOSFET是关断的,也就是说使用移动电源时,不能通过USB供电,只能通过E5V或者Vin供电(Nucleo-144多了U5V电源选择,但是需要自己短连SB1)。Nucleo开发板都支持电流测量功能,这个功能是通过在VCC上串联电流表实现的,就是默认通过短路块连接3.3V到VCC,取下短路块就可以串联电流表进行测量。这样好处是简单,缺点是不能实时测量功耗。MbedNucleo系列开发板都支持使用Mbed Cleaasic进行程序开发。使用Mbed,可以简化底层操作,实现程序的快速移植。不过因为Nucleo开发板更新很快,而Mbed升级较慢,经常出现一个Nucleo开发板发布很久,Mbed上还不支持这个板子。
使用Mbed的优点:使用简单,兼容性好支持Mbed磁盘,可以通过拖放bin文件方式下载程序支持Mbed中间层,利用Mbed强大而简单易用的库可以使用Mbed众多第三方元件的库支持虚拟串口支持STLink仿真和下载其他从元件上看,Nucleo-64使用了很多普通元件,比如8M晶体、32K晶体、USB等,都使用了以前常用的普通型号,体积较大,精度一般。而Nucleo-32和Nucleo-144基本将这些元件替换为更小封装的型号,STLink的USB插座也从现在较少使用的miniUSB改为主流的macroUSB,方便了用户。Nucleo-32/Nucleo-64/Nucleo-144 对比表Nucleo-32Nucleo-64Nucleo-144大小(mm)19 x 5170 x 8270 x 135PCB层数426用户USB无无有STLink USBmacoUSBminiUSBmacroUSBSTLink 可外连否是是接口Arduino NanoArduino Uno + MorphoZio (Arduino + Morpho)GPIO20/2251118用户按键无11用户LED113电流测量支持支持支持外部晶体32K32K,8M(未焊接)32K,8M(未焊接)Mbed支持支持支持电源选择无USB/E5VUSB/E5V/VIN