基于具有Arduino Leonardo的树莓派扩展板的介绍

21ic电子网 2018-01-15 11:15 次阅读

一. 前言

Raspberry PI树莓派是一个具备高级功能的嵌入式Linux主板,可以实现完整的计算机功能,近些年来因为树莓派的便宜,方便使用等诸多因素导致树莓派非常火热,受到众多开发者的热爱。另外,Arduino是一款便捷,灵活方便使用的嵌入式开发工具,可以做实时信号采集和控制,同样因为方便使用和开发近些年来得到了非常好的发展和普及。

二. 定位

树莓派是完整的计算机具有很强的处理能力,虽然也有IO口可以扩展外部的应用,但是还有有些不足,不能很方便的扩展周边的硬件,而Arduino虽然没有强大的处理能力,但是有非常强大的扩展能力,从这里看来树莓派的功能和Arduino的功能具有互补性,于是乎DFROBOT就推出了这样一款具有Arduino Leonardo的树莓派扩展板,接下来我们就介绍一下这款树莓派扩展板

基于具有Arduino Leonardo的树莓派扩展板的介绍

三. 开箱

Arduino树莓派扩展板由防静电袋包裹,并配备了一根MicroUSB数据线,一块CR1220纽扣电池以及三个塑料螺丝和螺柱,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

打开防静电袋后,就可以看到这块Arduino树莓派扩展板,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

板子背面,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

树莓派扩展板整板采用黑色阻焊层,排针和排座为彩色,器件排列也很整齐,整体的视觉效果很好

四. 产品功能

这款开发板是将Arduino的Leonardo与Raspberry PI的接口结合,另外还增加了些其他的功能构成了该扩展板。

扩展板功能如下:

(1) 微控制器:Atmega32u4

(2) 引导装载程序:Arduino Leonardo

(3) 工作电压:5V

(4) 数字I/O口:20

(5) 模拟I/O口:6

(6) Xbee扩展接口:1

(7) Raspberry Pi 引出 GPIO :16

(8) Raspberry Pi 引出 I2C总线:1

(9) Raspberry Pi 引出 ID_I2C总线:1

(10) Raspberry Pi 引出 SPI总线:1

(11) Raspberry Pi 引出 TTL UART串口:1

(12) 集成RTC时钟,Raspberry Pi可以直接读取

(13) 串口切换功能

扩展板功能接口示意,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

五. 产品设计

扩展板采用圆角矩形设计,扩展板与Raspberry Pi相比长度相同,宽度略宽一些,

板子设计有3个定位控制与Raspberry Pi的定位孔位置相同,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

树莓派扩展板板子上采用了不同颜色的排针和排座用于区分排针和排座的不同的功能。

模拟I/O的排座为蓝色

电源的排针和排座为红色

数字I/O排针和排座为绿色

阻焊层为黑色,整板的器件布局很整齐,

在复位按键的下方,板子的背面有一颗橡胶垫,垫在RJ45接口上,这样设计一方面是为了支撑板子,另一方面是防止RJ45接口的外壳将插针短接,如下图:

板子Xbee接口旁边有一条挖空的细槽,猜测是在使用树莓派的Camera时,用于穿过FPC,这样不会影Raspberry PI的的外设使用,如下图:

Raspberry PI的所有IO通过电平转换芯片后引出,用户可根据外设的电平需求上拉到5V或者3.3V,并具备端口保护的功能。

开发板上设计了拨码开关可以选择Arduino Shield 插槽上插入的串口Shield是通过树莓派串口还是通过Arduino Leonardo 来建立通信连接。当拨到A端时连接到树莓派的串口,当拨到B端时连接到Arduino自己的串口。

板子的各个细节处理的很到位,无论是硬件方案还是,板子做工都是非常优秀的,总的来讲板子的设计很用心。

六. 产品使用方案

接下来我们就开始使用这款开发板,将Arduino树莓派扩展板连接到树莓派上,使用附带的USB线将扩展板与树莓派连接

