Programming languages 学习嵌入式系统需要一些动力吗

Programming languages 学习嵌入式系统需要一些动力吗,programming-languages,embedded,Programming Languages,Embedded,我对为嵌入式设备构建应用程序非常感兴趣。我在电气工程三年级,我对编码、算法、Linux操作系统等充满热情。通过谷歌搜索,我发现Linux操作系统是嵌入式设备的最佳操作系统之一。可能是,也可能不是。我想为从事移动应用的公司工作。我是这个领域的新手/新手&我的技能包括C/C++和MySQL。我需要帮助开始在嵌入式系统领域;比如如何/从哪里开始,硬件先决条件,必要的编程技能,以及什么样的嵌入式应用程序等。我听说过ARM、固件、PIC微控制器;但我什么都不知道&只需要对他们进行适当的介绍 S:我现在正

我对为嵌入式设备构建应用程序非常感兴趣。我在电气工程三年级,我对编码、算法、Linux操作系统等充满热情。通过谷歌搜索,我发现Linux操作系统是嵌入式设备的最佳操作系统之一。可能是,也可能不是。我想为从事移动应用的公司工作。我是这个领域的新手/新手&我的技能包括C/C++和MySQL。我需要帮助开始在嵌入式系统领域;比如如何/从哪里开始,硬件先决条件,必要的编程技能,以及什么样的嵌入式应用程序等。我听说过ARM、固件、PIC微控制器;但我什么都不知道&只需要对他们进行适当的介绍

S:我现在正在德克萨斯农机大学阅读C++中的BjARNE StruuStup,其中的一章描述了.< /P> < P>。除其他外,它是为学生设计的一种廉价且易于编程的嵌入式系统。

请看一下。除其他外,它是为学生设计的一种廉价且易于编程的嵌入式系统

通过谷歌搜索,我发现Linux操作系统 是嵌入式系统的最佳操作系统之一 设备可能是/可能不是

从表面上看,它以低成本为您提供了很多功能。然而,当您本来可以使用成本较低的设备时,您必须考虑运行它所需的硬件成本,以及您无法控制的大量第三方代码。它也不适合应用。通过使用Linux,您将隐含地要求使用带有MMU的32位处理器,除非您使用uClinux和松散内存保护,以及数Mb的RAM和非易失性存储

此外,通过最初不以Linux为目标,而是使用RTOS或实时内核(例如FreeRTOS、QNX、VxWorks、eCOS、uC/OS-II或III),或者在没有操作系统或执行器的情况下编程“裸机”,您还可以了解更多关于嵌入式系统的知识

这是一个很好的嵌入式系统文章资源

在硬件方面,ARM是无处不在的嵌入式系统中最普遍的体系结构,包括手机、PDA、机顶盒、DAB收音机、数码相机、手持游戏、上网本、iPad、机器人等。许多芯片制造商都提供ARM,其成本/性能、外围设备和片上内存种类繁多。基于Cortex-M3的部件将是一个很好的介绍,并且是一个更干净的设计,它基本上取代了旧的ARM7TDMI内核。只要您不想运行Linux,在这种情况下,您至少需要一个带有外部内存的ARM9

如果电路板/工具成本非常关键,您可能更愿意使用8位设备,我建议使用基于Atmel AVR的设备。这些设备很简单,范围很广,如果你愿意,适合C和C++编程。PIC可能看起来很有吸引力,但是它涵盖了一个很大程度上不兼容的体系结构,每个架构需要不同的工具链,除非使用高端设备PIC24/DSPIC,否则它们不提供C或C++编程的最佳平台。 通过谷歌搜索,我发现Linux操作系统 是嵌入式系统的最佳操作系统之一 设备可能是/可能不是

从表面上看,它以低成本为您提供了很多功能。然而,当您本来可以使用成本较低的设备时,您必须考虑运行它所需的硬件成本,以及您无法控制的大量第三方代码。它也不适合应用。通过使用Linux,您将隐含地要求使用带有MMU的32位处理器,除非您使用uClinux和松散内存保护,以及数Mb的RAM和非易失性存储

此外,通过最初不以Linux为目标,而是使用RTOS或实时内核(例如FreeRTOS、QNX、VxWorks、eCOS、uC/OS-II或III),或者在没有操作系统或执行器的情况下编程“裸机”,您还可以了解更多关于嵌入式系统的知识

这是一个很好的嵌入式系统文章资源

在硬件方面,ARM是无处不在的嵌入式系统中最普遍的体系结构,包括手机、PDA、机顶盒、DAB收音机、数码相机、手持游戏、上网本、iPad、机器人等。许多芯片制造商都提供ARM,其成本/性能、外围设备和片上内存种类繁多。基于Cortex-M3的部件将是一个很好的介绍,并且是一个更干净的设计,它基本上取代了旧的ARM7TDMI内核。只要您不想运行Linux,在这种情况下,您至少需要一个带有外部内存的ARM9

