电子发烧友网 > 嵌入式技术 > 正文

嵌入式常用的通信协议

2018年02月06日 18:48 次阅读

随着通信与计算机整合时代的到来,数字化、宽带化和智能化已成为未来通信发展的方向,人类社会对电信业务从质量到业务种类都提出越来越高的要求,而接入网作为电信网的重要组成部分,连接本地交换机与用户,是整个电信网的毛细血管和瓶颈,实现数字化、宽带化和业务综合化的关键。 嵌入式系统是以应用为中心的硬件设计和面向应用的软件产品开发为基础的专用计算机系统,广泛应用于制造工业、过程控制、通信、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费产品等领域。

在嵌入式系统中,板上通信接口是指用于将各种集成电路与其他外围设备交互连接的通信通路或总线。下面将逐一说明常用的板上通信接口。

1. I2C总线

I2C总线是一种同步、双向、半双工的两线式串行接口总线。这里,半双工的含义是指在任意给定的时刻,只有一个方向上是可以通信的。I2C总线最早由Philips半导体公司于20世纪80年代研发面市。I2C最初的设计目标是为微处理器/微控制器系统与电视机外围芯片之间的连接提供简单的方法。I2C总线由两条总线组成:串行时钟线SCL和串行数据线SDA。SCL线负责产生同步时钟脉冲,SDA线负责在设备间传输串行数据。I2C总线是共享的总线系统,因此可以将多个I2C设备连接到该系统上。连接到I2C总线上的设备既可以用作主设备,也可以用作从设备。主设备负责控制通信,通过对数据传输进行初始化/终止化,来发送数据并产生所需的同步时钟脉冲。从设备则是等待来自主设备的命令,并响应命令接收。主设备和从设备都可以作为发送设备或接收设备。无论主设备是作为发送设备还是接收设备,同步时钟信号都只能由主设备产生。在相同的总线上,I2C支持多个主设备的同时存在。图2-26显示了I2C总线上主设备和从设备的连接关系。

嵌入式常用的通信协议

基于输入缓冲区和漏极开路晶体管(或者是集电极开路晶体管),可以构建I2C总线接口。当总线处于空闲状态的时候,漏极开路晶体管(或者是集电极开路晶体管)处于悬空状态,输出导线(SDA和SCL)为高阻态。为了使总线正常工作,应该使用上拉电阻,将两条总线都上拉到供电电压(TTL系列器件为+5V,CMOS系列器件为+3.3V)。上拉电阻通常取值为2.2K。使用上拉电阻,总线上输出导线处于空闲状态的时候,对应于高电平。

通过将设备地址线硬件连接到所需的逻辑电平上,可以分配I2C设备的地址。在嵌入式设备中,当设计嵌入式硬件的时候,需要分配各种I2C设备的地址并完成硬件连接。系统与I2C从设备通信的工作顺序如下:

(1) 主设备将总线上的时钟线(SCL)拉高到高电平。

(2) 当SCL线处于高电平逻辑(这是数据传输的启动条件)的时候,主设备将数据线(SDA)拉低到低电平。

(3) 主设备通过SDA线,将从设备地址(具有7位或10位宽度)发送到通信目的地址。从设备会在SCL线上产生时钟脉冲,用于同步位接收。需要说明的是,系统总是首先传输数据的MSB(最高位)。在时钟信号处于高电平期间,总线中的数据是有效的。

(4) 根据需求,主设备发送读位或写位(位值等于1意味着读操作,位值等于0意味着写操作)。

(5) 主设备等待从设备发出确认位。在发送读/写操作命令的同时,从设备的地址也会发送到总线上。对于连接到总线上的从设备,会将接收到的地址与分配的地址进行比较。

(6) 如果从设备接收到来自主设备的指令并且地址正确,那么从设备通过SDA线发送确认位(值为1)。

(7) 主设备接收到确认位之后,如果操作指令是向设备写入数据,就通过SDA线向从设备发送8位数据。如果操作指令是从设备读出数据,从设备将通过SDA线将数据发送给主设备。

(8) 对于写入操作,在字节传输结束之后,主设备等待从设备发送确认位;对于读出操作,在字节传输结束之后,主设备向从设备发送确认位。

(9) 当时钟线SCL处于逻辑高电平(表示停止)的时候,通过将SDA线拉高到高电平,主设备可以终止数据传输。

I2C总线支持三种不同的数据速率:标准模式(数据速率为100kb/秒,即100kbps)、快速模式(数据速率为400kb/秒,即400kbps)、高速模式(数据速率为3.4Mb/秒,即3.4Mbps)。第一代I2C设备设计所支持的数据速率只有100kbps,新一代I2C设备则能够以高达3.4Mbps的数据速率工作。

2. SPI总线

SPI总线是同步、双向、全双工的4线式串行接口总线,最早由Motorola公司提出。SPI是由“单个主设备+多个从设备”构成的系统。需要说明的是:在系统中,只要任意时刻只有一个主设备是处于激活状态的,就可以存在多个SPI主设备。为了实现通信,SPI共有4条信号线,分别是:

