Beaglebone Black教程Beaglebone Black的引脚分配
Beaglebone Black教程Beaglebone Black的引脚分配
Beaglebone Black的引脚分配
绝大多数的微型开发平台都提供了一些称为GPIO的输入输出端口。这些端口可以让你使用软件和硬件来控制一些电子的东西,每个端口都被赋予了一个特定的功能——模拟或数字。大多数的微控制器都使用一个引脚分配表来表示各个端口的功能。
Beaglebone Black有两排各46个端口的扩展插头,被标记为P9和P8,各个端口的默认功能如图1.33所示。

图1.33 扩展端口功能
Beaglebone的数字GPIO端口
Beaglebone Black配备有65个GPIO端口。这些端口被标记为GPIO_xx,如图1.34所示。你可以控制这些端口输出在开和关之间切换。你也可以使用它们来检测数字设备的输入,如按钮开关的按下和松开。
注意:不像其他微控制器板(如Arduino),Beaglebone Black每个端口的操作电压是3.3V(Arduino是5V)。任何超过这个级别的电压都会永久损坏板子。

图1.34 数字GPIO
Beaglebone的模拟端口
Beaglebone Black有7个模拟端口,他们被标记为AINx,如图1.35所示。这些端口用来检测像温度传感器这样的设备输出的模拟信号。Beaglebone Black内建的12位ADC可以将这些模拟信号转换为可读的数值,即将0~1.8V映射到0~4096。
注意:确保你的输入电压不会超过1.8V,否则可能会损坏板子,P9的32号端口是专为ADC提供的电源它输出的电压是1.8V,而P9的34号端口则是与之对应的GND。

图1.35 模拟输入端口
Beaglebone的I2C端口
Beaglebone Black提供了两个I2C端口,他们被标记为I2Cx_SCL和I2Cx_SDA,如图1.36所示。

图1.36 I2C端口
由于第一个I2C总线用做读取cape(Beaglebone Black扩展板)上的EEPROMS,所以不可以再用作其他数字IO操作,但是仍然可以用来添加其他I2C设备。第二个I2C总线则可以供你配置和使用。I2C的特点是可以在一条总线上接入多个设备,通过I2C的地址系统可以明确地定位到指定设备。
Beaglebone的SPI端口
Beaglebone Black配备有两个SPI端口,他们分布在如图1.37所示的位置。

图1.37 SPI端口
SPI端口可用于SPI兼容的设备。SPI用在设备之间的同步数据连接。由于它使用的是全双工模式,所以数据传输的速度要比I2C快,但是使用的数据线也要多一些。
Beaglebone的ART端口
Beaglebone Black配备有5个UART端口,他们分布在如图1.38所示的位置。

图1.38 UART端口
在图1.38中只是标出了连接在扩展端口上的UART端口。其实Beaglebone还有一个UART端口,它接在了P9旁边的6脚插座上(名为J1),如图1.39所示。

图1.39 J1插座
Beaglebone的PWM和TIMER端口
Beaglebone Black配备有8个PWM端口和4个TIMER端口,他们的分布位置如图1.40所示。

