最小的ARM电路要求


13

我已经在ATMega上进行了一些开发,并且希望拓宽我的视野。我有几个Cortex M4系列芯片,想要使ARM等效于Breadboarduino

我计划蚀刻自己的电路板,或者将分线板用于ARM,其余部分用于面包板。最少组件的参考或示意图将不胜感激。

是否有足够的资源来确定运行ARM芯片所需的最少组件,最好是对它们进行编程?

更新:

我愿意接受其他硬件建议。以下是我目前正在尝试使用的芯片:


7
您能告诉我们您拥有哪些设备吗?链接到数据表会很棒。
stevenvh 2012年

我希望它不是您要蚀刻自己的PCB的WLCSP封装:0.4 mm间距的BGA!:-/
stevenvh 2012年

@stevenvh我不是那么勇敢。它是LQFP 144封装
ZnArK 2012年

1
检查NXP LPC系列,它们(全部?)具有板载串行引导加载程序。lpc21isp是一个很好的pc端工具。LPC1114甚至在DIP28中可用!lpc1343具有内置的USB(!)引导程序(听起来不错,但使用IMO有点麻烦)。
Wouter van Ooijen 2012年

1
@Wouter-是的,我也发现了DIP(请参阅答案)。LPC1114是唯一的Cortex,无论是Digikey上DIP中提供的任何制造商。
stevenvh 2012年

Answers:


9

这实际上取决于您使用的芯片-您未指定要购买的芯片。通常,您至少需要一个晶振,去耦电容和复位逻辑。编程接口可以是简单的JTAG接口。

但是所有这些都应在芯片数据表中说明。

更新(针对STM32F407):

查看数据表中的以下页面

  • 23ff。适用于所需的电压(1.8-3.6V,因此需要一个稳压器),以及如何使用内部稳压器(将PDR_ON引脚拉高)
  • 69ff。对于引脚
  • 电源方案的69 + 74(这是最有趣的页面,因为它们显示了电源连接和所需的电容器)