为树莓派供电,连接显示器,鼠标键盘,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

接下来我们将在树莓派上安装Arduino IDE

获取ROOT权限并安装更新后安装Arduino,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

安装完成,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

因为我们要操作串口,接下来将PI用户添加到tty和dialout,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

接下来我们要打开Arduino IDE,如下图:

打开Arduino IDE之后在Board下选择Arduino Leonardo,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

在Serial Port已经设置为ACM0,如下图:

接下来打开程序,点亮13引脚的LED,如下图:

将程序下载到扩展板,板上的绿色LED亮起,如下图:

基于具有Arduino Leonardo的树莓派扩展板的介绍

我们也可是使用Firmata协议是Raspberry PI和Arduino进行通信,以及更多的操作,由于篇幅的原因小编这里就不做演示了,Raspberry PI和Arduino结合后的可玩性还是非常高的,感兴趣的同学可以试试。

从以上的操作来看,在Raspberry PI上做Arduino的开发还是比较容易的,与在Windows上开发没有太多区别,并且这款扩展板做了很多优化设计将Raspberry PI和Arduino完美的结合了起来,是实现创新项目的好工具。

七. 其他资料

官方提供了原理图,元件位置图,板子接口详细说明等资料,另外官方还提供了Raspberry PI和Arduino的使用教程,教程较为详细,适合初学者学习使用,是学习Arduino和Raspberry PI的好方法。

八. 总结及展望

Raspberry PI和Arduino作为开源硬件最为火热的两个代表,各自具有自己的优点和缺点,似乎将二者觉结合起来就能弥补各自的不足,并且二者的关联使用也相对容易,DFROBOT的这款扩展板解决了硬件的连接,并且提供了软件上的使用方法,使得无论是Raspberry PI爱好者还是Arduino爱好者都有一个相对容易的使用方法。总的来说这是一个非常适合做相对复杂的项目的的扩展板,用Raspberry PI做大量的数据处理和网络连接等工作,用Arduino做实时的数据采集和控制,这也是强强联合,这样的解决方案适合大部分创客的,同时能解决创客们的大部分想法,DFROBOT的产品的无论是产品设计,易用性和质量都是有保证的,希望创客们能做出更好玩更有意思的作品。

热门推荐

原文标题:让树莓派和Arduino合体会怎样

文章出处:【微信号:weixin21ic,微信公众号:21ic电子网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

联想提出预装单独的国产Linux系统的建议

昨天有报道称,联想在中央某采购中心关于预装国产操作系统的投票会上投了反对票一事属实。联想昨晚回应记者....

的头像 电子发烧友网工程师 发表于 05-27 05:31 112次阅读
联想提出预装单独的国产Linux系统的建议

基于Linux操作系统的服务器运行的同时,也会表征出各种各样参数信息

最后是每个程序的资源占用列表,其中 CPU 的使用率是所有 CPU core 占用率的总和。通常执行....

的头像 马哥Linux运维 发表于 05-25 17:28 275次阅读
基于Linux操作系统的服务器运行的同时,也会表征出各种各样参数信息

初学者是选ARM7还是ARM9?uCOS还是Linux?

本文首先介绍了ARM7、ARM9和uCOS及Linux这四者的概念,其次阐述了ARM7与ARM9的区....

发表于 05-25 11:16 97次阅读
初学者是选ARM7还是ARM9?uCOS还是Linux?

请问你们可以提供AM1808最小开发板的原理图?可以烧入嵌入式linux操作系统,可以正常启动嵌入式linux。

发表于 05-25 10:41 178次阅读
请问你们可以提供AM1808最小开发板的原理图?可以烧入嵌入式linux操作系统,可以正常启动嵌入式linux。

在8168 DVR-RDK中,现在生成的.out 只可以在开发板上运行的,怎么修改能够生成可在linux的可调试程序?

