国外课栈 - 国外电子信息技术

ARM Mbed数字接口&网络通讯

 二维码 7
文章附图

背景知识视频教程

串口

串行接口由于其简单性和易用性,是最常用和最受欢迎的通信接口之一。 串行接口使用两个引脚进行通信,即Rx和Tx,分别用于接收数据和传输数据。 串行接口的默认设置是,波特率:9600; 数据位:8; 停止位:1; 和奇偶校验:否(9600-8-N-1)。

</>

“ printf()”还将信息发送到计算机的串行端口; 因此,以下示例将与上述代码完全相同。

</>

您可以使用“ pc.getc()”从计算机串行端口读取字符,并使用“ pc.putc()”来写入字符到计算机的串行端口。 下面的示例将从计算机读取字符并将其回显,只要存在可读性即可(pc.visible())。

</>

练习1

您也可以使用“ gets()”函数从计算机串行端口读取许多字符。 下面的示例每次最多读取256个字符。 为了使“ gets()”有效地工作,配置终端软件(Tera Term,putty.exe,Arduino串行监视器等)以传输以“ \ n”(NL,换行符)结尾的数据非常重要。 这样,“ gets()”将能够读取可变长度的数据,因为每当读取“ \ n”时它将停止。

</>

练习2

除了与计算机通讯之外,您还可以使用串行端口与其他设备通讯。

</>

更多信息链接:

SPI

串行外围设备接口(SPI)总线是一种同步串行通信接口规范,主要用于嵌入式系统中的短距离通信。 该接口由摩托罗拉开发,现已成为事实上的标准。 典型应用包括安全数字(SD)卡和液晶显示器(LCD)。

SPI器件使用具有单个主机的主从架构以全双工模式进行通信。 主设备发起用于读取和写入的帧。 通过使用单个从选择(SS)线进行选择来支持多个从设备,如下图所示。

对于主板,通过在线编译器创建一个新项目; 如图所示,将其称为“ FRDM-K64F_ SPI”并更改“ main.cpp”内容。

</>

对于从站,通过在线编译器创建一个新项目; 如图所示,将其称为“ LPC1768_ SPISlave”并更改“ main.cpp”内容。

</>

更多信息链接:

I2C

I2C(内部集成电路)是飞利浦半导体(现为NXP半导体)发明的多主机,多从机,单端,串行计算机总线。 它通常用于在板内短距离通信中将低速外围IC连接到处理器和微控制器。 I2C仅使用两条双向漏极开路线,串行数据采集(SDA)和串行时钟线(SCL),并通过电阻上拉。 尽管允许使用其他电压的系统,但使用的典型电压为+5 V或+3.3 V,如下图所示。

</>

对于从站,通过在线编译器创建一个新项目; 如图所示

</>

更多信息链接:

CAN

CAN或控制器局域网是一种总线标准,它允许微控制器和设备彼此通信,而无需通过主机。 它是一种基于消息的协议,最初是为汽车内的多路电气布线而设计的,但也用于许多其他情况。 CAN总线的开发始于1983年的Robert Bosch GmbH。

CAN是用于连接电子控制单元[ECU](也称为节点)的多主机串行总线标准。 CAN网络上需要两个或更多节点进行通信。 节点的复杂性范围从简单的I / O设备到具有CAN接口和复杂软件的嵌入式计算机。 该节点还可以是允许标准计算机通过USB或以太网端口与CAN网络上的设备进行通信的网关。 所有节点都通过两线总线相互连接。 电线为120Ω标称双绞线,如下图所示

以下示例从一个CAN总线(can1)发送计数器,并在另一CAN总线(can2)上侦听数据包。 每个总线控制器应连接到CAN总线收发器。 这些应通过CAN总线连接在一起。 在此示例中,Ticker接口用于设置重复出现的中断,以指定的速率重复调用“ send()”函数。

</>

更多信息链接:


以太网

以太网Web客户端和Web服务器

TCP套接字和UDP套接字

WebSocket

WiFi



阅读完整文档

文章分类: 嵌入式ARM Mbed
分享到: