淘汰了不断增长的8位AVR,不确定要转移到哪里


8

几年来我一直在使用8位AVRS。最近,我一直受到外围数据传输速度和高级库的限制。

我在寻找/选择新的微控制器产品线时遇到了麻烦。我看过

  • 恩智浦-找不到程序员
  • 飞思卡尔-必须注册IDE
  • AVR32-Digikey上的芯片选择受限

恩智浦芯片看起来非常不错,但是与其他非PIC / AVR / Ardiuno芯片一样,学习曲线也非常陡峭。

我想知道是否有人可以建议满足(按重要性顺序)以下要求的微控制器系列

  1. 手工可焊芯片。(我可以做LQFP 100)
  2. 32位
  3. Linux主机
  4. 免费工具链
  5. 良好/免费的IDE
  6. 无限的编程/调试/编译,启动成本<500美元
  7. CAN支持
  8. 以太网/ USB支持

如果有人可以告诉我,我错过了有关其工具链和程序员的一些信息,我愿意再次看一下Freescale和NXP。我想您可能会说AVR32正是我想要的,但是我对他们的芯片选择不满意。它们的引脚数都较高,digikey的库存较低。

谢谢。


2
注册飞思卡尔的IDE有什么问题?
stevenvh 2010年

5
跳铁圈有特权使用您购买的筹码吗?
XTL

是的,他们会说,他们需要知道您要为谁提供更好的服务,阅读以出售他们的东西。如果您只需要注册就可以下载数据表,这会变得更糟(发生几次)。生活艰难:-)
stevenvh 2010年

必须在线注册事物,这无疑是前所未有的举动。FWIW,他们的论坛也需要注册,因此也可以为此进行设置。
尼克T

1
@stevenvh,在Wavecom的情况下,由于一切都需要注册,因此无法使用搜索引擎找到任何内容(数据表,论坛帖子,文档等)。现在,下载旧版本的IDE也很麻烦。
彼得·吉布森

Answers:


4

我肯定会推荐NXP-不错的芯片,良好的外设(具有灵活的预混和FIFO的UART,具有FIFO的SPI等),出色的文档*和灵活的编程选项。获得一个JTAG / SWD调试器(Cortex部件使用SWD-引脚数少于JTAG,并且可以在运行时执行诸如设置断点的操作)。我使用IAR嵌入式工作台的免费kickstart版本-此代码上限为32K,对我来说很好,但请注意,代码大小升级非常昂贵。很多人似乎对GCC / winarm表示满意。某些Cortex部件(例如LPC1343)可以使用板载引导程序从USB记忆棒加载固件。零件的供货情况通常很好-我从不曾努力寻找库存。恩智浦零件也有很多开发板/突破口。

  • 用户手册中的文档很好,但是大多数事情只被提到一次,因此值得花时间阅读与您将要使用的每个外围设备有关的每个部分的全部内容。后续部分的手册有所改进,因为在每个部分的开头,它们都指出了一些关键的非显而易见的内容,例如时钟/引脚使能其他地方记录的文档,以便使该外围设备正常运行。

12

ARM,ARM,ARM。

ARM将其处理器内核许可给许多公司。这意味着您可以从多个来源中找到良好的工具,支持和文档。

PIC,AVR和MSP430都存在由一家公司全资拥有的问题。

牢记ARM微控制器,与NXP的ARM9或ARM7TDMI相比,NXP的Cortex-M3与ST或Luminary的Cortex-M3更加接近。通常,编译器,调试器和编程器跨内核而不是制造商通用。

获得Codesourcery GCC ARM工具链和廉价的ARM JTAG软件狗将使您走得很长。


1
便宜的ARM JTAG软件狗== OpenOCD
约翰

@Johan或者您也可以将现有的ATmega哄骗在一起。
Maxthon Chan

5

我会去恩智浦。在很短的时间内,Cortex-M3已经成为ARM控制器的标准(我假设Freescale是指Coldfire)。自从ARM7TDMI以来,恩智浦还具有众多设备可供选择的传统。
对于NXP的程序员,IMO的任何JTAG程序员都应完成这项工作(CMIIW)。

编辑
我目前正在阅读mbed,这似乎是NXP Cortex M3(使用的控制器为LPC1768)入门的最简单方法。您可以在线编程/编译(因此Linux没问题),并且可以通过USB编程(该设备显示为大容量存储设备,可以将编译后的程序复制到该设备)。无需程序员。为mbed编写的程序应直接移植到其他板上的LPC1768。


2

尝试使用16位PIC24和dsPIC。它们中的许多都可以在DIL中获得,它们可以提供高达40 MIPS的性能。提供免费开发软件,PICkit 3调试器/编程器的价格相当便宜,仅为50美元。下一版本的MPLAB将支持Linux,并提供beta版。


1

我认为您将能够获得针对ARM的“自由发展”工具。可以从串行引导程序或(开放的)JTAG进行编程。我看过的一些STM32和NXP芯片和模块给我留下了这种印象。

我也想起了这个问题


1

如果您真的想使用32位,请尝试使用PIC32。Microchip的高可用性。对于Linux调试,MPLAB X在beta 4中,并支持Linux,Windows和Mac OSX。我认为您还需要PICkit 3或类似的编程器,价格为50-60美元。

但是,我会更倾向于16位dsPIC和PIC24,因为它们便宜得多,可以使用PICkit 2进行调试并且易于编程。它们也可以在DIP包中使用,尽管这对您而言并不重要(?)考虑到我在项目中使用它们,我对此略有偏见。