(1)主设备出、从设备入(Master Out Slave In,MOSI):由主设备向从设备传输数据的信号线,也称为从设备输入(Slave Input/Slave Data In,SI/SDI)。

(2)主设备入、从设备出(Master In Slave Out,MISO):由从设备向主设备传输数据的信号线,也称为从设备输出(Slave Output/Slave Data Out,SO/SDO)。

(3)串行时钟(Serial Clock,SCLK):传输时钟信号的信号线。

(4)从设备选择(Slave Select,SS):用于选择从设备的信号线,低电平有效。

图2-27显示了SPI总线上主设备和从设备的连接关系图。

嵌入式常用的通信协议

主设备负责产生时钟信号,并通过将相应从设备的从设备选择信号拉低为低电平,选通所需的从设备。在没有选通的时候,所有从设备的数据输出线MISO都悬空处于高阻态。

SPI总线上的串行数据传输是用户可配置的。SPI设备包含特定的寄存器组,可以保存所需的配置。串行外围设备的控制寄存器用于保存各种配置参数,比如器件的主/从选择、通信波特率的选择、时钟信号控制等。状态寄存器则用于保存各种通信条件的状态,实现所需的数据传输和数据接收。

SPI的工作是基于移位寄存器的;为了实现数据传输或数据接收,主设备和从设备包含了专用移位寄存器。移位寄存器的长度取决于具体设备,通常是8的整数倍。数据在从主设备传输到从设备的过程中,主设备移位寄存器中的数据从MOSI管脚移出,然后通过从设备的MOSI管脚,输入到从设备的移位寄存器中。与此同时,由从设备移位寄存器移位出来的数据,通过MISO管脚,输入到主设备的移位寄存器中。也就是说,主设备和从设备的移位寄存器构成了一个循环缓冲区。对于特定类型的器件,可以通过配置寄存器(比如,对于Motorola公司生产的68HC12型控制器,需要配置SPI控制寄存器的LSBF位),决定最先发送的数据位是最高位还是最低位。

与I2C总线相比,SPI总线更适于数据流传输。SPI的不足之处在于,SPI不支持数据确认机制。

3. UART

基于UART的数据传输是异步形式的串行数据传输。基于UART的串行数据传输不需要使用时钟信号来同步传输的发送端和接收端,而是依赖于发送设备和接收设备之间预定义的配置。对于发送设备和接收设备来说,两者的串行通信配置(波特率、单位字的位数、奇偶校验、起始位数与结束位、流量控制)应该设置为完全相同。通过在数据流中插入特定的比特序列,可以指示通信的开始与结束。当发送一个字节数据的时候,需要在比特流的开头加上起始位,并在比特流的末尾加上结束位。数据字节的最低位紧接在起始位之后。

起始位用于告知接收设备:数据字节将要到达接收端。然后,接收设备按照设定的波特率,选中其数据接收线。如果波特率是x比特/秒,那么每个比特可用的时隙是1/x秒。接收设备会精确地在比特可用时隙一半的位置,定时选中数据接收线。如果通信使用了奇偶校验功能,那么UART发送设备会在发送数据流中增加奇偶校验位(取值为1,表示传输比特流中含有奇数个1;取值为0,则表示传输比特流中含有偶数个1)。UART接收设备计算接收到的数据位的奇偶校验结果,并与接收到的奇偶校验位进行比较。UART接收设备丢弃掉接收比特流中的起始位、结束位、奇偶校验位,并将接收到的串行比特数据转换成字(比如,考虑8比特对应于1个字节的情况,接收到8比特,最先接收到的数据位是LSB,最后接收到的数据位是MSB)。

为了实现正确的通信,发送设备的数据传输线应该连接到接收设备的数据接收线上。图2-28显示了UART的连接图。

嵌入式常用的通信协议

除了串行数据传输功能以外,UART还可以为控制串行数据流提供硬件握手信号支持。很多半导体厂商都提供了相应的UART芯片。NaTIonal半导体公司生产的8250 UART是具有标准设置的UART,用于IBM PC的早期设计中。

如今,大多数微处理器/控制器都集成有UART功能,并为串行数据传输与接收提供内置式的指令支持。

4. 1-Wire接口

