我们的经验在这样做的桌面和网络编程了几年。我想到做一些嵌入系统编程。经询问 最初的问题, 我不知道这硬件/软件IDE我应该开始...

或者...不要紧?

其发展的平台是最简单的学习和程序在(考虑的IDE可用性)?

哪一个是最简单的"调试"如果出了什么事?

我的目标是要了解 "如何IO口的工作、存储器局限/要求包括.可能是寻呼、中断服务的程序。" 它是更好地了解一个,我会在以后使用,或高水平的概念应该带来最微控制器吗?

谢谢!

更新: 如何 这一开发工具包 一开始?评论?建议?

有帮助吗?

解决方案

就个人而言,我建议一个 手臂的皮层-M3 基于微控制器。更高的功率 手臂 内核是非常受欢迎的,并且这些低能耗的版本可以很好地采取关闭在一个空间,仍然充斥着专有8/16位的核心。这里是最近的一篇文章的主题: 手臂cm3和融合的微控制器市场.

Arduino 是非常受欢迎业余爱好者. 爱特梅尔's周的图书馆是相当常见的跨处理器类型。因此,它会顺利的一个后过渡的一个 AVR 来一个 手臂.

我不是故意要求一只手臂会是更好的比AVR或任何其他的核心。选择一个单片机对商用产品通常涉及到外围设备和价,随后通过现有的码基地和开发的工具。此外,微控制器是大多简单得多于一台桌面电脑。因此,这真的不难以移动形成一个到另一个之后你会得到它的窍门。

此外,看到 FreeRTOS 如果你有兴趣在实时操作系统(实时操作系统)的发展。它是开放源,并且包含一个很好的穿的什么和实时操作系统是如何实施之一。事实上,他们的 步行通过例 即使目标的一个AVR。


开发工具用于嵌入式系统可能非常昂贵。然而,有些经常开放源的替代品更加开放的核心喜欢臂和AVR。例如,见的 WinARMWinAVR 的项目。

这些工具的链的基础是海湾合作委员会,因此也可(和更容易使用恕我直言)在非窗平台。如果你熟悉使用的海湾合作委员会,然后,你知道,有丰富的"IDE的"适合你的口味从 EMACSvi (我最喜欢的)来 日食.

该商业产品可以节省很多的头痛得到设置。然而,选择一个将在很大程度上取决于目标的硬件和预算。此外,一些硬件支持直接USB调试,而有些则可能需要昂贵的 JTAG 适配器。


其他链接:


低成本的Cm3板:


新Arduino利用一个手臂cm3,而不是一个AVR微控制器。

其他提示

鉴于您已经编程经验,您可能想要考虑得到一个Arduino和消灭固做你自己的东西与AVR室+WinAVR。Arduino给你一个很好的起点,在理解电子边。取出Arduino的程序会给你更好的进入爱特梅尔的内脏。

获得的目标设置了,我还建议探索台式计算机更加深入地通过x86编程。你可能会建立一个x86操作系统核心,例如。

手臂是最广泛使用嵌入式架构,涵盖一个巨大的范围内的设备从多个供应商和广泛的成本。这所述之间有很大差别ARM7,第9、11和皮质的设备,尤其是皮质。然而如果进入嵌入式系统的职业是你的目的,手臂的经验将为您服务。

8位架构通常更容易使用,但往往非常有限,在这两个存储能力和核心速度。也因为他们是简单的使用,8位的技能相对容易获得,因此它是一个不那么有吸引力的技术人员对潜在的雇主,因为它易于履行国内或经验较少的(因此不太昂贵)的工作人员。

然而,如果这是一种业余爱好而不是一个职业生涯中,低成本的部件、电路板和工具,并且易于使用可能会使8位具有吸引力。我建议AVR只是因为它是支持通过免费avr-海湾合作委员会的工具.一些8点目标是支持通过SDCC,另一个开放源C编译器。我相信Zilog使他们Z8编译器提供免费的,但可能需要支付"调试"硬件(虽然这是相对便宜).许多商业工具的供应商提供的码尺寸限制的版本的工具,用于评估和非商业使用,但要注意最需要调试器专家的硬件,这可能是昂贵的,尽管在某些情况下,可以建立它自己,如果你只需要基本的功能和低速度。

不管你做什么做看看 www.embedded.com.如果你选择的手臂,我已经使用WinARM成功地在商业项目,它虽然不是-对-舒适!一个好名单臂资源的提供 在这里,.为AVR一定要看看 www.avrfreaks.net