发表于 05-25 08:12 35次阅读
在8168 DVR-RDK中,现在生成的.out 只可以在开发板上运行的,怎么修改能够生成可在linux的可调试程序?

一款可编程智能对战坦克里面的地图可以定位,请问是什么原因?

发表于 05-24 20:39 122次阅读
一款可编程智能对战坦克里面的地图可以定位,请问是什么原因?

基于AM335x平台 Linux系统上运行PRU程序(下篇)

发表于 05-24 16:56 51次阅读
基于AM335x平台 Linux系统上运行PRU程序(下篇)

基于AM335x平台 Linux系统上运行PRU程序(上篇)

发表于 05-24 16:40 26次阅读
基于AM335x平台 Linux系统上运行PRU程序(上篇)

Python快速入门方法

发表于 05-24 15:37 174次阅读
Python快速入门方法

基于嵌入式Linux的语音识别系统硬软件设计详细讲解教程

该设计运用三星公司的S3C2440,结合ICRoute公司的高性能语音识别芯片LD3320,进行了语....

发表于 05-24 15:15 163次阅读
基于嵌入式Linux的语音识别系统硬软件设计详细讲解教程

linux标准学习教程,让你学习linux有方法

发表于 05-24 15:06 96次阅读
linux标准学习教程,让你学习linux有方法

ADICUP3029开箱及入门指南视频讲解

了解EVAL-ADICUP3029套件的内容以及如何设置并使用工具和软件,为自己的开发进程做好准备。....

的头像 亚德诺半导体(ADI)视频 发表于 05-24 12:47 254次阅读
ADICUP3029开箱及入门指南视频讲解

嵌入式Linux主设备号和次设备号的获取

静态分配设备号,就是驱动程序开发者,静态地指定一个设备号。对于一部分常用的设备,内核开发者已经为其分....

的头像 嵌入式ARM 发表于 05-23 17:18 190次阅读
嵌入式Linux主设备号和次设备号的获取

中断程序时间过长导致的后果是什么?

发表于 05-23 10:06 162次阅读
中断程序时间过长导致的后果是什么?

Linduino是什么?对你的工作有何影响?

Linduino 开发平台包括一个可兼容 Arduino 的开发板和一个庞大的固件范例库。 Lin....

的头像 亚德诺半导体(ADI)视频 发表于 05-22 13:45 172次阅读
Linduino是什么?对你的工作有何影响?

OMAP35x Linux PSP数据表

本文档提供了OMAP35X Linux PSP包的一部分的设备驱动程序的概述和性能数据。

发表于 05-22 09:24 30次阅读
OMAP35x Linux PSP数据表

在Linux上移植了znp host framework,并开发host程序,请问zcl_SendRead函数会一直阻塞是什么原因?

发表于 05-22 03:02 21次阅读
在Linux上移植了znp host framework,并开发host程序,请问zcl_SendRead函数会一直阻塞是什么原因?

我想用3359做一个EtherCAT的主站,底层的系统是选择RT linux好还是TI RTOS好呢?有没有两者的对比?

发表于 05-22 00:51 72次阅读
我想用3359做一个EtherCAT的主站,底层的系统是选择RT linux好还是TI RTOS好呢?有没有两者的对比?

10个任何人都可以做的Arduino项目!

在规划阶段,您只需要一个电源、像Arduino Pro micro 5v这样的微控制器和两个组件:P....

的头像 玩转单片机 发表于 05-21 17:25 565次阅读
10个任何人都可以做的Arduino项目!

通过这10个基础命令开始掌握Linux命令行

如果你对 Linux 感兴趣,但是一直在使用 PC 或者 Mac 桌面,你可能想知道你需要知道什么才....

的头像 Linux爱好者 发表于 05-21 17:21 349次阅读
通过这10个基础命令开始掌握Linux命令行

Arduino仍然被众多工程师认为是业余设计爱好者的“玩具”