如果电路板/工具成本非常关键,您可能更愿意使用8位设备,我建议使用基于Atmel AVR的设备。这些设备很简单,范围很广,如果你愿意,适合C和C++编程。图片可能看起来很吸引人,但它涵盖了一系列基本上不兼容的内容
BLE架构需要不同的工具链,除非你使用高端设备PIC24/DSPIC,否则它们不提供最好的C或C++编程平台。

< P>我将避免操作系统一起,Embedded Linux是矛盾修饰法,你到底在学什么?你可以用家用电脑学习同样的东西

是的,ARM是嵌入式的王者,可能会保持一段时间,最终你需要看一看

Sparkfun.com是一个很棒的网站,他们提供了大量的olimex板和其他类似arduino的衍生产品。与avr相比,我更喜欢msp430,但avr更受欢迎

在sparkfun外,请直接从TI msp430或digikey或mouser查看ez430。Stellaris有很多很好的电路板,811很容易组装,我的第一个电路板只持续了几个小时,哎呀,我应该阅读贴在盒子里所有东西上的17个警告标签,不要触摸那些jtag线路上的启用或方向。stellaris在黑板上放了很多东西,这是学习嵌入式编程、阅读原理图、阅读数据表和程序员参考手册的一个很好的平台,了解到所有的原理图和参考手册都有点问题,你必须通过黑客破解。如果你想要一些东西来构建你自己的项目,尽管你必须切掉这些板上的东西,所以我会使用olimex头板来添加你自己的电子产品

回到sparkfun。olimex总管板很好,价格低于50美元,除ti/stellaris外,还代表了各种arm供应商。Arduino pro mini售价不到20美元。armmite pro很好。避免使用mbed2和lpcxpresso,或者避免使用除armmite pro之外的所有lpc

qemu也是一个很好的模拟器,不像armulator或my Thumblator那样容易深入了解代码在做什么。但是有很多RTOS和Linux都运行在arm和其他处理器上,arm集成评估板是一个流行的目标,由qemu进行模拟。在arm中有许多由qemu模拟的评估板

beagleboard很受欢迎,但我对我的beagleboard和不断创新的上网本非常失望。为了使beagleboard实用,还需要花费100-150美元。Embest有一个更好的beagleboard克隆,这是很有用的开箱即用。我喜欢hawkboard.org比beagleboard好得多,速度慢了一点,价格是它的一半,但是一个更好的板。您可以在linux或true embedded no操作系统或任何您喜欢的系统上工作。基于TI omap的芯片上还有一个dsp,以防您对它感兴趣

我不是pic的粉丝,而且已经并且将会因此而被炒鱿鱼,不要打扰我。我建议学习msp430、avr、arm、thumb和pic的汇编程序,real embedded总是需要一个小汇编程序来管理引导过程、中断处理等,最低限度。msp430和arm非常适合C编译器的指令集,pic和8051一样可怕,这并不意味着没有C编译器,它只是效率非常低,添加高级语言会使结果更糟。图片资源相当有限。pic32是mips衍生产品,而不是我所说/抱怨的。这是一个完整的其他系列和类别的设备。我会选择msp430而不是pic,因为它可以选择汇编程序和C语言、大小、功率、功能等

Mips可能是arms最大的竞争对手,遗憾的是,它是我没有机会学习的一个平台

pdp11所使用的8051、6501和lsi11是一个很好的历史记录。lsi11是C语言的发明者,你可以看到汇编语言和C语言之间的相似之处。msp430指令集也有同样的感觉,msp430和lsi11都是初级汇编语言的优秀指令集。8051可能是现存最古老的机器,它曾经是主流的嵌入式处理器,现在仍然可以在新的芯片产品中找到。像图片一样,指令集是一个河内之塔拼图,在累加器中输入和输出,输入和输出,输入和输出一些指令来做任何有用的事情。sdcc是一个免费的8051C编译器,如果你想深入了解编译器的精髓并有机会在不必买书或上课的情况下理解它,那么它的大小正好合适

我是gameboy advance和nintendo ds的忠实粉丝,gba更容易使用,模拟器也适用于这两款游戏,尽管它们都适合于玩rom游戏,并且不一定在模拟方面非常完美,你可能会为自制开发做些什么。gba而不是mini有串行端口,这使得mini有一个更容易调试,但实现起来更难。若可以的话,先从gba开始,更便宜,更容易,一旦你们掌握了ds的窍门,就是把两个gba绑在一起,再加上一些额外的并发症