现在,以28引脚DIP封装提供了十几种PIC32,这使其非常适合原型设计。另外,新的PIC32MZ系列(仅在SMD中可用)具有高达2 MB的闪存,512K的RAM,并支持CAN /以太网/ USB 2.0主机。
tcrosley 2014年

1

当前以DIP封装制造的唯一 32位处理器是Parallax Propeller。(同一芯片还提供更小的44引脚QFP和44引脚QFN封装,全部具有32个通用I / O引脚)。也有一些在Linux下运行的开发工具

因此,它很容易满足您的前2个条件以及其余(而不是全部)大多数条件。


0

看看FEZ Domino。它不能满足您的所有要求,但是如果您不需要最低的电平控制,则可以提供很多功能。


0

赛普拉斯PSoC系列芯片具有我在任何其他IC中都没有的功能组合。

PSoC5芯片包含一个32位ARM Cortex M3,但据我所知,它们都封装在TQFP100之类的东西中。PSoC1和PSoC3系列芯片包括许多DIP封装的芯片,但是它们都具有一个8位内核或另一个。

除了CPU外,该芯片还具有可编程互连,例如小型FPGA和一些片上模拟运算放大器。

http://www.psocdeveloper.com/


0

Atmel ARM可以满足要求,主要是

手工可焊芯片。(我可以做LQFP 100)

它们包含在TQFP中,您可以在64引脚使用较小的之一。

32位

校验

Linux主机

我专门用Linux开发

免费工具链

GCC ARM工具链,现在可以通过诸如summon arm工具链之类的构建脚本进行设置。

良好/免费的IDE

你有我在那里。大概可以设置eclipse或kdevelop来完成这项工作,但是我没有尝试过。我用vim和kate。

无限的编程/调试/编译,启动成本<500美元

编程和编译将花费您大约100美元,以制作最小的电路板原型。芯片带有ROM中的内置引导程序,可让您对芯片进行编程。您不需要调试器对其进行编程。您可以以约100美元的价格获得Atmel品牌(锁定)的Segger。如果您负担得起的话,我建议您不要购买锁定的,而要为解锁的支付200或300。还有其他更便宜的选择,我还没有尝试过。usbprog看起来非常有前途。

CAN支持

可以肯定地确定其存在,尽管您应该检查确定。我不使用它,所以我不确定他们是否都拥有它。

以太网/ USB支持

有USB支持。以太网支持需要在外部添加。不过,有很多示例可供选择。


我们在ATSAM上有CAN。至少ATSAM3X8E具有一个作为Arduino Duo的芯片,使用该芯片,已经暴露了一个。
Maxthon Chan

0

我将LPC4330-xplorer演示板用于NXP的LPC4330。我使用的是手工构建的工具链,但如果可以深入研究链接程序脚本,则可以使用Yagarto(如果您不关心硬FP),也可以使用任何ARM编译器。恩智浦有一些非常漂亮的外设,例如状态可配置计时器(您可以阅读:函数发生器),它能够执行很多操作。他们也有一些不错的SGPIO。此外,他们还有很多计时器。它也是双处理器(基于M4-M0的芯片)。当然,他们的整个LPC生产线都很不错。

公平地说,赛普拉斯的pSOC系列产品也很不错,但是我没有机会使用它。其他人肯定都有他们的用途和受众,但我使用Linux开发环境,没有IDE和少数命令行工具。我之所以选择这条路径,是因为当出现问题时,并且总是会发生问题,如果我不必剥离工具层,我会更容易发现问题。另外,没有代码限制。而且,虽然从互联网搜索中还不能很清楚地了解到,但LPC产品线得到了开源的很好支持。

最后,LPC确实在LPCOpen中提供了大量示例代码。再次,公平地说,如果您希望它使用开源工具进行编译,则需要花费一些工作,但这并不困难。他们甚至在他们的Web服务器示例。他们也确实有一个SCT食谱(SCT需要一点点理解,但是一旦您做起来,它确实很棒),但是遍历示例可能会花费一些时间,并且LPCOpen中的SCT示例是可怜的。但是,非常值得安装和运行NXP芯片。我什至花了一些时间在NuttX(我一直都对裸机代码感到厌倦)和lpc4330-xplorer上。

无论如何,祝您一切顺利。


0

这是我的选择:

  • 大量的IO,但是速度可以接受吗?组合AVR。我已经尝试过通过I2C线路谈论SMBus,至少可以接受。
  • 需要速度吗?使用TQFP100和TQFP144封装的ATSAM系列看起来不错。我们在Arduino Duo中有Arduino SAM3X8E。ATSAM还具有MII / RMII,但是接口芯片可能具有挑战性。如果您想继续阅读ATSAMA5系列并再考虑一下,Allwinner A20可能会击败它。
  • 更快的速度,多媒体,可能是Linux支持?因为我来自中国,所以一个特别的本地制造商真的很有趣:Allwinner。他们的Cortex-A7 SoC,5美元的双核A20和10美元的四核A31以及八核的big.LITTLE Cortex-A15 / 7 SoC A80的价格为20美元,全部内置了可观的OpenGL和OpenCL功能,尽管采用了BGA软件包,但对于中高阶Android平板电脑而言已经足够了,对于成熟的Ubuntu Server而言还绰绰有余,一些守护进程正在燃烧GPU处理数字,以1Gbps的线速路由数据包或驱动两个1080P或一个4K显示。
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.