虽然Arduino被全世界的业余爱好者、修补匠,以及第一次接触电子设计的年轻人们采用,它也成为了数以....

的头像 面包板社区 发表于 05-21 17:18 888次阅读
Arduino仍然被众多工程师认为是业余设计爱好者的“玩具”

用30个实例探索top命令的细节

最全Linux TOP命令使用教程!

的头像 马哥Linux运维 发表于 05-20 10:20 360次阅读
用30个实例探索top命令的细节

技术帖:如何在 Linux 中使用 find

find 是日常工具箱中功能更强大、更灵活的命令行工具之一,因此值得花费更多的时间。

的头像 Linux爱好者 发表于 05-20 10:11 317次阅读
技术帖:如何在 Linux 中使用 find

NXP的Cortex-M系列为例做简要介绍Linux开发

单片机与应用处理器的核心区别到底是什么呢?是核心主频的差异?还是Linux系统的支持?又或者是处理器....

的头像 ZLG致远电子 发表于 05-20 08:00 1035次阅读
NXP的Cortex-M系列为例做简要介绍Linux开发

驱动是如何工作的_Linux设备驱动的固件加载详解

作为一个驱动作者, 你可能发现你面对一个设备必须在它能支持工作前下载固件到它里面. 硬件市场的许多地....

的头像 电子发烧友网工程师 发表于 05-20 07:10 191次阅读
驱动是如何工作的_Linux设备驱动的固件加载详解

CoreOS与红帽OpenShift联手推动混合云原生服务

红帽公布CoreOS与红帽 OpenShift集成的发展蓝图 CoreOS与红帽 OpenShift....

的头像 电子发烧友网工程师 发表于 05-20 00:44 443次阅读
CoreOS与红帽OpenShift联手推动混合云原生服务

Arduino使用金属触摸传感器

本文介绍我买的37款传感器套件中的金属触摸传感器。实物图如下:它和上一篇文章中介绍的火焰传感器类似,....

发表于 05-19 11:46 84次阅读
Arduino使用金属触摸传感器

基于Linux的USB+20+OTG驱动的研究与实现

学习Linux的好帮手,对于大家学习一定帮助

发表于 05-19 10:29 74次阅读
基于Linux的USB+20+OTG驱动的研究与实现

嵌入式Linux的开机启动流程简单的介绍

这里ROM Code是上电后最先执行的动作,就相当一个启动引导的过程;U-Boot除了初始外设外,还....

的头像 嵌入式ARM 发表于 05-18 15:04 286次阅读
嵌入式Linux的开机启动流程简单的介绍

设备驱动模型直观的认识