图1.40 PWM和TIMER
在图1.40中所示的这些端口都可以被配置为PWM模式以产生伪模拟信号,这种信号可以用来控制马达转速及LED亮度等,而且这些端口在工作时并不会消耗额外的CPU周期。
本文选出自:BeagleBone Black项目实训手册转载请注明出处,尊重技术尊重IT人!
Beaglebone Black教程Beaglebone Black的引脚分配的更多相关文章
- Beaglebone Black教程Beaglebone Black中的Cloud9 IDE基本使用
Beaglebone Black教程Beaglebone Black中的Cloud9 IDE基本使用 Beaglebone Black中的Cloud9 IDE基本使用 Cloud9是集成在Beagl ...
- Beaglebone Black教程BeagleBone Black安装最新系统映像
Beaglebone Black教程BeagleBone Black安装最新系统映像 BeagleBone Black安装最新系统映像 Beaglebone Black虽然已经预装了Debian操作系 ...
- Beaglebone Black教程项目1闪烁板载LED
Beaglebone Black教程项目1闪烁板载LED 项目1闪烁板载LED 当设置完你的Beaglebone Black的时候,可能早就非常期待你的第一个项目了.下面就来满足大家的愿望,当然,这个 ...
- Beaglebone Black教程使用SSH通过USB和因特网连接Beaglebone Black
Beaglebone Black教程使用SSH通过USB和因特网连接Beaglebone Black 使用SSH通过USB和因特网连接Beaglebone Black SSH是Secure Shell ...
- BeagleBone硬件概览Ethernet端口板载LEDc重置按钮等介绍
BeagleBone硬件概览Ethernet端口板载LEDc重置按钮等介绍 你进入BeagleBone世界的第一步就是将它连接以得到命令提示,然后你就可以处理文件以及执行命令了.在这里,你就可以定制你 ...
- BeagleBone Black教程之BeagleBone Black使用到的Linux基础
BeagleBone Black教程之BeagleBone Black使用到的Linux基础 BeagleBone Black涉及到的Linux基础 在许多没有Linux相关经验的人看来,Linux看 ...
- BeagleBone Black教程之BeagleBone Black设备的连接
BeagleBone Black教程之BeagleBone Black设备的连接 BeagleBone Black开发前需要准备的材料 经过上面的介绍,相信你已经对BeagleBone有了大致的了解, ...
- Beaglebone Back学习五(PWM测试)
PWM测试 参考链接 1 Enable PWM on BeagleBone with Device Tree overlays 2Using PWM on the Beaglebone Black 3 ...
- Beaglebone Back学习二(功能测试)
开发板测试 买到开发板后,首先要测试一下板子的功能,这个可以参考官方的步骤(Getting Started)进行. 1 首先下载最新的镜像文件http://beagleboard.org/latest ...
随机推荐
- Android通知栏介绍与适配总结
由于历史原因,Android在发布之初对通知栏Notification的设计相当简单,而如今面对各式各样的通知栏玩法,谷歌也不得不对其进行更新迭代调整,增加新功能的同时,也在不断地改变样式,试图迎合更 ...
- java map 转 json 自编封装
1.自编封装代码: import com.alibaba.fastjson.JSON; import java.util.*; public class jsonConversion { privat ...
- elementui table 多选 获取id
//多选相关方法 toggleSelection(rows) { if (rows) { rows.forEach(row => { this.$refs.multipleTable.toggl ...
- jQuery取值的一些奇奇怪怪的操作
语法解释:1. $("#select_id").change(function(){//code...}); //为Select添加事件,当选择其中一项时触发2. var ch ...
- JS 控制页面刷新
.页面自动刷新:把如下代码加入<head>区域中 <meta http-equiv=">,其中20指每隔20秒刷新一次页面. .页面自动跳转:把如下代码加入<h ...
- 中南oj String and Arrays
题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?cid=2072&pid=1 Problem B: String and Arrays T ...
- ORA-02291:parent key not found
Hibernate operation: Could not execute JDBC batch update; SQL [insert into dchnpricecarchancesource ...
- 【Android XML】Android XML 转 Java Code 系列之 介绍(1)
最近在公司做一个项目,需要把Android界面打包进jar包给客户使用.对绝大部分开发者来说,Android界面的布局以XML文件为主,并辅以少量Java代码进行动态调整.而打包进jar包的代码,意味 ...
- centos 快捷键
centos 快捷键大全 时间:2013-02-23 14:54来源:blog.csdn.net 举报 点击:225次 新手通常会不太习惯GNOME或KDE的界面操作,不过还好,LINUX的快捷键大多 ...
- 实现点击页面其他地方,隐藏div(vue)
方法一: 通过监听事件 document.addEventListener('click',function(e){ if(e.target.className!='usermessage'){ th ...