根据你的帖子,不知道费用是否太高,我猜是小贩牌 对于linux、嵌入式、算法和您列出的其他项目,hawkboard.org是一个不错的选择。如果没有附带电源和otg usb电缆,请继续获取。如果你像我作为一名电子工程师学生一样,可能太有钱了,看看arduino pro或者lillypad,因为它已经有了插脚,不需要焊接或额外的零件,是的,买14美元的usb到串行的东西。对于lillypad和usb到串行/电源板的价格,你可以得到一个armmite pro,不需要任何其他东西,除了usb电缆,我知道这是一个lpc,没关系。我有网页介绍如何从这两个平台上删除类似arduino的固件,并获得处理器,而不是脑部手术,非常简单,但初次使用的人可能会犹豫。ez430属于同一价格类别,除了20美元的套件,您不需要其他任何东西,另外三块板的价格为10美元。如果这太丰富了,或者即使模拟器不是免费的,那么一些要比在真正的硬件上运行容易得多,因为您有源代码,并且可以在打印语句或其他任何形式中编译。你可以把脚弄湿而不必花费任何时间,看看这是否是你真正感兴趣的东西


记住,即使是最好的仿真器也不像在真正的硬件上运行代码那样在调试器下运行。您可能需要在硬件上重新开始您的项目,但这正是嵌入式的乐趣所在。董事会提出…

我会避免将操作系统放在一起,嵌入式Linux是一个矛盾修饰法,你真正学到了什么?你可以用家用电脑学习同样的东西

是的,ARM是嵌入式的王者,可能会保持一段时间,最终你需要看一看

Sparkfun.com是一个很棒的网站,他们提供了大量的olimex板和其他类似arduino的衍生产品。与avr相比,我更喜欢msp430,但avr更受欢迎

在sparkfun外,请直接从TI msp430或digikey或mouser查看ez430。Stellaris有很多很好的电路板,811很容易组装,我的第一个电路板只持续了几个小时,哎呀,我应该阅读贴在盒子里所有东西上的17个警告标签,不要触摸那些jtag线路上的启用或方向。stellaris在黑板上放了很多东西,这是学习嵌入式编程、阅读原理图、阅读数据表和程序员参考手册的一个很好的平台,了解到所有的原理图和参考手册都有点问题,你必须通过黑客破解。如果你想要一些东西来构建你自己的项目,尽管你必须切掉这些板上的东西,所以我会使用olimex头板来添加你自己的电子产品

回到sparkfun。olimex总管板很好,价格低于50美元,除ti/stellaris外,还代表了各种arm供应商。Arduino pro mini售价不到20美元。armmite pro很好。避免使用mbed2和lpcxpresso,或者避免使用除armmite pro之外的所有lpc

qemu也是一个很好的模拟器,不像armulator或my Thumblator那样容易深入了解代码在做什么。但是有很多RTOS和Linux都运行在arm和其他处理器上,arm集成评估板是一个流行的目标,由qemu进行模拟。在arm中有许多由qemu模拟的评估板

beagleboard很受欢迎,但我对我的beagleboard和不断创新的上网本非常失望。为了使beagleboard实用,还需要花费100-150美元。Embest有一个更好的beagleboard克隆,这是很有用的开箱即用。我喜欢hawkboard.org比beagleboard好得多,速度慢了一点,价格是它的一半,但是一个更好的板。您可以在linux或true embedded no操作系统或任何您喜欢的系统上工作。基于TI omap的芯片上还有一个dsp,以防您对它感兴趣

我不是pic的粉丝,而且已经并且将会因此而被炒鱿鱼,不要打扰我。我建议学习msp430、avr、arm、thumb和pic的汇编程序,real embedded总是需要一个小汇编程序来管理引导过程、中断处理等,最低限度。msp430和arm非常适合C编译器的指令集,pic和8051一样可怕,这并不意味着没有C编译器,它只是效率非常低,添加高级语言会使结果更糟。图片资源相当有限。pic32是mips衍生产品,而不是我所说/抱怨的。这是一个完整的其他系列和类别的设备。我会选择msp430而不是pic,因为它可以选择汇编程序和C语言、大小、功率、功能等

Mips可能是arms最大的竞争对手,遗憾的是,它是我没有机会学习的一个平台

pdp11所使用的8051、6501和lsi11是一个很好的历史记录。lsi11是C语言的发明基础,您可以看到汇编程序之间的相似之处 msp430指令集也有同样的感觉,msp430和lsi11都是初级汇编程序的优秀指令集。8051可能是现存最古老的机器,它曾经是主流的嵌入式处理器,现在仍然可以在新的芯片产品中找到。像图片一样,指令集是一个河内之塔拼图,在累加器中输入和输出,输入和输出,输入和输出一些指令来做任何有用的事情。sdcc是一个免费的8051C编译器,如果你想深入了解编译器的精髓并有机会在不必买书或上课的情况下理解它,那么它的大小正好合适