可以看到,我们在使用kobject、kset、ktype结构,就在sysfs虚拟文件系统下创建(通过....

的头像 嵌入式ARM 发表于 05-18 14:58 181次阅读
设备驱动模型直观的认识

美高森美和SiFive推出HiFive Unleashed扩展板 助力Linux软件和固件开发人员首次构建RISC-V PC

致力于在功耗、安全、可靠性和性能方面提供差异化的领先半导体技术方案供应商美高森美公司(Microse....

的头像 人间烟火123 发表于 05-17 11:23 650次阅读
美高森美和SiFive推出HiFive Unleashed扩展板 助力Linux软件和固件开发人员首次构建RISC-V PC

Linux操作系统下C语言编程入门.pdf

Linux操作系统下C语言编程入门

发表于 05-17 10:08 60次阅读
Linux操作系统下C语言编程入门.pdf

树莓派、Arduino、传统单片机开发板该如何选择

2015年贴片技术的不断普及,让面包板不再那么有用武之地,经济的发展也让现成的板卡价格降到了一个合理....

发表于 05-16 15:22 425次阅读
树莓派、Arduino、传统单片机开发板该如何选择

在Linux中安装Vim-anywhere

这仅仅只是一个例子。你甚至可以使用 Vim-anywhere 在烦人的 web 表单或者其他应用上进....

的头像 Linux爱好者 发表于 05-16 09:32 208次阅读
在Linux中安装Vim-anywhere

生态之痛:没有产业化的研发都是在耍流氓

倪光南在反思芯片发展的问题时也提到:越没人用就越无法获得应用支持,越没有应用支持就越没人用,这是个恶....

的头像 传感器技术 发表于 05-15 17:10 395次阅读
生态之痛:没有产业化的研发都是在耍流氓

交叉编译工具链的命名规则

ARM 公司推出的编译工具,功能和 arm-none-eabi 类似,可以编译裸机程序(u-boot....

的头像 嵌入式ARM 发表于 05-15 11:06 294次阅读
交叉编译工具链的命名规则

FTDI 再宣布利用Indiegogo , 对全球工程师再推出一套新的 Arduino 相关产品块

CleO 的目的是为市场带来一系列智能化 , 编程简单的 TFT 显示板 , 工程师不需高度经验就可....

发表于 05-14 15:57 143次阅读
FTDI 再宣布利用Indiegogo , 对全球工程师再推出一套新的 Arduino 相关产品块

Arduino控制DS1302时钟芯片(ds1302引脚图及功能和应用电路)

本文开始介绍了ds1302引脚图及功能与DS1302封装,其次介绍了两款DS1302应用电路与时序说....

发表于 05-14 14:39 444次阅读
Arduino控制DS1302时钟芯片(ds1302引脚图及功能和应用电路)

从全局的视角分析内核对内存的管理

内存溢出的解决办法:1、等比例缩小图片。2、对图片采用软引用,及时进行 recycle( ) 操作。....

的头像 Linuxer 发表于 05-14 14:24 191次阅读
从全局的视角分析内核对内存的管理

了解各种系统调用助你成为一名Linux下编程高手

Linux内核中设置了一组用于实现各种系统功能的子程序,称为系统调用。用户可以通过系统调用命令在自己....

的头像 嵌入式资讯精选 发表于 05-14 11:10 329次阅读
了解各种系统调用助你成为一名Linux下编程高手

如何解决Linux设备驱动的固件问题

作为一个驱动作者, 你可能发现你面对一个设备必须在它能支持工作前下载固件到它里面. 硬件市场的许多地....

的头像 嵌入式ARM 发表于 05-12 10:46 476次阅读
如何解决Linux设备驱动的固件问题

arduino如何控制舵机及详细步骤

本文首先介绍了舵机的控制方法,其次阐述了Arduino控制舵机的两种方法,最后详细阐述了arduin....

的头像 电子魔法师 发表于 05-11 14:28 994次阅读
arduino如何控制舵机及详细步骤

透了解系统调用助你成为Linux下编程高手

Linux内核中设置了一组用于实现各种系统功能的子程序,称为系统调用。用户可以通过系统调用命令在自己....

的头像 嵌入式ARM 发表于 05-11 11:27 224次阅读
透了解系统调用助你成为Linux下编程高手

FTDI现在宣布CleO产品的全面性量产

FTDI现在宣布CleO产品的全面性量产(和包含附带配件), 借由其分销合作伙伴,以及该公司的网站。....

发表于 05-10 11:43 67次阅读
FTDI现在宣布CleO产品的全面性量产

三个Linux命令行工具能让你假装很忙

有时候你很忙。而有时候你只是需要看起来很忙,就像电影中的黑客一样。有一些开源工具就是干这个的。

的头像 Linux爱好者 发表于 05-10 09:24 370次阅读
三个Linux命令行工具能让你假装很忙

深入理解Linux RCU:RCU是读写锁的替代者

请注意,在单个CPU上读写锁比RCU慢一个数量级,在16个CPU上读写锁比RCU几乎要慢两个数量级。....

的头像 Linuxer 发表于 05-10 09:13 232次阅读
深入理解Linux RCU:RCU是读写锁的替代者

深入理解Linux RCU:经典RCU实现概要

减少锁竞争的一个有效方法是创建一个分级结构,如上图所示。在此,四个rcu_node 结构中的每一个都....

的头像 Linuxer 发表于 05-10 09:08 551次阅读
深入理解Linux RCU:经典RCU实现概要

OMAP35x Linux PSP的备驱动程序的概述和性能数据

本文档提供了OMAP35X Linux PSP包的一部分的设备驱动程序的概述和性能数据。

发表于 05-08 16:01 26次阅读
OMAP35x Linux PSP的备驱动程序的概述和性能数据

在Linux下touch的9个命令示例

默认情况下,每当我们尝试使用 touch 命令更改符号链接文件的时间戳时,它只会更改原始文件的时间戳....

的头像 Linux爱好者 发表于 05-08 14:17 160次阅读
在Linux下touch的9个命令示例

基于Arduino UNO和L298N的避障小车DIY制作

一、 壁障小车的制作 1、 制作避障小车的准备工作 硬件:Arduino UNO、L298N驱动模块....

发表于 05-08 10:45 635次阅读
基于Arduino UNO和L298N的避障小车DIY制作

Linux内核地址映射模型与Linux内核高端内存详解

Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据....

发表于 05-08 10:33 212次阅读
Linux内核地址映射模型与Linux内核高端内存详解

在Linux中监控多台主机

如果你想要以快速且粗略地在局域网中一次监控多台主机,你可能需要了解一下 “rwho” 工具。只要安装....

的头像 Linux爱好者 发表于 05-07 09:48 233次阅读
在Linux中监控多台主机

做为IT人的你 趁年轻学点Python吧

在AI蓬勃发展的今天,IT巨头都在悄悄布局,做为IT人的你,是否也准备好了?虽说Python不是进入....

的头像 21ic电子网 发表于 05-06 09:03 775次阅读
做为IT人的你 趁年轻学点Python吧

嵌入式Linux系统开发入门基础

Linux 基础 安装Linux操作系统 Linux文件系统 Linux常用命令 Linux启动过....

发表于 05-05 13:03 166次阅读
嵌入式Linux系统开发入门基础

采用Raspberry Pi 3和扩展板对工业控制设计(附代码)

对于很多较小作业规模而言,Raspberry Pi 3 平台提供了一种性能卓越的低成本解决方案。Ra....

发表于 05-04 15:40 1251次阅读
采用Raspberry Pi 3和扩展板对工业控制设计(附代码)

动态链接库不为人知的秘密

Linux 下有动态库和静态库,动态库以.so为扩展名,静态库以.a为扩展名。二者都使用广泛。本文主....

的头像 Linuxer 发表于 05-04 14:33 242次阅读
动态链接库不为人知的秘密

Linux内核内存管理问题

当我们在终端启动一个程序时,终端进程调用 exec 函数将可执行文件载入内存,此时代码段,数据段,b....

的头像 马哥Linux运维 发表于 05-04 10:29 354次阅读
Linux内核内存管理问题

Linux 监控多台主机的技巧分享

让我来解释一下 rwho 是如何工作的。每个在网络上使用 rwho 的系统都将广播关于它自己的信息,....

发表于 05-04 09:58 168次阅读
Linux 监控多台主机的技巧分享

哪些关闭了Linux抢占?抢占又关闭了谁?

对于ARM处理器而言,判断irqs_disabled(),其实就是判断CPSR中的IRQMASK_I....

的头像 Linuxer 发表于 05-04 08:57 779次阅读
哪些关闭了Linux抢占?抢占又关闭了谁?

意法半导体的STM32F429微控制器上的一个μClinux项目实现

对嵌入式系统设计师来说,还可以方便地使用一种工具(utility)聚合工具,如BusyBox,这种工....

的头像 EDN电子技术设计 发表于 05-02 08:25 468次阅读
意法半导体的STM32F429微控制器上的一个μClinux项目实现