我只想让你的微芯片PIC份(至少低端的)的高成本敏感的项目在那里的外围组合是一个良好的配合,以应用程序;不学习嵌入式系统。PIC更多的是一个品牌于一个构架,将各种范围PIC12、16日、18、24、PIC32是彼此非常不同,所以学习在一种并不一定站在你非常有利于使用的另一个-你甚至往往需要购买新的工具!这就是说,dsPIC这是基于PIC24构可能是一个好的选择,如果你想得到一些简单的DSP的经验,在同一时间。

在所有情况下,检查了编译器可用性(特别是如果C++的支持是一项要求)和成本,并调试器硬件的要求,因为通常这些将是最昂贵的部件的开发工具包,董事会和部件常常是最昂贵的一部分。

得克萨斯州的文书已经发布了一个非常有趣的发展工具包以非常低的价格:的 eZ430-克罗诺斯开发工具 包含一个MSP430带显示屏和各种传感器在一个体育观,包括usb调试程序和usb无线接入点 对于50美元

还有 wiki含有 很多很多的信息。

我已经 创建了一个提案回答# 为eZ430-克罗诺斯工具包。

不管你做什么,确保你得到一个良好的发展环境。我不是一个风扇的微芯片的发展工具,即使我喜欢他们的微控制器(我已经燃烧过很多次通过MPLAB+ICD,太多的障碍和功能障碍).TI2800系列Dsp很好并且有一个日蚀基C++发展的环境,可以获得成为 < 我们100美元(获得一个"controlCARD"基于实验试剂盒一样的 28335)--调试器通信链路是真的固体;IDE是好的,虽然我偶尔也会崩溃。

某处有ICs和委员会,更好;我不熟悉的嵌入控制器的风景,但是我没有太多的耐心为贫穷的IDEs的又一个软件工具的链子我必须弄清楚如何解决所有的错误。

一些建议的手臂。我建议,不是作为一个平台第一学习,但是如第二个平台。手臂是有点复杂,因为一个平台,以了解低级别的详细信息嵌入式,因为它启动代码和初始要求更为复杂,比其他许多微.但是手臂是一个大玩家在嵌入市场,因此很值得学习。所以我建议它作为一个平台第二学习。

的爱特梅尔AVR将是很好的学习许多嵌入式要点,为3个主要原因:

  1. 建筑是合理地直线前进
  2. 很好的 开发工具包,提供的教程
  3. 风扇论坛 有许多资源

其它微有 开发工具包 也可能是好的—比如 MSP430—虽然他们可能没有这样一个风扇的论坛。使用发展工具包是一个良好的路要走,因为它们都是旨在快速启动和运行与微型,并促进有效的学习。他们可能有 教程的方向迅速开始.

好吧,我假设开发工具包和他们的教程,可能掩盖这样的事情引导程序和启动代码,赞成让你的代码眨眼的导致尽快。但是,这可能是一个很好的方式开始,并且可以探索的一连串事件的从"电",以"运行的代码"你的步伐。

我没有风扇的照片,至少PIC16s, 由于他们的建筑.这不是很C友好。和银行存储器是痛苦的。

这是个很难回答的问题作为你的理想答案很大程度上取决于它是什么你有兴趣学习。

如果你的目标就是要潜入得更深入的内部运作的计算系统,我几乎可以建议你放弃的嵌入式途径并挑选了一本书上写的一个linux内核的模块。写简单的东西读取温度传感器关闭Mi或者类似的东西。

如果你在寻找进入高一级(电话,等等)嵌入式应用程序的开发,下载卓SDK,你可以代码在java在日食,甚至有一个很好的仿真程序。

如果你看得到"真正的"微控制器空间的和真考虑看看低级别的系统编程,我要建议你开始上一个非常简单的结构如AVR或图片的东西没有一个MMU。

潜入中间地带,例如一个手臂MMU和某种形式的操作系统是linux或否则将是有点震惊,因为没有一个背景是两个系统的编程和硬件接口,我认为过渡将是非常粗略的如果你计划要做很多其它于编写非常简单的应用程序,计按下按钮或类似。

它的问题,需要逐渐获得经验的开始用更简单的系统。注意,通过更简单的我不是不那么强大,我的意思是易于使用、易于安装等。在这方面,我建议如下(我没有既得利益的任何产品,我只是发现他们的最好的):

我已经开始使用这些中的一个(蒂恩开发委员会).大卖点对于我们,我可以代码C或C++、直接的连接,对于u盘和一个漂亮的在线发展的环境(没有当地工具安装需要在所有!).

http://mbed.org/

五分钟后打开箱子我不得不一样的布林基程序("hello world"的emedded世界)的运行如下:

#include "mbed.h"

DigitalOut myled(LED1);

int main()
{
    while(1)
    {
        myled = 1;
        wait(0.2);
        myled = 0;
        wait(0.2);
    }
}

这就是它!上述是完整的节目!

这是基于臂的皮层M3、快速和大量的存储器,用于嵌入式的项目(100mhz,256k闪&32千ram)。网络开发工具有一个非常好的图书馆及大量的例子,那里有一个非常活跃论坛。很多的帮助连接设备蒂恩等等

即使我有丰富的经验带嵌入式系统(臂第7/9,Renases M8/16/32,Coldfire,Zilog,石化公司等等),我仍然发现这是一个令人耳目一新的易系统的了解而具有严重的能力。

在最初放在一个基本的实验板我买了一个基地板上从这些人: http://www.embeddedartists.com/products/lpcxpresso/xpr_base.php?PHPSESSID=lj20urpsh9isa0c8ddcfmmn207.这有一堆I/O设备(包括一个小型OLED和3轴速度计).从同一个网站,我也买了一个LCPExpresso处理局,它是便宜、低功率/存储比蒂恩但是完美的,为较小的作业(仍锤子废话了PIC/信号处理器的).基董事会支持的LCPExpresso和蒂恩.购买LCPExpress处理板还有我我的一个连编程和离线的开发envoronment(代码红色的海湾合作委员会/蚀基于开发的工具包).这是更为复杂,比在线蒂恩开发的环境,但是逻辑进展之后已经获得了expeience与蒂恩.

参照我原来点晚报,蒂恩控制器是更多能够比的LPCExpresso控制器,但是更简单的使用和学习。

我使用微型芯片PIC的,它的什么我一开始,我主要是有事就由于123微控制器项目,该邪恶的天才的书。我花了一个微处理器类在学校我的程度和学到一点关于中断的时间和东西,这有助于一吨我的微控制器。我想其他一些程序员等等,可以更好/更加容易,但对于36美元的PicKit1,我太的便宜以去买一个又一个...和坦率地说,不使用他们,我不知道如果他们更容易/更好,我喜欢我的,并建议每一个机会,我得到了我永远是真实际上看到它,但我可以的程序的另一个芯片断局与ICSP最后。我不知道还有什么其他的程序员做到这一点,但对我来说这是最好的东西5丝接口,你就是程序化的。不能击败用一根棍子...

我只用其中的一个。

飞思卡尔是一个微芯片。我已经使用HC-东西的芯片岁的小项目。唯一需要注意的是,我不会碰CodeWarrier嵌入了一个10英尺的杆。你可以找到免费的小C编译器和装配工(我不记得名字的最后一个我的使用),做的工作就好了。Codewarrior是大混乱,无论多少我知道芯片体系结构和C程序似乎总是只会使事情更困难。如果你使用Codewarrior在Mac在老天,并认为CW是很整齐,嗯,这是不喜欢这样。CW嵌入 看起来 隐约类似,但是它 工作 非常不同,并不非常好。

命令行编译器一般 .专业人员可以壳了大钱获得昂贵的发展环境,并且我是肯定的,他们让事情变得更好,但是,如果没有,它仍然远远好于编写大会的代码一个台式电脑在1990年,我们成功地做到这一点就好了。:-)

没有没关系如果你想学习如何对程序的一个嵌入式装置。但你需要知道的流量从哪里开始的和下一步去哪里。原因有许多微控制器在那里和你不知道选择哪一个。因此最好有一个路线图之前开始。

我认为你应该开始与任何AVR委员会(信号328P-arduino板或AVR板) 那么你应该去臂微控制器的第一次做手臂的皮层将 然后臂的皮层M3委员会。因此,这会给你一个总体看法之后,你可以选择任何董事会根据什么样的项目工作和什么是您要求。

解更多关于嵌入式 doafco.com

你可能会 考虑 一个 RoBoard.现在,这个委员会可以 是你所寻找的在微控制器,但它具有的优点是能够运行DOS和Windows或因此你 可能 使用了微软。网或甚至C/C++发展的工具来摆弄东西喜欢伺服器或传感器,或者甚至是什么,建立一个机器人!它实际上还挺有趣的。

还有 轴突II, ,其中有ATmega640处理器。

无论哪种方式,这两个董事会应该帮助你实现你的目标。

对不起的机器人技术重点,只是一些我感兴趣,并认为它可以帮助你。

我用图片,但是会考虑Arduino如果我选择了今天。但从你的目标:

  • 如何IO口工作
  • 存储器局限/要求
  • 中断服务程序

我不知道如果你最好的赌注是刚刚破解在Linux内核?

英国广播公司微位

https://en.wikipedia.org/wiki/Micro_Bit

这种廉价的小板 (~20磅) 已装箱的手臂控股作为一种教育设备和1M单位给予了免费给英国的学生。

它包含一个手臂的皮层-M0,最小的臂核心。

我建议,作为第一微控制器的板由于其广泛性、低成本、简单,而事实上,它引入了你的手臂结构,其中有许多更先进的板也可用于更严重的应用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top