我玩了一个Arduino Uno,它带有面包板和组件。很快,我想做一些更永久的事情。
我宁愿选择一个比Arduino Uno更小,更便宜的单元,但是它几乎和Arduino Uno一样容易使用,并且使用起来非常相似。
下一步是Arduino Pro Mini 328-5V / 16MHz吗?尺寸仅是Arduino Uno的1/6。一块10美元的价格也不错。
我了解必须焊接才能使其正常工作。那应该不成问题。
我还需要一个USB串行板来对本机进行编程吗?
我玩了一个Arduino Uno,它带有面包板和组件。很快,我想做一些更永久的事情。
我宁愿选择一个比Arduino Uno更小,更便宜的单元,但是它几乎和Arduino Uno一样容易使用,并且使用起来非常相似。
下一步是Arduino Pro Mini 328-5V / 16MHz吗?尺寸仅是Arduino Uno的1/6。一块10美元的价格也不错。
我了解必须焊接才能使其正常工作。那应该不成问题。
我还需要一个USB串行板来对本机进行编程吗?
Answers:
我认为最好的选择是从您的Arduino UNO中移除ATMega328p-pu芯片,并将其整合到最终电路中。芯片仅约1.50美元。
这样,您可以仅将UNO用作程序员,而不必使用部署的最终设备。
我不确定为什么在完成编程后,没有更多关于如何删除ATMega328p-pu芯片并在面包板上使用的正确方法的文档。
我在我的博客上确切解释了如何执行此操作:http : //raddev.us/arduino/post/2018/07/03/arduino-uno-using-your-atmega328p-u-as-stand-alone
但是,这里是基础知识。首先,您要取出芯片。完成此操作后,将显示以下内容。(注意:我正在使用UNO的Elegoo克隆)。
接下来,为引脚7供电,并将引脚8连接到GND。
需要一个16MHz的晶体
但是,该芯片目前似乎无法运行您的草图。那是因为您实际上需要一个晶体来以16MHz运行。
UNO板已安装了该芯片,这就是它起作用的原因。你可以在这里看到它:
最后,您添加了16MHz晶体和几个22pF电容,您的芯片将独立运行(无UNO)。
您将晶体添加到引脚9和10。您可以通过阅读我的博客条目或阅读atmega328数据表来查看所有详细信息。
最后,只需连接其他所有内容
之后,只需将电路的其余部分连接到正确的引脚,即可独立运行ATMega328p-pu。
实际上,这也是一种不错的学习体验。
只需为您的UNO购买替换的atmega328p-pu芯片,即可以非常便宜的价格创建所需的所有项目。
检查STM32F103C8T6开发板,价格约为1.5美元,比Arduino Uno更快/具有更多的内存,并且更小。
它可以与Arduino IDE一起使用,但不支持所有库,因此在使用它之前先检查是否支持所用的库,或者是否可以使用其他库。
更新资料
差异:
Arduino Uno STM32F103C8T6 Mini Dev Board
MicroController Atmega328P Cortex M3
MIPS/MHz 1 1.25
Operating Voltage [V] 5 3.3, most pins 5V tolerant
Input Voltage [V] 7-12 USB only
Input Voltage (limit) [V] 6-20 (USB)
Digital I/O Pins 16 37
From them:PWM Digital I/O Pins 6 12
Analog Input Pins 6 10
DC Current per I/O Pin [mA] 20 ?
DC Current for 3.3V Pin [mA] 50 ?
Flash [KB} 32 64
SRAM [KB] 2 20
EEPROM [KB] 1 -
Clock Speed [MHz] 16 72
I2C 1 2
SPI 1 2 (18 MBit/s)
UART 1 3
CAN 0 1
USB 0 USB 2.0 FS 12 MBit
DMA 0 7 channels (ATsP, SPI, I2C, USART)
RTC 0 1
CRC 0 1
Unique ID 0 1
Programmed by USB SWD Debug (around $5)
IDE Arduino IDE Arduino IDE, CubeMX, ...
Libraries Many Limited
Dimensions [mm] 68.6 x 53.4 53 x 22
Weight [g] 25 ?
Price (cheapest) [$] 2.50 1.50
注意:如前所述,尽管规格大多更好,但并非所有库都受支持。另外,还需要购买一名程序员(仅一次,花费约5美元)。
对于我的产品,我来自Arduino Uno:
是的,您将需要一根 FTDI电缆来进行编程和到PC的串行coms,但是如果您不需要一直使用coms,则只需一根电缆即可将程序上传到每个设备。他们也可以找到很便宜。
但是我注意到Arduino Pro Mini现在已经退休了,因此可能很难采购(它仍然可以在AliExpress上使用)。因此,出于这个原因,我建议您改为尝试Arduino Nano:
这具有板载USB的附加优势,这意味着您不再需要FTDI电缆来进行编程或coms。
这3个板的处理器ATMega328P没有本地USB,这意味着该板还需要包括FTDI电缆中使用的FTDI FT232RL IC。拥有此IC可能会增加底线成本。
对于每台设备便宜几美元的价格,您可以使用具有本地USB coms的微控制器(例如ATMega32U4)(因此可以节省FTDI IC)。这样的产品之一就是Arduino Micro:
提到的所有这些开发板都是Arduino生态系统内的本机(除已淘汰的Pro Mini之外),应该可以轻松地在网上或在您当地的电子商店进行采购。您的Arduino Uno程序适用于所有这些替代方案-您只需要在Arduino IDE中更换板子即可:
我还要提到一个板-DigiSpark:
它仅适用于较小的程序,其某些功能受到限制,不是正式的Arduino开发板。话虽如此,Arduino有很多支持 -而且价格便宜!
如果您想坚持使用Arduino及其工具链,可以只订购裸露的ATmega 328p(位于Arduino Uno核心的微控制器)并单独使用!
它们的成本相当低($ 1.50- $ 3.00范围),而且适合面包板。对于更持久的解决方案,您可以将它们焊接到原型板(穿孔板)中,甚至在设计达到该水平时甚至可以焊接到定制设计的电路板上。
这是Arduino人士的绝妙指南,内容是仅使用ATmega 328p等原始组件在面包板上设置Arduino。该设计使用一个外部16MHz时钟晶体,就像Arduino Uno一样。
如果您可以在328p板上使用内部8MHz时钟,可以取消大多数额外的组件,然后像本指南中一样运行原始芯片(使用Arduino Lilypad Bootloader而不是默认的Arduino bootloader)。这将节省更多的钱!
无论哪种方式,您都需要一个AVR编程器单元,因为328p中没有内置USB端口。这将是该设置最昂贵的部分,但是好消息是您只需要一个,它就可以对您需要的任何328p进行编程。它们还可以用于对能够通过串行Tx / Rx引脚进行编程的非标准芯片进行编程,例如ESP芯片(您只需手动接线即可)。如果您认真对待这些类型的微控制器,那么拥有其中之一非常有用。
我喜欢Nano和Pro Mini。我喜欢在带有其他模块的试验板上使用它。如果涉及更多的电路,我发现它比使用Uno更为方便。有更快的处理器,但是对于许多项目而言,16Mhz 328绰绰有余。和Uno一样,这两个都是5伏供电的部件。有时,您需要连接的设备在3.3伏处理器上无法正常工作。
Pro Mini和Nano可以轻松焊接到间距为0.1英寸的“ Veroboard”(或同等产品)中如果您不介意购买克隆的零件,则Nano和Pro Mini的成本仅为数美元。从Aliexpress购买零件,甚至是Ebay,只要您耐心等待交货,就可以为您节省很多。
我现在最常使用的模块是ESP8266。这是一个功能强大的WiFi平台,仅需花费几美元,并且具有相当成熟的Arduino框架。我经常将它用作设计中的唯一处理器。我什至以它为数据记录器的基础,并完全忽略了WiFi功能。由18650锂电池供电的20x4字符LCD,电流/电压测量芯片(INA219)和SD存储卡。
有很多好的便宜的选择。