您将不需要复位电路(已集成-参见第23页)或振荡器(启动时已选择集成的16MHz振荡器,请参见第22页)。所以使用LQFP144接口板(就像从一个futurlec(参见下页)可能真的是不够的。

您还可以查看STM32F4DISCOVERY电路板的原理图(请参见其用户手册,第33页。所看到的是基本电路-甚至包含外部晶体。


感谢您的输入。我问这个问题是因为数据表很大,而且坦率地说我不了解其中的所有内容。我知道真正的解决方案是获得EE学位,但是我目前的职业和其他职责现在还没有实现。是否有任何开放的硬件项目,其中会有其ARM电路的示意图。我有信心可以做到这一点,并做一个有用的项目。
ZnArK 2012年

1
上面链接的STM演示板随附原理图,因此您可以从此开始。否则,Olimex会打开其原理图,例如此M4板
hli12年

我没有意识到。谢谢(你的)信息。非常有用,
ZnArK 2012年

10

您确定要对Cortex-M4这样做吗?与AVR相比,这是一个巨大的飞跃,我看不到您将如何利用其提供的所有功能。要开始使用Cortex-M4,通常要采用大包装,入门级部件通常需要80多个引脚,并且200+也不例外,请考虑使用QFP或BGA。是否要制作一个带有两排40针的面包板?

Cortex-M4还设计用于高速:通常为120 MHz至200+ MHz。好的,如果您使用片上PLL,则可能不需要为这些速度设计PCB。但是,诸如USB或以太网之类的外围设备呢?

当然,您可以以较低的速度运行它,而忽略了许多片上功能,但是我想知道开始使用Cortex-M4有什么用。我认为Cortex-M3甚至-M0更适合作为开始。我不想让你灰心,我想保持现实。

如果您确实想继续使用Cortex-M4,则可以使用最少的外部硬件。例如,NXP LPC407x具有一个内部RC振荡器,它是复位时的默认振荡器,因此您甚至不需要晶体。复位电路和正确的电源去耦将是您启动和运行它所需要的。

对于Cortex-M0,NXP LPC111x可能值得一看。当然,它没有很多内存,但是它以DIL-28软件包提供,这对于ARM来说是很少的。另外,您也可以使用LPCXpresso之类的开发板,

在此处输入图片说明

其中右半部分是应用板,可以与LPC-link分开。如您所见,应用程序几乎不需要任何外部硬件。而且,如果您在其上焊接一组接头,则可以将其插入面包板上。


很好的反馈。我对使用Cortex-M4并不感到困难。我将研究M3 / M0型号。我将检查确切的芯片和封装并更新问题。
ZnArK 2012年

1
我已经完成了从PIC18到LPC2100的飞跃(这是在2008年,现在ARM7被Cortex-M3取代了)。这是性能上的重大飞跃,但在板级上的硬件复杂性方面却不是重大飞跃。
尼克·阿列克谢耶夫

1
@Nick-我也使用了几个LPC2000零件,但是就像您说的那样,它们已被Cortex-M3取代。Cortex-M4是一个不同的联盟。
stevenvh 2012年

8

正如史蒂文(Steven)所说,从8位微控制器向ARM迈出了很大的一步,因此,期望在此过程中花费大量的学习时间。
我也不会为您的第一个ARM选择M4,只是因为它的推出时间不长,并且那里的支持/信息较少。我认为M3或M0是更好的选择,并且将继续发展下去。

您当然可以制作自己的开发板,但最好先抢购一个小型/廉价的开发板。从开发的角度来看,有很多选择,从免费的(Eclipse + GCC + OpenOCD)到昂贵的(Keil,Rowley等),我个人使用Raisonance Ride7 IDE和STM32系列ARM M3 / M4s的工具,价格便宜一些比Keil / Rowely还要好。

看一下ST,Olimex等人提供的简单开发板之一。该开发板包含了我能找到的STM32 Cortex-M3 最简单的原理图

在此处输入图片说明


很棒的建议。我有一个开发板(Stellaris Launchpad),我打算在制作自己的板之前先熟悉一下。我还用硬件信息更新了我的帖子。
ZnArK 2012年

请注意,开发板的成本大约是ST自己产品的3倍。
克里斯·斯特拉顿

@ChrisStratton TI最新的启动板售价为5美元。它可能仍然可用。艰难的价格击败。
ZnArK 2012年

@ChrisStratton-是的,我为原理图而不是价格添加了它(甚至没有检查)。我有一个发现STM32F4板,它们确实很便宜,但是我认为它可能会与那里的所有其他东西以及没有“标准” JTAG连接的板载STLink编程器相混淆。不过,不到10美元(或现在的价格),也可能值得抓住其中之一(也许M3版本如上所述更好)
Oli Glaser

对于简单的嵌入式项目,我发现4引脚SWD比jtag更方便。它可能不是原始的供应商锁定工具形式,但是现在有开放的解决方案可以与适配器进行通讯。
克里斯·斯特拉顿

5

阿尔杜伊诺由于应该很快就会出来:

adruino到期

芯片是Atmel 的SAM3X8 Cortex-M3。如果您已经熟悉Arduino样式板和Atmel样式文档,则可能值得等待。而且由于它将是满足Arduino要求的开放源代码,因此您当然可以在面包板上双重使用它。


很棒的建议。我知道这已经出来了,但是没有想到要使用这种aa模型。很棒的建议。
ZnArK 2012年

4

我建议您检查一下Mbed的cortex-m3设备,其中有一些不错的外围设备,nxp提供了编译器以及许多库和社区库,这是一种非常容易编程的方法,并且已经在用于面包板上的软件包中进行了编程。我认为这是从AVR过渡到ARM的最简单方法。


2

许多ST部件至少在不使用USB收发器的情况下也可以利用其内部高速振荡器运行。

基本上,这意味着您的“电路”由旁路帽和一些电阻组成,如复位和SWD接口上的终端。

ST的$ 8-10评估板将对您通过SWD总线放置在自己板上的零件进行编程;也有针对它们的开源工具,因此您可以将编程操作直接放在Makefile中。

在48 PQFP中使用某些东西可能会使您第一次尝试董事会生活变得更轻松。您可以在不放大的情况下组装它们(只需用细编织物固定桥,您可能会在每侧创建一个或两个),但是要用放大镜检查您的工作会有所帮助。


1
我想,8-10美元不是Cortex-M4。您可以指定要考虑的部分吗?还用于QFP-48封装吗?TIA
stevenvh 2012年

1
Cortex M3 ...他们倾向于将每个版本打包成多个软件包,其中QFP-48将是最容易手动处理的版本。
克里斯·斯特拉顿
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.