开源式硬件C语言编程,三大主流开源硬件对比 - 嵌入式软件/开发板 - 电子发烧友网...

本文主要是介绍开源式硬件C语言编程,三大主流开源硬件对比 - 嵌入式软件/开发板 - 电子发烧友网...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

BeagleBoard有一个更大,性能更强的版本——BeagleBoard。如果你需要更强的扩展性,那么BeagleBoard是一个不错的选择。

43762cb2b84901a80f69b36d118794e0.png

Arduino Uno、BeagleBone 和 Raspberry Pi,后两者都有网络接口

如果你的项目需要连接网络,我们比较推荐BeagleBone或Raspberry Pi。这两款都是真正的Linux电脑。他们都内建以太网接口和USB,便于用来连接网络。通过USB接口,你可以连接一个无线模块,那样就可以无需网线就能接入网络。另外,Linux系统拥有很多内置组件,提供高级的网络特性。

32afafe9ebf29acb1867235918a6a78d.png

只需将USB WiFi设备连接到BeagleBone或Raspberry Pi上,Linux系统即可支持这些外接设备

Arduino支持外设,叫做“shields”,它虽然拥有连接网络的能力,但其网络功能十分有限。如果花时间去购买扩展,其实与直接购买功能比较完善的高阶电路板一样。

如果你的项目需要接入外部感应设备,我们推荐Arduino和BeagleBone。Arduino相对于其他设备,更容易连接外部感应器。不同版本的Arduino使用的电压不同(3.3V 或者 5V),这样就可以轻易的连接到不同的外部设备。而BeagleBone只能连接3.3V的外部设备,并在某些情况下,还需要加入电阻或者其他外部电路才能连接外部设备。Arduino和BeagleBone都有模拟数字信号接口,这让你轻松的连接输出不同电压的设备。BeagleBone拥有更高的模拟数字信号的分辨率,这对于某些项目来说是最好的选择。

就如上面所说的,你必须注意你将要连接的设备,包括小型的感应器,是否拥有叫做I2C或者SPI的数字接口。这三款平台都支持这些外接设备,所以通信方面不成问题。

对于需要电池供电的项目,我们推荐Arduino。Arduino功耗是最低地。如果按照每瓦的性能来比较,BeagleBone的能耗是最高的。但是Arduino拥有更广泛的空间,因为他可以和很多不同的输入电压的设备一起工作。这样就要求Arduino需要使用不同型号的电池,并且就算电池没电也能继续运转。

如果需要支持用户界面,我推荐使用Raspberry Pi。Raspberry Pi独树一帜,因为它拥有一个HDMI输出。这意味着,你可以接入键鼠和直接接入到你的电视。在这点看来,你拥有了一台功能全备的电脑,并且拥有用户操作界面。这样使得Raspberry Pi可以用于在需要与用户交互的项目中,以低成本构建web浏览设备。事实上,只是出于娱乐性质,我们把Arduino开发工具安装在Raspberry Pi上,并在Raspberry Pi写以一个简单程序并下载到Aruduino上。它并非是一台高性能的电脑,但是它确实是一台电脑。

总结

Arduino是一个扩展性很好的平台,便于与各种设备交互。对于初学者来说,在进行一些小型项目时,它是绝佳的选择。Raspberry Pi适合用于需要用户界面和需要网络支持的项目,其性价比较高。

BeagleBone拥有Arduino良好的可扩展性,兼具Raspberry Pi快速处理器和Linux灵活的开发环境。所以,如果你想做与水培花园类似的项目,我们推荐BeagleBone。因为它的输入输功能完善,并便于接入网络,所以我们可以通过Web端监测它回传的数据。

所有这3种设备是我们数字化项目的基石。当然,还有其他平台可用,例如,我们使用Sun SPOTs监测我们的番茄花园,这三种设备已基本能满足我们所需,除非你需要更高级的功能。

这篇关于开源式硬件C语言编程,三大主流开源硬件对比 - 嵌入式软件/开发板 - 电子发烧友网...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/232965

相关文章

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

GO语言短变量声明的实现示例

《GO语言短变量声明的实现示例》在Go语言中,短变量声明是一种简洁的变量声明方式,使用:=运算符,可以自动推断变量类型,下面就来具体介绍一下如何使用,感兴趣的可以了解一下... 目录基本语法功能特点与var的区别适用场景注意事项基本语法variableName := value功能特点1、自动类型推

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

AOP编程的基本概念与idea编辑器的配合体验过程

《AOP编程的基本概念与idea编辑器的配合体验过程》文章简要介绍了AOP基础概念,包括Before/Around通知、PointCut切入点、Advice通知体、JoinPoint连接点等,说明它们... 目录BeforeAroundAdvise — 通知PointCut — 切入点Acpect — 切面

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据