arduino可以用python开发吗(arduino可以用什么编程语言)

http://www.itjxue.com  2023-04-11 02:36  来源:未知  点击次数: 

能用python给arduino编程吗?

过去,“Arduino”的标签意味着使用的开发板上有一个Atmel处理器,并且使用Arduino软件库。现在不再如此。几乎每家微处理器制造商都基于Arduino板设计了一套开发工具,用到了它们自己的处理器和软件。在《原型到产品:专业化的Arduino》一文中,我提到Arduino给开发者提供的最重要特性就是硬件兼容,并且能用它们自己的软件。正在试图融合Python和Arduino优点的开发者需要寻找一款开发工具或是平台,符合硬件标准,能运行Python,但又不局限于使用Atmel处理器或是Arduino代码包。

在Arduino上运行Python的小技巧就是寻找一个兼容Arduino的开发工具,在上面运行Python。这个问题本质上就是寻找哪种型号的Arduino板子有Python端口。没有开发者会为了在单片机上运行Python而自己做迁移,尽管迁移Python很有趣,但是也非常耗费精力。当然还有其它的开发者,和开源的或者迁移的Python代码。

强大的谷歌搜索告诉我们几乎没有合适的选择。仅有的几个之一的选择是一款五年前的开源产品,名为Pymite。它使用的Python版本是2.5(不是最新的2.7版本),在过去两年里几乎没有更新。没有活跃社区的支持,Pymite也免不了落入开源项目的陷阱中。Pymite可以作为一个方案,但是在出现问题的时候会很无助。

**第二种选择是Micro Python。**Micro Python是一个Python 3的开源项目,针对单片机做了性能优化。(你可以阅读《Micro Python入门教程》来了解它)。Micro Python近期汇集了一些资源,目前支持许多硬件平台,包括CC3200、ESP8266、PIC16和STM32。粗略浏览Micro Python代码库(如图1)可以发现它对STM32家族的产品支持度要好于其它产品。

但是,这些单片机开发工具包在盒子之外还支持Micro Python吗?对目前支持Micro Python的板子调研后发现,只有NETDUINO_PLUS_2和OLIMEX_E407有Arduino兼容的输出。OLIMEX_E407使用的处理器与PyBoard原产的405RG略有不同,但是Netduino Plus 2使用完全相同的处理器。不幸的是,Netduino Plus 2刚刚被淘汰。取而代之的是Netduino Plus 3,它的处理器性能远远好于405RG。这款新处理器目前还没有Micro Python的端口。因此,开发者只能使用Olimex板,或者能找到一块可用的Netduino Plus 2.

如果上述两种方案对开发者来说都无法实现,用Arduino板子运行Python的第三种方案就是在PyBoard板子和标准Arduino引脚板子之间连一块适配板。适配板也许是确保与原生Micro Python板以及将来更新相兼容的最佳方案。第四种方案就是基于405RG制作我们自己的Arduino兼容板子,不过这样我们的原型制作速度将大打折扣。

一个开发团队是有可能整合Arduino、硬件设备、Python编程的便捷性以及软件开发的优势。然而,目前并没有一种唾手可得的经验。开发者若想在Arduino上运行Python,可以先写好Python脚本,然后在Olimex 407或是Netduino Plus 2上轻易地跑起来。

arduino能用python吗

不是用Java编程的,现在用得最多的还是C语言编程。不过可以使用Java编写的上位机对单片机进行控制(前提是单片机端也要编好对应的程序)。

本人老师,想学习arduino编程,请问arduino与pyhton有什么关系?

Arduino更好,PYTHON是一种高级桌面语言,类似于JAVA,针对PC编程。微控制器上主要用在树莓派编程。然而树莓派和Arduino最大的区别就是Arduino开放完整全部的PCB设计文件,开放芯片数据表,包括全部寄存器描述和内核框架描述等,而且各种主流语言翻译的都很好包括中文。Arduino后期量产可以根据项目个性化更改PCB,添加和删除板卡上的外设,更改PCB尺寸外形,接口位置等等。树莓派主频600M属于高速板,核心芯片数据表资料不开放,不提供PCB文件,也就几乎无法修改PCB,尺寸,增减外设。用树莓派去开发,后期量产也是需要批量购买原始树莓派板,外形,尺寸,外设都不能有变化。

Arduino的本质:全世界各厂商主流微控制器底层程序标准化。由顶级高手们编写主流微控制器底层驱动,固化封装成更易用语言,减少BUG,增加终端产品开发效率。弱化项目中嵌入式软件工程师的作用,强化硬件工程师和PCB设计工程师的作用。随着PCB打样技术成熟,价格低廉,完美符合当前市场价值要求。频繁快速打样的价格远远低于程序开发价格。可以避免以往前期平台软件开发大量资金和时间投入,快速进入到项目运营研讨和量产研讨阶段。

树莓派的本质:固化硬件系统,尺寸,性能,外设增减都不可改,必须购买树莓派原版硬件。避免硬件设计,避免PCB工程设计,打样,焊接,调试。使用LINUX系统,强化嵌入式软件工程师尤其是LINUX软件工程师的作用,弱化硬件工程师和PCB设计工程师的作用。随着电子技术的不断进步,硬件新芯片日新月异,这种模式不符合发展潮流,LINUX的随意更改,大量底层驱动软件开发人员水平的良莠不齐,意味着层出不穷的软件BUG和混乱的应用逻辑,最终影响终端产品的效果和数据安全性,可以参考早期各行业繁多昙花一现的LINUX嵌入式终端,开发软件平台建设时间久,资金大,运营研讨和量产研讨拖得很久,变数大,风险高,成功率小。好处是,这种模式可以让桌面操作系统的软件工程师和互联网软件公司,找到微控制器应用领域的一个切入点,。应用LINUX系统去分ST,AT,TI,MICOCHIP等硬件芯片公司的终端产品一杯羹,实现过度,后期仍然要转换到灵活硬件设计,固化软件平台开发的轨道上来。

(责任编辑:IT教学网)

更多

推荐ASP.NET教程文章