1-Wire接口是由Maxim Dallas半导体公司(首页为http://www.maxim-ic.com)开发的异步半双工通信协议,也称为Dallas 1-Wire®协议。其中,按照主-从通信模型,只使用单条信号线DQ实现通信。1-Wire总线的一个重要特征在于,该总线允许在信号线上传输能量。I2C从设备在信号线上使用内部电容器(其典型取值为800 pF)来驱动设备。1-Wire接口支持在总线上连接单个主设备以及一个或多个从设备。图2-29显示了1-Wire总线上主设备和从设备的连接关系图。

嵌入式常用的通信协议

每台1-Wire设备都具有全球唯一可识别的64位识别码信息,存储在设备内部。对于多台从设备连接到1-Wire总线上的情况,通过解读唯一的识别码,可以寻址总线上存在的各台独立设备。识别码由以下三个部分组成:8位的类别码、48位的序列号以及前56比特数据的8位CRC校验结果。与1-Wire从设备通信的具体流程如下:

(1) 主设备将复位脉冲发送到1-Wire总线上。

(2) 总线上的从设备通过确认脉冲予以回应。

(3) 主设备发送ROM命令(网络寻址命令,参数是设备的64位地址),从而寻址到需要发起通信的从设备。

(4) 主设备发送读/写命令,对从设备的内部存储器或寄存器进行读/写操作。

(5) 主设备将数据由从设备读出,或者是将数据写入从设备。

1-Wire总线上的所有通信都是由主设备发起的。其中,通信的最小间隔是时长为60微秒的时隙。复位脉冲占用8个时隙。在通信的开始阶段,主设备将1-Wire总线拉低到低电平,并持续8个时隙(即480 μs),从而发出复位脉冲。如果总线上存在从设备,而且已经准备好进行通信,那么从设备将通过确认脉冲来回应主设备;也就是说,从设备将1-Wire总线拉低到低电平,并持续1个时隙(即60 μs)。为了在1-Wire总线上写入位值1,需要总线主设备将总线拉低,其持续时间为1~15 μs,然后在该时隙的其余时间段释放总线。为了在总线上写入位值0,主设备需要将总线拉低,其持续时间至少为1个时隙(60 μs),最多为2个时隙(120 μs)。为了由从设备读出位值,主设备需要将总线拉低,并持续1~15 μs。为了响应主设备的读数据请求,如果从设备想要发送位值1,那么从设备只需要在该时隙的其余时间段释放总线;如果从设备想要发送位值0,那么从设备需要在该时隙的其余时间段将总线拉低。

5. 并行接口

板上并行接口(parallel interface)通常用于系统与外围设备之间的通信,其中,外围设备通过存储器映射到系统的主控端。只要嵌入式系统的主控处理器/控制器含有并行总线,支持并行总线的设备就可以直接连接到该总线系统上。外围设备与主控端之间具有控制信号接口,可以控制并行总线上的数据通信。这里,通信的控制信号包括读/写信号和设备选择信号。一般说来,外围设备具有设备选择线;只有当主控处理器选通该线的时候,该设备才是有效的。数据传输的方向可以是从主控端到外围设备,也可以是从外围设备到主控端;这是通过读和写控制信号线进行控制的。只有主控处理器能够控制读控制信号和写控制信号。一般说来,外围设备通过存储器映射到主控处理器,从而可以访问分配的地址范围。此时,设备需要使用地址译码电路来产生芯片选择信号。当处理器选择的地址位于设备指定范围内的时候,译码电路对芯片选择线进行触发,从而激活设备。然后,处理器可以使能相应的控制线(分别是RD\与WD\),从而由设备读出数据,或者是向设备写入数据。为了实现并行通信,系统需要严格遵循时序规范。前面已经提到过,并行通信是由主控处理器启动的。如果某外围设备想要对通信进行初始化,那么可以向处理器发出中断,告知相关信息。为了实现上述功能,设备的中断线需要连接到处理器的中断线上,并且主控处理器需要触发相应的中断。需要说明的是,主控处理器的数据总线宽度决定了并行接口的宽度,可以是4位、8位、16位、32位、64位等。设备支持的总线宽度应该与主控处理器完全相同。图2-30显示了并行接口总线上主控处理器和设备的连接关系图。

嵌入式常用的通信协议

技术专区

关注电子发烧友微信

有趣有料的资讯及技术干货

下载发烧友APP

打造属于您的人脉电子圈

关注发烧友课堂

锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

有没有用STM32F103做过MAX30100模块的心率检测 大神分享下?

发表于 2018-04-12 16:26 44次阅读
有没有用STM32F103做过MAX30100模块的心率检测  大神分享下?

嵌入式stm32之IAR中eww、ewp、ewd···等各文件的含义和用途

发表于 2018-04-12 13:15 86次阅读
嵌入式stm32之IAR中eww、ewp、ewd···等各文件的含义和用途

嵌入式stm32实用的排序算法 - 交换排序

发表于 2018-04-12 13:14 99次阅读
嵌入式stm32实用的排序算法 - 交换排序

开发一款用于某单板上的特定功能模块芯片

作为一个“专家”在评估复杂封装及芯片时最害怕的一件事是:需求经常在变、接口经常在变,因为这又得找其它...

发表于 2018-04-12 08:47 291次阅读
开发一款用于某单板上的特定功能模块芯片

探讨嵌入式硬件电源设计方面的注意事项

在正常测试时就应该首先进行第一步测试来确定问题所在,此时需要用示波器来测量供电VCC和复位输出的电压...

发表于 2018-04-11 17:49 312次阅读
探讨嵌入式硬件电源设计方面的注意事项

物联网嵌入式系统的应用及特征

物联网不仅仅提供了传感器的连接,其本身也具有智能处理的能力,能够对物体实施智能控制,这就是我们今天所...

发表于 2018-04-11 17:44 50次阅读
物联网嵌入式系统的应用及特征

NXP MPC574xP系列32位MCU马达控制...

NXP公司的MPC574xP系列是32位嵌入Power Architecture MCU,满足汽车和...

发表于 2018-04-11 17:32 30次阅读
NXP MPC574xP系列32位MCU马达控制...

智能家居中隐藏的嵌入式应用有哪些

传统的家居智能控制系统一般采用有线方式来组建,如同轴电缆、USB、CAN总线等。但有线网络具有布线麻...

发表于 2018-04-11 17:15 35次阅读
智能家居中隐藏的嵌入式应用有哪些

MC9S12DG128 的体系结构分析 μC/...

微控制器内部不同的存储器占用不同的存储空间,也就是说,不同的地址范围,它们均占据特定的地址空间,这些...

发表于 2018-04-11 16:28 68次阅读
MC9S12DG128 的体系结构分析  μC/...

嵌入式DDR布线分析 DDR信号布线介绍

嵌入式 DDR(Double Data Rate,双数据速率)设计是含DDR的 嵌入式 硬件设计中最...

发表于 2018-04-11 15:33 20次阅读
嵌入式DDR布线分析 DDR信号布线介绍

2017年全球互联网汽车出货量占比_2022年互...

截至2017年,通用,宝马,奥迪和梅赛德斯奔驰将领导全球互联汽车市场。随着欧盟的eCall授权和在中...

发表于 2018-04-11 15:28 47次阅读
2017年全球互联网汽车出货量占比_2022年互...

新手如何入门嵌入式软件开发

发表于 2018-04-11 15:25 118次阅读
新手如何入门嵌入式软件开发

ACRN之InterruptWindow功能正确...

Intel提供了一种InterruptWindow机制来解决这个问题,该机制的原理是:配置了Inte...

发表于 2018-04-11 09:27 137次阅读
ACRN之InterruptWindow功能正确...

【下载】《构建嵌入式LINUX系统(第二版)》

发表于 2018-04-10 18:00 561次阅读
【下载】《构建嵌入式LINUX系统(第二版)》

嵌入式Linux系统的7个重要模块

嵌入式Linux系统--命令行,即Shell是操作系统的重要部分,当然也包括嵌入式Linux系统。在...

发表于 2018-04-10 10:38 102次阅读
嵌入式Linux系统的7个重要模块

在嵌入式Linux上运行一个最简单的“Hello...

最后发现目标板支持FTP服务器,总数找到一个救命稻草,不过很可惜,用户密码未知,问了中间厂商,用户和...

发表于 2018-04-10 10:36 96次阅读
在嵌入式Linux上运行一个最简单的“Hello...

明远智睿 EK140P全功能板手册

发表于 2018-04-09 16:09 93次阅读
明远智睿 EK140P全功能板手册

基于ARM的嵌入式最小系统的架构研究

随着嵌入式相关技术的迅速发展, 嵌入式系统的功能越来越强大,应用接口更加丰富,根据实际应用的需要设计...

发表于 2018-04-09 13:38 48次阅读
基于ARM的嵌入式最小系统的架构研究

基于静态二进制分析的一种通信协议逆向解析方法

ICS使用的软件种类繁杂,在实现结构上也是千差万别,有些厂商在设计软件时并没有严格地遵循模块化设计...

发表于 2018-04-09 10:02 595次阅读
基于静态二进制分析的一种通信协议逆向解析方法

嵌入式音频系统设计(硬件:S3C2410+UDA...

近几年, 嵌入式 数字音频产品受到越来越多消费者的青睐。在MP3、手机等消费类电子产品中,人们对于这...

发表于 2018-04-09 09:56 41次阅读
嵌入式音频系统设计(硬件:S3C2410+UDA...

嵌入式实时操作系统:RTOS和PC上的区别

通用操作系统中的任务调度策略一般采用基于优先级的抢先式调度策略,对于优先级相同的进程则采用时间片轮转...

发表于 2018-04-09 09:38 149次阅读
嵌入式实时操作系统:RTOS和PC上的区别

PowerVR 2NX NNA实现最高效率的解决...

2017年9月21日 ─ Imagination Technologies 宣布推出完整、独立式的硬...

发表于 2018-04-09 07:16 34次阅读
PowerVR 2NX NNA实现最高效率的解决...

嵌入式Linux内存管理的知识汇总

这个内存管理的知识点还真的需要我们专门的去理解一下,今天大家一起来学习学习嵌入式Linux内存管理的...

发表于 2018-04-09 05:58 44次阅读
嵌入式Linux内存管理的知识汇总

嵌入式操作系统是什么_嵌入式操作系统有哪些

嵌入式操作系统(Embedded OperatingSystem,简称:EOS)是指用于嵌入式系统的...

发表于 2018-04-08 14:36 177次阅读
嵌入式操作系统是什么_嵌入式操作系统有哪些

嵌入式stm32IAR中eww、ewp、ewd···等各文件的含义和用途

发表于 2018-04-08 13:19 203次阅读
嵌入式stm32IAR中eww、ewp、ewd···等各文件的含义和用途

优化嵌入式软件的七个技巧,不同应用程序的优化需求...

如果没有合适的测量工具,优化一个系统是很困难的。举例来说,如果不使用一种精确的方法来测量系统和微控制...

发表于 2018-04-08 11:21 175次阅读
优化嵌入式软件的七个技巧,不同应用程序的优化需求...

基于DAC7714的嵌入式激光跟踪仪设计

在基于AT91RM9200处理器的某嵌入式激光跟踪仪中,为了实现目标的快速、平稳跟踪,需要控制两路电...

发表于 2018-04-08 11:03 46次阅读
基于DAC7714的嵌入式激光跟踪仪设计

嵌入式学习的学习规划介绍

太多细节未说明,可根据实际情况调整。重点在于1、3,不必完全按照顺序作。对于学习c++,理由是c++...

发表于 2018-04-06 19:09 126次阅读
嵌入式学习的学习规划介绍

一款随Linux内核代码维护的性能诊断工具

Perf Event 是一款随 Linux 内核代码一同发布和维护的性能诊断工具,由内核社区维护和发...

发表于 2018-04-06 09:23 1330次阅读
一款随Linux内核代码维护的性能诊断工具

基于DevOps工具链设计过程及前后效果对比

某项目是为配合大视频运维推出的一个项目,需求和任务管理停留在原始的ts上,项目依托svn进行代码管理...

发表于 2018-04-05 09:08 1629次阅读
基于DevOps工具链设计过程及前后效果对比

一文看懂嵌入式app和开发式app的区别是什么

传统意义上来说,APP这个简写的英文名称之所以会如此流行,主要是因为移动互联网的快速崛起。移动互联网...

发表于 2018-04-04 09:38 235次阅读
一文看懂嵌入式app和开发式app的区别是什么

低成本开发系统现在正处于物联网期望膨胀峰值期

预测物联网平台将在一年内充斥大众市场,在接下来的二至五年内,差异化或专业化的高精度传感器和模拟信号链...

发表于 2018-04-04 09:04 1620次阅读
低成本开发系统现在正处于物联网期望膨胀峰值期

物联网连接、处理、感应和安全功能于一身

一款简化物联网(IoT)产品设计的一体化软件工具套件。全新ModusToolbox™套件在业界熟悉且...

发表于 2018-04-04 08:48 1988次阅读
物联网连接、处理、感应和安全功能于一身

嵌入式STM32F412擦除内部FLASH时间过长

发表于 2018-04-03 13:24 226次阅读
嵌入式STM32F412擦除内部FLASH时间过长

对于刚入门ARM嵌入式的一些建议

对于学硬件的人而言,必须先对硬件的基本使用方法有感性的认识,更必须深刻认识该硬件的控制方式.

发表于 2018-04-03 11:36 222次阅读
对于刚入门ARM嵌入式的一些建议

考一考你!这三道嵌入式Linux题你会吗?来做一...

题一: 解释命令ls -a | more具体含义. 思考过后,再到下方寻找答案 题二: GCC -g...

发表于 2018-04-03 11:22 147次阅读
考一考你!这三道嵌入式Linux题你会吗?来做一...

嵌入式选择用C语言开发的原因

面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传...

发表于 2018-04-03 10:54 145次阅读
嵌入式选择用C语言开发的原因

【寻找IoT达人 第一期】LiteOS对接云平台,报名开启!

发表于 2018-04-03 10:21 200次阅读
【寻找IoT达人 第一期】LiteOS对接云平台,报名开启!

12种最热门的开源项目,你都知道哪些?

GitHub 上最热门的开源项目有哪些,又有哪些新的项目挤进热门榜单了呢,一起来看看。

发表于 2018-04-03 08:38 1203次阅读
12种最热门的开源项目,你都知道哪些?

示波器协议解码的变化 可直接破解30种通信协议

示波器从模拟示波器发展到数字示波器,带来了许多大的改变,例如信号采集、带宽、采样率、屏显等。同样,这...

发表于 2018-04-03 08:38 72次阅读
示波器协议解码的变化 可直接破解30种通信协议

采用Zynq UltraScale+MPSoC进...

ZCU104 评估套件可帮助设计人员为监控、高级驾驶员辅助系统 (ADAS)、机器视觉、增强实境 (...

发表于 2018-04-03 08:30 2324次阅读
采用Zynq UltraScale+MPSoC进...

AMD不断扩展ZEN架构处理器平台

在此基础上,AMD公司下一里程碑事件就是把目前建立的这些优势和能力,包括刚才讲到基于ZEN架构处理器...

发表于 2018-04-02 09:38 300次阅读
AMD不断扩展ZEN架构处理器平台

系统关键技术通用评估平台,轻松集成FPGA设计

系统设计有时十分复杂,需要充分了解许多不同的元件,如果解决方案的各环节可以进行原型制作并快速演示,就...

发表于 2018-04-02 09:33 2072次阅读
系统关键技术通用评估平台,轻松集成FPGA设计

学习嵌入式应用层开发的几大阶段

变成高手,你还要进一步学习内核和系统,内容包括计算机系统结构和汇编,linux内核编程,linux内...

发表于 2018-04-02 09:17 249次阅读
学习嵌入式应用层开发的几大阶段

2018中国IC领袖峰会纪实报道:在AI时代,中...

从制造能力来说,中国半导体制造和国外还存在1到2代的差距。这也是中国IC设计业主要使用外部资源的原因...

发表于 2018-04-02 08:56 373次阅读
2018中国IC领袖峰会纪实报道:在AI时代,中...

自制物联网智能设备-手机远程控制两路电机的转向和...

导读: 利用物联网开关与51单片机通信,然后控制两个电机的转向和转速。 01准备材料 物联网开关、5...

发表于 2018-04-01 09:11 98次阅读
自制物联网智能设备-手机远程控制两路电机的转向和...

使用FreeRTOSViewer跟踪调试Free...

本文介绍一种基于 MPLAB X IED+Harmony 下使用 FreeRTOSViewer 工具...

发表于 2018-04-01 08:19 1058次阅读
使用FreeRTOSViewer跟踪调试Free...

Linux设备驱动程序与编写应用程序的本质区别

Linux驱动程序的开发与应用程序的开发有很大的区别。

发表于 2018-03-31 08:18 981次阅读
Linux设备驱动程序与编写应用程序的本质区别

stm32如何制作一个读取U盘文件系统的工程

发表于 2018-03-30 15:29 403次阅读
stm32如何制作一个读取U盘文件系统的工程

嵌入式操作系统都基于GCC进行源码编译

系统头文件是指C语言本身和操作系统相关的头文件。在使用-v选项获取系统头文件路径时,必须后面带一个有...

发表于 2018-03-30 13:57 157次阅读
嵌入式操作系统都基于GCC进行源码编译

为5G做好准备,两种5G技术的故事

“5G代表了自动驾驶体验所需的基础技术,”联电公司(UMC)市场部副总裁Steven Liu表示。 ...

发表于 2018-03-29 15:47 320次阅读
为5G做好准备,两种5G技术的故事

Java、云计算、嵌入式等史上最全技术知识图谱秘...

28张,张张经典、实用、全面,比如Java架构师图谱,微服务架构秘籍,阿里巴巴常用小框架等等。

发表于 2018-03-29 14:18 549次阅读
Java、云计算、嵌入式等史上最全技术知识图谱秘...

STM32内存管理以及STM32中的堆栈

这个是MDK编译之后能够得到的每个段的大小,也就能得到占用相应的FLASH和RAM的大小,但是还有两...

发表于 2018-03-29 13:45 384次阅读
STM32内存管理以及STM32中的堆栈

儒卓力首次到深圳参展业界盛事CITE 2018

全球电子元器件分销商兼亚洲电子供应链中的知名厂商儒卓力(Rutronik Elektronische...

发表于 2018-03-28 14:45 1074次阅读
儒卓力首次到深圳参展业界盛事CITE 2018

嵌入式神经网络赋予人工智能视觉、听觉和分析能力

随着专用的处理器和软件的崛起,为开发具备人工智能的嵌入式系统敞开了大门。

发表于 2018-03-28 10:22 685次阅读
嵌入式神经网络赋予人工智能视觉、听觉和分析能力

学嵌入式能不能只用C写程序?

想深入链接C语言的函数是如何调用的,参数是如何传递的,想了解指针的本质、函数名的本质,就要深入汇编级...

发表于 2018-03-26 08:34 279次阅读
学嵌入式能不能只用C写程序?

嵌入式Wi-F的来源以及与普通Wi-Fi的区别

现在我们可以这样来看,从硬件层面上看,WIFI设备与CPU通信是通过USB接口的,与其他WIFI设备...

发表于 2018-03-24 11:18 1556次阅读
嵌入式Wi-F的来源以及与普通Wi-Fi的区别

基于CK802安全内核开发出面向物联网安全的商业...

中天微积极布局AI领域的嵌入式CPU IP研发与推广,其针对AI领域的新一代CPU内核系列将于近期推...

发表于 2018-03-24 10:27 532次阅读
基于CK802安全内核开发出面向物联网安全的商业...

学习嵌入式Linux内存管理的知识

malloc实际上,并不是用户调用malloc后马上对物理地址与虚拟地址之间进行映射,只有在用户对...

发表于 2018-03-23 13:35 309次阅读
学习嵌入式Linux内存管理的知识

整理总结一份属于自己的编码风格

· Lib:引用的库文件。 一个工程一定要包含一个main.c文件,只用来存放main函数。其余函...

发表于 2018-03-23 11:48 262次阅读
整理总结一份属于自己的编码风格

嵌入式Linux开发工程师的成长过程

系统工程师夹在驱动工程师及应用工程师这两个层次之间,他要对系统有一个整体的概念,系统主要是指操作系统...

发表于 2018-03-23 11:39 379次阅读
嵌入式Linux开发工程师的成长过程

移动和嵌入式设备上也能直接玩机器学习?

最近,机器学习(ML)话题大热,Arm也推出神经网络机器学习软件 Arm NN。这是一项关键技术,可...

发表于 2018-03-22 16:36 638次阅读
移动和嵌入式设备上也能直接玩机器学习?

嵌入式Linux工具之GCC常用编译选项

“-I dir”选项可以在头文件的搜索路径列表中添加 dir 目录。由于 Linux 中头文件都默认...

发表于 2018-03-22 11:16 322次阅读
嵌入式Linux工具之GCC常用编译选项

开发板设计中CMOS输入可能发生的耗电问题

想象CMOS输入属于一个栅极驱动器的情况,该栅极驱动器控制一个高功率MOSFET/IGBT,后者在应...

发表于 2018-03-22 09:09 1315次阅读
开发板设计中CMOS输入可能发生的耗电问题

开发高可靠性嵌入式系统的7个易操作且可以长久使用...

对嵌入式工程师来说一个很大的好处是,我们的IDE和工具链可以自动产生应用程序或内存空间校验和(Che...

发表于 2018-03-21 08:37 1226次阅读
开发高可靠性嵌入式系统的7个易操作且可以长久使用...

CX5010嵌入式控制器:高性能,多接口

在控制方面,华恒公司全面应用了Beckhoff的自动化产品:整个工厂都配备了用于控制的面板型PC和...

发表于 2018-03-20 16:31 444次阅读
CX5010嵌入式控制器:高性能,多接口

嵌入式Linux的入门,开发嵌入式需要大量辅助软...

熟练掌握C/C++,熟悉Linux/Windows操作系统,对于OS的软、硬件资源的分配、任务调度,...

发表于 2018-03-20 11:37 515次阅读
嵌入式Linux的入门,开发嵌入式需要大量辅助软...

约会“可交互的高端物联网嵌入式平台——QFN-3...

作者:上海润欣科技股份有限公司创研社 导语 QFN-3由Fortune、NXP、Qualcomm共同...

发表于 2018-03-20 09:49 318次阅读
约会“可交互的高端物联网嵌入式平台——QFN-3...

使用MaxCompute阿里大数据计算方法详解

基于MaxCompute搭建社交好友推荐系统,使用MaxCompute阿里的大数据计算的方法可以做哪...

发表于 2018-03-19 09:53 1239次阅读
使用MaxCompute阿里大数据计算方法详解

Linux驱动工程面试必问知识点

一看就知道,找工作用的,主要想从事驱动方面的开发工作,当然追求linux的道路还很漫长,先说说面试,...

发表于 2018-03-17 10:09 655次阅读
Linux驱动工程面试必问知识点

MicroBlaze软核处理器简介

MicroBlaze 是高度可配置的 IP 核,支持 70 多种配置选项。一些重要的配置选项为指令/...

发表于 2018-03-16 16:10 482次阅读
MicroBlaze软核处理器简介

AMD嵌入式发力边缘计算

自2016年开始,一条沉睡的巨龙 AMD 开始慢慢苏醒。也正是因为GPU时代的到来,让AMD在过去一...

发表于 2018-03-16 15:15 106次阅读
AMD嵌入式发力边缘计算

II嵌入式的EPA通信协议与模型设计

μC/OS-II是一种占先机制的实时多任务嵌入式操作系统,具有源码公开、可移植、可固化、可裁剪等特点...

发表于 2018-03-16 14:24 123次阅读
II嵌入式的EPA通信协议与模型设计

嵌入式Linux驱动开发基础总结(下篇)

14, 字符设备驱动程序设计基础主设备号和次设备号(二者一起为设备号): 一个字符设备或块设备都有一...

发表于 2018-03-15 09:17 455次阅读
嵌入式Linux驱动开发基础总结(下篇)

嵌入式Linux驱动开发基础总结(上篇)

1, linux驱动一般分为3大类:* 字符设备 * 块设备 * 网络设备2, 开发环境构建:* 交...

发表于 2018-03-15 09:14 602次阅读
嵌入式Linux驱动开发基础总结(上篇)

感受智能汽车世界的最新科技是多么酷炫

慕展作为行业盛会,果然名不虚传,现场人头攒动,十分热闹!随着汽车的大量普及,人们对车辆的智能性以及安...

发表于 2018-03-15 09:08 687次阅读
感受智能汽车世界的最新科技是多么酷炫

低功耗嵌入式供水终端漏水监测系统及组网设计

监控节点主要包括嵌入式工控模板、超声流量检测模块、热释电人体探测模块、无线收发电路、声光报警电路、电...

发表于 2018-03-14 14:10 274次阅读
低功耗嵌入式供水终端漏水监测系统及组网设计

与一线Linux嵌入式开发工程师的对话

陈工程师一直做Linux的嵌入式开发,作为在开发一线的工程师,他对很多问题的看法可能更切合实际需求,...

发表于 2018-03-14 07:43 360次阅读
与一线Linux嵌入式开发工程师的对话

相对于互联网而言,物联网的本质在于“万物相连”

在最低层的硬件平台之上,有物联网操作系统内核和外围功能模块,加上集成开发环境,这些子系统之间相互配合...

发表于 2018-03-13 10:09 749次阅读
相对于互联网而言,物联网的本质在于“万物相连”

Qualcomm扩展嵌入式计算产品组合将顶级处理...

2018年2月21日,圣迭戈——QualcommIncorporated(NASDAQ: QCOM)...

发表于 2018-03-13 09:56 78次阅读
Qualcomm扩展嵌入式计算产品组合将顶级处理...

瑞萨Renesas Synergy™ 一站式解...

Renesas Synergy™ 平台的完整一站式解决方案和Synergy™ Gallery,不仅有...

发表于 2018-03-12 14:45 603次阅读
 瑞萨Renesas Synergy™ 一站式解...

嵌入式硬件工程师的年终总结:生活虐我千百遍,我待...

又到年底总结了,我自问:2017年,你成长了吗?去年九月,我以年轻还有无限可能的名义来到了北京,我觉...

发表于 2018-03-12 10:33 541次阅读
嵌入式硬件工程师的年终总结:生活虐我千百遍,我待...

操作系统的内核都是用C语言写的_这不全是嵌入式选...

以一个人从A地到B地为例,面向过程就是需要规划路线,了解路况,自己做好一系列的准备;而面向对象就是坐...

发表于 2018-03-11 20:03 304次阅读
操作系统的内核都是用C语言写的_这不全是嵌入式选...

一位以linux为例的嵌入式大神的学习心得总结(...

嵌入式分为广义和狭义两种。广义的嵌入式就是片上系统(system on a chip),包括单片机、...

发表于 2018-03-09 16:27 499次阅读
一位以linux为例的嵌入式大神的学习心得总结(...

指纹识别在嵌入式IoT系统中的实现和设计要点

作者:上海润欣科技股份有限公司创研社 前言 随着指纹识别在智能手机上面的普及,指纹识别技术在越来越多...

发表于 2018-03-09 10:08 889次阅读
指纹识别在嵌入式IoT系统中的实现和设计要点

三种常见嵌入式设备通信协议

嵌入式设备与PC通讯的通信协议设计经验 嵌入式设备在运行中需要设置参数,这个工作经常由PC机来实现。

发表于 2018-03-06 10:06 907次阅读
三种常见嵌入式设备通信协议

还不错!装有移动设备和嵌入式设备的神经网络机器学...

Arm宣布推出神经网络机器学习(ML) 软件 Arm NN,这只是第一步,我们还计划添加其他高级神经...

发表于 2018-03-06 09:26 474次阅读
还不错!装有移动设备和嵌入式设备的神经网络机器学...

网民对嵌入的了解

人觉得其实互联网中真正有技术含量的就是后台开发,包括集群架构与优化,分布式系统和云计算等,

发表于 2018-03-05 16:28 99次阅读
网民对嵌入的了解

三道嵌入式Linux复习题

题一:在大多数linux发行版本中,以下哪个属于块设备 (block devices) ? a....

发表于 2018-03-05 15:28 134次阅读
三道嵌入式Linux复习题

《通过SensorTile了解嵌入式系统》

SensorTile包括5个实用的MEMS传感器,

发表于 2018-03-05 14:32 143次阅读
《通过SensorTile了解嵌入式系统》

嵌入式Linux内核编译步骤和经验

不过这应该也不是必须的,因为我在我的Fedora 13上(其自带的内核版本是2.6.33.3),就下...

发表于 2018-03-05 14:26 648次阅读
嵌入式Linux内核编译步骤和经验

嵌入式的由来和发展

对嵌入式的发展起到至关重要的人物Jim Ready

发表于 2018-03-05 13:49 176次阅读
嵌入式的由来和发展

嵌入式驱动的构造分析总结

在Linux系统上编写驱动程序,说简单也简单,说难也难。难在于对算法的编写和设备的控制方面,是比较让...

发表于 2018-03-03 09:23 552次阅读
嵌入式驱动的构造分析总结

嵌入式开发中可能会碰到的一些问题

1、单片机等小的外部总线单片机等小的MCU一般都有外部总线,可以用来接真彩LCD(异步总线接口TFT...

发表于 2018-03-02 14:04 561次阅读
嵌入式开发中可能会碰到的一些问题

嵌入式Linux复习题精华

题一: led驱动编写有几种方式?思考过后,再到下方寻找答案 题二: bootloader和uboo...

发表于 2018-03-02 11:21 460次阅读
嵌入式Linux复习题精华

嵌入式硬件电路设计基础知识梳理

今天就说说硬件电路设计方面的几个注意事项,首先,咱们了解下嵌入式的硬件构架。

发表于 2018-03-01 15:16 566次阅读
嵌入式硬件电路设计基础知识梳理

一文了解stm32使用DMA模块的相关操作

CPU最重要的工作室进行数据运算,从加减乘除到一些高级的运算,包括浮点、积分、微分、FFT等。CPU...

发表于 2018-02-27 11:18 3374次阅读
一文了解stm32使用DMA模块的相关操作

你知道嵌入式c中各变量存储位置吗

在进行C/C++编程时,需要程序员对内存的了解比较精准。经常需要操作的内存可分为以下几个类别: ...

发表于 2018-02-24 13:53 739次阅读
你知道嵌入式c中各变量存储位置吗

如何定制嵌入式Linux发行版

便宜的物联网板的普及意味着它不仅会控制应用程序,还会控制整个软件平台。 那么,如何构建一个针对特定用...

发表于 2018-02-24 10:37 395次阅读
如何定制嵌入式Linux发行版

嵌入式设计开发中的常见问题小总结

单片机等小的外部总线单片机等小的MCU一般都有外部总线,可以用来接真彩LCD(异步总线接口TFT显示...

发表于 2018-02-24 10:23 1434次阅读
嵌入式设计开发中的常见问题小总结