我是gameboy advance和nintendo ds的忠实粉丝,gba更容易使用,模拟器也适用于这两款游戏,尽管它们都适合于玩rom游戏,并且不一定在模拟方面非常完美,你可能会为自制开发做些什么。gba而不是mini有串行端口,这使得mini有一个更容易调试,但实现起来更难。若可以的话,先从gba开始,更便宜,更容易,一旦你们掌握了ds的窍门,就是把两个gba绑在一起,再加上一些额外的并发症

根据你的帖子,不知道成本是否太高,我猜hawkboard.org是linux、嵌入式、算法和你列出的其他项目的好选择。如果没有附带电源和otg usb电缆,请继续获取。如果你像我作为一名电子工程师学生一样,可能太有钱了,看看arduino pro或者lillypad,因为它已经有了插脚,不需要焊接或额外的零件,是的,买14美元的usb到串行的东西。对于lillypad和usb到串行/电源板的价格,你可以得到一个armmite pro,不需要任何其他东西,除了usb电缆,我知道这是一个lpc,没关系。我有网页介绍如何从这两个平台上删除类似arduino的固件,并获得处理器,而不是脑部手术,非常简单,但初次使用的人可能会犹豫。ez430属于同一价格类别,除了20美元的套件,您不需要其他任何东西,另外三块板的价格为10美元。如果这太丰富了,或者即使模拟器不是免费的,那么一些要比在真正的硬件上运行容易得多,因为您有源代码,并且可以在打印语句或其他任何形式中编译。你可以把脚弄湿而不必花费任何时间,看看这是否是你真正感兴趣的东西


记住,即使是最好的仿真器也不像在真正的硬件上运行代码那样在调试器下运行。您可能需要在硬件上重新开始您的项目,但这正是嵌入式的乐趣所在。板带来…

我碰巧是最新PIC设备的粉丝,比如PIC24F和dsPIC33F。它们针对C语言进行了优化,Microchip还提供了一个免费的编译器。图片的一个优点是很多都是DIP包装,所以你可以把它们放在一个塑料实验板上,然后马上开始使用。也不贵。例如,Digikey以3.64美元的价格出售28针DIP封装中的PIC24FJ16GA002 16K闪存、4K RAM、I2C、SPI、UART和并行端口。

我碰巧是最新PIC设备的粉丝,如PIC24F和dsPIC33F。它们针对C语言进行了优化,Microchip还提供了一个免费的编译器。图片的一个优点是很多都是DIP包装,所以你可以把它们放在一个塑料实验板上,然后马上开始使用。也不贵。例如,Digikey以3.64美元的价格出售28针DIP封装中的PIC24FJ16GA002 16K闪存、4K RAM、I2C、SPI、UART和并行端口。

Oooff。。马拉松驿站。。我读了4遍才完全掌握,因为这些行话对我来说是新的。。谢谢你的回复。如果我有任何疑问,我会打电话给你。有一次,阿加尼昨天把我的nxp lpc mbed从炼狱中拉了出来,它并没有我原来想象的那么糟糕。你不必使用他们的沙盒开发环境,你可以做你自己的事情。像闪存驱动器一样装载,复制.bin文件并按下按钮运行。仍然有偏头痛产生的LED灯,我希望删除和更换。lpcxpresso仍然是邪恶的,避开那一个。。马拉松驿站。。我读了4遍才完全掌握,因为这些行话对我来说是新的。。谢谢你的回复。如果我有任何疑问,我会打电话给你。有一次,阿加尼昨天把我的nxp lpc mbed从炼狱中拉了出来,它并没有我原来想象的那么糟糕。你不必使用他们的沙盒开发环境,你可以做你自己的事情。像闪存驱动器一样装载,复制.bin文件并按下按钮运行。仍然有偏头痛产生的LED灯,我希望删除和更换。lpcxpresso仍然是邪恶的,避免那个。非常同意,特别是关于来自PIC制造商的奇怪的“升级”路径。我一直在与PIC16C57 28引脚,2 K字,他们从来没有设法提供更多的内存引脚兼容芯片。20年后,他们仍然喜欢提供新的服务
然后升级旧组件上的一些东西。并不是说我想在这里点燃火焰,但他们的管理模式是一致的,所以我坚持使用多来源的东西8051,ARM。AVR是最好的8位体系结构,如果它不是单一来源的话:-非常同意,特别是关于来自PIC制造商的奇怪的“升级”路径。我一直在与PIC16C57 28引脚,2 K字,他们从来没有设法提供更多的内存引脚兼容芯片。20年后,他们仍然喜欢提供新的不兼容的家庭,而不是升级旧组件上的一些东西。并不是说我想在这里点燃火焰,但他们的管理模式是一致的,所以我坚持使用多来源的东西8051,ARM。AVR是最好的8位体系结构,只要它不是单一来源的:-