产品选型

国内外单片机 单片机基础知识大总结:全面解读单片计算机国内外发展现状

小编 2024-11-24 产品选型 23 0

单片机基础知识大总结:全面解读单片计算机国内外发展现状

/**/

第1章 单片机基础知识

本章教学基本要求

1.掌握单片机的定义,了解国内外单片机的发展及现状。

2.掌握单片机的组成及功能。

3.掌握单片机常用术语。

4.了解单片机的主要特点及应用场景。

5.掌握单片机总线的特点。

重点与难点

1.单片机的组成。

2.单片机总线的组成及特点。

1.1 单片机概述

单片微型计算机(Single Chip Microcomputer, SCM)简称单片机,利用大规模集成电路技术把中央处理单元(Center Processing Unit, CPU)、数据存储器(RAM)、程序存储器(ROM)及其他I/O接口部件集成在一块芯片上,构成一个最小的计算机系统。根据单片机在不同应用场合所承担的主要功能,有微控制器(Micro Controller Unit, MCU)和微处理器(Micro Processor Unit, MPU)之分,二者主要是计算能力有差异。MCU通常运行较为单一的任务,执行对硬件设备的管理/控制功能,对运算处理能力要求不高;MPU通常有一个计算功能强大的CPU,能够运行比较复杂的、运算量大的程序和任务,通常需要大容量的存储器。随着单片机技术的发展,其应用领域越来越广泛,单片机通常分为专用型和通用型。

专用型:指用途比较专一,出厂时程序已经一次性烧写好、不能再修改的单片机。专用型单片机通常采用大批量生产,成本很低,如果达不到足够的批量,成本反而会高。

通用型:指可由开发人员设定其功能的单片机。这种单片机应用于不同的接口电路,编写不同的应用程序就可实现不同的功能,其应用十分广泛。一般所说的单片机都是指通用型单片机。

1.1.1 单片机的发展

1946年第一台电子计算机诞生至今,微电子技术和半导体技术已有长足发展,芯片从电子管、晶体管发展到集成电路、大规模集成电路,现在一块芯片上可以集成几千万甚至上亿只晶体管,功能和性能显著增强。特别是近20年,随着通信技术、网络和图形图像处理技术的飞速发展,单片机在工业、科研、教育、国防和航空航天等领域获得了广泛的应用,单片机技术已经是一个国家现代科技水平的重要标志。

1.国外单片机发展

1976年Intel公司推出了8位的MCS-48单片机,具有体积小、功能较全、价格低的特点,为单片机的发展奠定了基础,成为了单片机发展史上重要的里程碑。在MCS-48的带领下,国外多家半导体公司相继研制和发展了自己的单片机,如Intel公司的MCS-51系列,Motorola公司的6801和6802系列,Rockwell公司的6501及6502系列等。随着技术的提升,后续各大国外公司研发的单片机大多集成了CPU、RAM、ROM、数目不等的I/O接口、多个中断源,甚至还有一些带有A/D转换器,功能越来越强大,RAM和ROM的容量也越来越大,寻址空间也越来越大,促使单片机在多个领域得到了广泛应用。

1982年以后,16位单片机问世,代表产品是Intel公司的MCS-96系列,16位单片机比起8位机,数据宽度增加了一倍,实时处理能力更强,主频更高,集成度达到了12万只晶体管,RAM增加到了232B,ROM则达到了8KB,并且有8个中断源,同时配置了多路A/D转换通道、高速I/O处理单元,适用于更复杂的控制系统。

1985年,Roger Wilson和Steve Furber设计了第一代32位的处理器,用它设计了一台RISC(Reduced Instruction Set Computing,精简指令集计算)计算机,简称ARM(Acorn RISC Machine),这也是ARM这个名字的由来。ARM内核主要有ARM7、ARM9、ARM10、ARM11。

2004年,ARM公司的经典处理器ARM11以后的产品改用Cortex命名,并分成A、R和M三类,旨在为各种不同的市场提供服务。

2.国内单片机发展

国内微电子技术和半导体技术起步较晚,整体发展与国外还有一定差距。20世纪80年代初,北京工业大学电子厂开始了TP801单板机(将微处理器、一定容量的程序/数据存储器、输入/输出接口、辅助电路通过总线全部安装在一块印制电路板上的单板式微型计算机)开发热潮,利用国外的微处理器Z80实现了信息输入和显示。同期,上海和江苏等地开发了MCS-51的单片机开发系统。1986年10月,复旦大学举行了第一次全国单片机学术交流会,这标志了我国单片机事业的开始,也推动了我国在CPU核心技术上的研究工作。随着国际形势的重大变化,我国的科技工作者认识到了微电子产业在国民经济建设和国家安全中的重要性,进而加速进行微处理器核心技术的研发。2002年8月10日诞生的“龙芯一号”是我国首枚拥有自主知识产权的通用高性能微处理芯片。“龙芯一号”是一颗32位的处理器,主频达到266MHz,采用了0.18μm CMOS工艺制造,具有良好的低功耗性,平均功耗为0.5W,在片内提供了一种特别设计的硬件机制,可以抵抗缓冲区溢出类攻击。近20年来,我国出现了较多知名的MCU制造商,如中颖电子、北京君正、东软载波、兆易创新等,分别研发了具有自主知识产权的8位、16位、32位和64位的通用和专用处理器,其产品在家电、电网、交通、工业、通信及网络等领域得到了广泛应用,这也进一步促进了我国在单片机核心技术领域的快速发展。

1.1.2 单片机的硬件组成

单片机的硬件主要由中央处理单元(Central Processing Unit, CPU)、存储器(RAM和ROM)、I/O接口及总线组成,如图1-1所示。

图1-1 单片机的硬件组成

图1-2 通用计算机的硬件组成

单片机是单芯片式微型计算机,与通用计算机(图1-2)相比,自身不带软件,没有输入/输出(I/O)设备。简单来讲,单片机是将多种功能部件集成到一块芯片上,而通用计算机是一台机器,是一套硬件系统的集合。单片机的组成部分介绍如下。

1.中央处理器

中央处理器具有算术运算、逻辑运算和控制操作的功能,是单片机或通用计算机的核心部分。它主要由3部分组成:算术逻辑单元、寄存器组、控制器。

① 算术逻辑单元(Arithmetic Logic Unit, ALU)。用来执行基本的算术运算和逻辑运算。

② 寄存器(Register)组。CPU中有多个寄存器,用来存放操作数、中间结果以及反映运算结果的状态标志位等。

③ 控制器(Control Unit)。控制器具有指挥整个系统操作的功能。它按一定的顺序从存储器中读取指令,进行译码,在时钟信号的控制下,发出一系列的操作命令,控制CPU以及整个系统有条不紊地工作。

2.存储器

存储器(程序/数据存储器)的主要功能是存放程序和数据,程序是单片机或通用计算机操作的依据,数据是单片机或通用计算机操作的对象。不管是程序还是数据,在存储器中都用二进制的“0”或“1”表示,统称信息。为实现自动计算,这些信息必须预先放在存储器中。存储器由寄存器组成,可以看成一个寄存器堆。存储器被划分成许多小单元,称为存储单元。每个存储单元相当于一个缓冲寄存器。为了便于存入和取出,每个存储单元必须有一个固定的地址,称为单元地址,单元地址用二进制编码表示。每个存储单元的地址只有一个,固定不变,而存储在其中的信息可以是二进制的“0”或“1”组合的任何编码。为了减少存储器向外引出的地址线,存储器内部自带地址译码器。向存储单元存放或取出信息,都称为访问存储器。访问存储器时,先由地址译码器将送来的单元地址进行译码,找到相应的存储单元,再由读/写控制电路根据送来的读/写命令确定访问存储器的方式,完成读出或写入操作。

3.总线

总线是单片机把各部分有机地连接起来的一组导线,是各部分之间进行信息交换的公共通道。在单片机中,连接CPU、存储器和各种I/O设备并使它们之间能够相互传送信息的信号线和控制线统称总线。总线包括地址总线(Address Bus, AB)、数据总线(Data Bus, DB)和控制总线(Control Bus, CB)。

地址总线:负责传输数据的存储位置或I/O接口中寄存器的地址编号的一组信号线称为地址总线。它传送CPU发出的地址,以便选中CPU所寻址的存储单元或I/O接口(一个I/O接口有1个或几个端口地址),地址总线是单向的,如图1-1所示。如果单片机的地址总线有20位,用A0~A19表示,所以可寻址的存储单元个数为220=1M(1M=1024×1024);MCS-51单片机对外部扩展的地址总线为16位,用A0~A15表示,可寻址的存储单元或I/O端口个数为216=64K(1K为1024)。

数据总线:负责传输数据的一组信号线称为数据总线。数据可以由CPU向存储器或I/O接口发送,也可以由存储器或I/O接口向CPU传送,因此数据总线是双向的。MCS-51单片机对外部扩展的数据总线是8位的,用D0~D7表示,即字长为8位。通常所说的多少位CPU,是指该CPU内部数据总线的位数。

控制总线:在传输与交换数据时起控制作用的一组信号线称为控制总线。它传送各种信息,有的是CPU到存储器或I/O接口的控制信号,如读信号、写信号、地址锁存允许信号(Address Latch Enable, ALE)、中断响应信号(Interrupt Acknowledge, INTA)等;有的是I/O接口到CPU的信号,如可屏蔽中断请求信号(INTR)等。控制信号线有的是高电平有效,如ALE、INTR等;有的是低电平有效,如INTA等。由于控制总线既可以由CPU向存储器或I/O接口发送控制命令,也可以侦听存储器或I/O设备的状态信息,因此控制总线也是双向的。

总线是连接CPU各功能部件的公共数据通道,其性能直接关系到单片机的整体性能。总线的性能主要表现为它所支持的数据总线位数和总线工作时钟频率。数据总线位数越多,总线工作时钟频率越高,总线的信息吞吐率就越高,单片机的性能就越强。

4.I/O接口

在微型计算机或单片机系统中,输入/输出(Input/Output, I/O)接口是CPU与外部设备交换信息不可缺少的组成部分。I/O接口是CPU和外设进行衔接的部件,它的一端通过总线和CPU相连,另一端通过控制器和外设相连。通过接口可以传送外设向CPU输入的信息,或者传送CPU输出到外设的信息。I/O外设是输入设备和输出设备的统称,向CPU输入信息的设备称为输入设备,接收CPU信息的设备称为输出设备。

I/O接口主要有三大功能。一是外部设备大多数都是机电设备,传送数据的速度远远低于单片机,因而需要I/O接口做数据缓存。二是外部设备表示信息的格式与单片机不同,例如,USB、模拟信号等首先须用I/O接口进行信息格式的转换。三是I/O接口还可以向CPU报告设备运行的状态,传达CPU的命令等。CPU与外设间的数据交互是由I/O接口完成的。I/O接口中通常包含三类信息:数据信息、状态信息和控制信息。

1)数据信息

CPU与外设交换的基本信息就是数据信息。在输入过程中,数据信息由外设经过与接口之间的数据线进入接口,再到达系统的数据总线,送给CPU;在输出过程中,数据信息从CPU经过数据总线进入接口,再通过接口和外设间的数据线送到外设。从信息表示的物理特性上,数据信息大致可以分为两类:数字量和模拟量。

(1)数字量。

数字量通常是二进制形式的数据或以ASCII码表示的数据及字符,还有可能是一位二进制数(“0”或者“1”)表示的开关量。

(2)模拟量。

在使用单片机进行测控的场合中,多数情况下,输入信息就是现场的连续变化的物理量,如温度、湿度、位移、压力等,这些物理量一般通过传感器转换成电压或电流,再经过放大器放大。这样的电流和电压仍然是连续变化的模拟量,而单片机无法直接接收和处理模拟量,因此,需要经过模拟量向数字量的转换(A/D),变成数字量才能送入计算机。反过来,单片机输出的数字量要经过数字量向模拟量的转换(D/A),变成模拟量后才能进行相关控制。

在单片机运算与处理过程中,数据全部以二进制方式表示,这里所提到的数字量和模拟量仅是从物理信息本身特性进行分类的,并不是CPU能直接识别和处理的信息。

2)状态信息

状态信息是一种反映外设当前工作状态的信息,通常是外设经接口送往CPU的信息。CPU根据这种状态信息,随时了解外设当前的工作情况。对于输入设备,常用“准备就绪”(READY)信号来表明待输入的数据是否已经准备就绪。如果准备就绪,CPU就可以读这个数据;对于输出设备,常用“忙”(BUSY)信号来表示输出设备是否处于空闲状态,如为空闲状态,则可接收CPU送来的信息,否则CPU要等待。

3)控制信息

控制信息是CPU通过接口传送给外设的,CPU通过发送控制信息控制外设的工作。如外设的启动信号和停止信号就是常见的控制信息。实际上,控制信息往往随着外设的具体工作原理不同而有不同的含义。

5.内部集成功能部件

在单片机应用的诸多领域中,会用到通用功能部件,因此各个单片机厂商在芯片内部已经集成了多种功能部件,主要包括定时器、中断控制器和通信控制器等部件。x86系列的通用微型计算机的CPU需要通过I/O接口进行这些功能部件的外部扩展。目前,大量32位单片机的CPU内部集成了更多的功能部件,如A/D、D/A和多种外部通信接口。

1.1.3 单片机的体系结构

单片机的硬件组成中,根据程序存储器和数据存储器的差异,其体系结构可分为冯·诺伊曼结构(Von Neumann Architecture)和哈佛结构(Harvard Architecture)。

冯·诺伊曼结构也称普林斯顿结构(Princeton Architecture),是一种将程序指令存储器和数据存储器合并在一起的概念结构,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的位数相同,如Intel公司的8086处理器的程序指令和数据都是16位的。冯·诺伊曼结构的处理器必须具备一个存储器、一个控制器、一个运算器和输入/输出设备。由于冯·诺伊曼结构的程序指令和数据存储在同一个存储器中,形成系统对存储器的过分依赖,导致其运行效率相对较低,典型的x86、ARM7处理器采用该结构。

哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,数据和程序指令的存储可以同时进行,可以使程序指令和数据有不同的位数,如Microchip公司的PIC16芯片的程序指令是14位的,而数据是8位的;MCS-51、ARM9、ARM10和ARM11等采用哈佛结构。

由于数据存储器与程序指令存储器采用不同的总线,因而较大地提高了存储器的带宽,使其数字信号处理性能更加优越,CPU运行效率相对更高。

1.1.4 单片机常用术语

1.位(bit)

位是计算机所能表示的最基本、最小的数据单元。计算机采用二进制数,所以位就是一个二进制位,它有两种状态——“0”和“1”。不同的二进制位组合就可以表示不同的数据、字符等信息。

2.字(Word)和字长

字是计算机内部进行数据处理的基本单位,通常它与计算机内部的寄存器、算术逻辑单元、数据总线位数一致。计算机的每一个字所包含的二进制位数称为字长。

3.字节(Byte)

相邻的8位二进制数称为字节。字节长度是固定的,但不同计算机的字长是不同的。8位计算机的字长等于1字节,而16位计算机的字长等于2字节,32位计算机的字长等于4字节。目前为了表示方便,常把1字节定为8位,把1个字定为16位,把1个双字定为32位。

4.存储容量

存储容量是衡量内部存储器能存储二进制信息量多少的一个技术指标。通常把8位二进制代码称为一字节(Byte),16位二进制代码称为一个字(Word),把32位二进制代码称为一个双字(DWORD)。存储器容量一般以字节为最基本的计量单位。一字节记为1B,1024字节记为1KB,1024KB记为1MB,1024MB记为1GB,而1024GB记为1TB。在表示存储容量时,大写字母“B”表示字节(Byte),小写字母“b”表示位(bit),比如16B实际表示16×8bit=128bit。

5.指令(Instruction)

指令是规定计算机进行某种操作的命令。它是计算机自动控制的依据。计算机只能直接识别0和1组合的编码,这就是指令的机器码。计算机的机器码指令长度可以是1字节、2字节,也可以是多字节,如4字节、6字节等。

6.程序(Program)

程序是指令的有序集合,是一组为完成某种任务而编制的指令序列。

7.指令系统(Instruction Set)

指令系统是一台计算机所能执行的全部指令。

8.指令流水线

指令流水线是为提高处理器执行指令的效率,把一条指令的操作分成多个细小的步骤,每个步骤由专门的电路完成的方式。

指令顺序执行时通常需要经过3个阶段:取指、译码、执行,每个阶段都要花费一个机器周期,如果没有采用流水线技术,那么执行这条指令需要3个机器周期;如果采用了指令流水线技术,那么当这条指令完成“取指”后进入“译码”时,下一条指令就可以进行“取指”了,这样就提高了指令的执行效率。

9.CISC和RISC

CISC(Complex Instruction Set Computer,复杂指令集计算机)指令能力强,但多数指令使用率低,进而增加了CPU的复杂度。它不仅带来了计算机结构上的复杂性,同时使程序设计更为复杂,致使出错的概率增加。此外,大量使用复杂的存储器操作指令,很难大幅提高计算机的效率。

RISC(Reduced Instruction Set Computer,精简指令集计算机)的最大特点是指令系统简单,使计算机的结构更加简单、更加合理,使系统达到最高的效率。为此,首先简化硬件设计,排除那些实现复杂功能的复杂指令,而保留能提高机器性能并且使用频率最高的指令。精简指令集计算机开始于20世纪80年代中后期。这是计算机体系结构发展的又一次重大变革,是计算机发展的必然趋势。RISC技术的主要特点如下。

● 采用高效的流水线操作,使指令在流水线中并行地操作,从而提高处理数据和指令的速度。

● 指令格式的规格化和简单化:为与流水线结构相适应且提高流水线的效率,指令的格式必须趋于简单和固定的格式。此外,尽量减少寻址方式,从而使硬件逻辑部件简化且缩短译码时间,同时也提高了机器执行效率和可靠性。

● 采用面向寄存器堆的指令:RISC结构采用大量的寄存器操作指令,使指令系统更为精简,控制部件更为简化,指令执行速度大大提高。

● 采用装入/存储指令结构:RISC结构的指令系统中,只有装入/存储指令可以访问内存,而其他指令均在寄存器之间对数据进行处理。用装入指令从内存中将数据取出,送到寄存器;在寄存器之间对数据进行快速处理,并将数据暂存在那里,以便再有需要时,不必再次访问内存,提高了指令执行的速度。

10.分时复用和多功能复用

单片机某些引脚具有分时复用功能,这些引脚在不同时段传输不同类型的信号,达到多路传输的目的。如MCS-51单片机P0端口的8个引脚具备地址/数据(AD0~AD7)分时复用功能,即这些引脚前一个时间段传输的是地址信号,后一个时间段传输的是数据信号。分时复用以时间作为信号分割传输的参量,故必须使各路信号在时间轴上互不重叠,从而使不同的信号在不同的时间内传送。

单片机某些引脚具有多功能复用功能,是指这些引脚具备多个功能,但在一个具体应用中,这些引脚只能选择其中一个功能,其他功能被禁止。

11.统一编址和独立编址

统一编址是指把I/O接口中有关的I/O端口(寄存器)与存储单元同等看待,将它们与存储单元一起统一编排地址,即对I/O端口的访问就如同对存储单元的访问一样。访问端口时,没有专用的I/O指令,所使用的是CPU对存储器的读/写操作指令,如MCS-51单片机外部扩展的I/O接口和RAM存储器统一编址,均采用MOVX指令进行访问。通常在整个地址空间中划分出一小块连续的地址分配给I/O端口;被分配给I/O端口的地址,存储器不能使用,存储器只能使用其他地址段。

独立编址是指I/O端口的地址和存储器的地址各自独立,分别编排,二者的地址空间是相互独立的。因此,必须有专门的I/O指令对端口进行操作。如8086系统中,对于I/O端口,CPU有专门的I/O指令去访问,如8086系统的I/O读写专用指令为IN/OUT指令。

1.2 单片机的主要特点及应用

1.2.1 单片机的主要特点

单片机的存储器ROM和RAM是严格区分的。ROM称为程序存储器,只存放程序、固定常数及数据表格。RAM则为数据存储器,用作工作区及存放用户数据。这样的结构主要是考虑到单片机用于控制系统中,有较大的程序存储器空间,把开发成功的程序固化在ROM中,而把少量的随机数据存放在RAM中。这样,小容量的数据存储器能以高速RAM形式集成在单片机内,加快了单片机程序的执行速度。单片机的主要特点如下。

● 单片机的I/O(输入/输出)引脚通常是多功能复用的。由于单片机的引脚数目有限,为了解决实际引脚数少和需要的信号线多的矛盾,采用了引脚功能复用的方法。引脚处于何种功能,可由指令来设置或由机器状态来区分。

● 单片机的外部扩展能力强。在内部的功能不能满足应用需求时,均可在外部进行扩展(如扩展ROM、RAM,I/O接口,定时器/计数器等),给应用系统设计带来极大的方便和灵活性。

● 体积小,成本低,运用灵活,易于产品化,它能方便地组成各种智能化的控制设备和仪器,做到机电一体化。

● 抗干扰能力强,适用温度范围大,在各种恶劣的环境下都能可靠地工作,这是通用计算机无法比拟的。

● 可以方便地实现多机和分布式控制,使整个控制系统的效率和可靠性大大提高。

1.2.2 单片机的应用领域

工业控制:单片机可以构成各种工业控制系统、数据采集系统等,如数控机床、自动生产线控制、电机控制、温度控制等。

仪器仪表:如智能仪器、医疗器械、数字示波器等。

智慧城市:智能交通、智能安防、智能环境、智能家居等物联网应用。

计算机外部设备与智能接口:如图形终端机、传真机、复印机、打印机、绘图仪等。

商用产品:如自动售货机、电子收款机、电子秤等。

家用电器:如微波炉、电视机、空调、洗衣机、录像机、音响设备等。

1.3 总线技术

总线技术在单片机中非常重要,协助CPU控制整个系统工作,各种外扩芯片或外接设备都需要和总线打交道。总线与接口非常相似,一般来说,接口不具备多个设备的选择功能,根据不同设备,CPU总线往往具有多个设备寻址、选择功能,能对一条总线上的多个设备进行寻址与操作。

1.3.1 总线的性能指标与分类

总线就是单片机内部各个功能部件之间以及与外部设备进行传递信息的一组信号线的集合,为各部件间提供标准信息通路。一个单片机系统由CPU、存储器、输入/输出等部分组成,单片机的各个部件均通过总线来连接。单片机总线主要有如下指标。

① 总线宽度。总线宽度是指数据总线一次操作可以传输的数据位数,通常微型计算机系统的总线宽度不会超过其CPU的外部数据总线宽度。

② 总线频率。总线通常都有一个基本时钟,这个时钟是总线工作的最高频率时钟。

③ 单个数据传输周期数。传输方式不同,每个数据传输所用的时钟周期数也不同。

根据信息传输方式可以将总线分为并行总线和串行总线。

并行总线是CPU与外设之间传输数据的通道。采用并行传送方式在单片机与外部设备之间进行数据传送的接口称为并行接口。它有两个主要特点:一是同时并行传送的二进制位数就是数据宽度;二是在单片机与外设之间采用应答式的联络信号来协调双方的数据传送操作,这种联络信号又称握手信号。早期采用并行总线传输数据是提高数据传输速率的重要手段,但由于并行传送方式的前提是用同一时序传播信号,用同一时序接收信号,而过分提升时钟频率将难以让数据传送的时序与时钟合拍,布线长度稍有差异,数据就会以与时钟不同的时序送达。另外,提升时钟频率还容易引起信号线间的相互干扰,导致传输错误。因此,并行方式难以实现高速化。从制造成本的角度来说,增加位宽会导致电路板的布线数目随之增加,成本随之攀升。

串行总线中的数据是一位紧接一位在通信介质中进行传输的。在传输过程中,每一位数据都占据一个固定的时间长度。串行总线将外部设备与CPU之间联系起来,使它们能够通过串行传送方式互相传送和接收信息。由于串行总线接口简单,且传输速率已有很大提高,目前多数单片机具有多种串行总线,使用场合非常多。

1.3.2 单片机并行总线

并行总线在同一时刻可以传输多个二进制位,主要性能参数有总线位宽、总线频率、总线带宽。

总线位宽是指总线能同时传送的二进制数据的位数,或数据总线的位数,即8位、16位、32位、64位等。总线位宽越大,数据传输速率越大。

总线频率是指总线的工作时钟频率,以MHz为单位,工作频率越高,总线工作速度越快,总线带宽越大。

总线带宽指总线在单位时间内可以传输的数据总量,它与总线位宽和总线频率密切相关,其计算方式如下:

总线带宽=总线位宽×总线频率÷8

例如,对于64位、800MHz的前端总线,它的数据传输速率=64bit×800MHz÷8(Byte)=6.4GB/s。因此,常说的总线带宽就是指总线的数据传输速率。

通用计算机中常用的并行总线有PC/XT、ISA(AT)、EISA、PCI及AGP等总线。

单片机的并行总线是指片内的总线。近十几年来,单片机发展迅速,片内总线的位数及频率均有很大提高。目前,单片机的并行总线以8位、16位、32位为主,少数采用64位并行总线。需要注意的是,目前多数16位或32位单片机的并行总线在片内和片外有差异,主要原因是单片机集成了多种功能部件,片外扩展器件较少,因此部分单片机片内并行总线没有或只有部分引到片外。

1.3.3 单片机常用的串行总线

1.USB(Universal Serial Bus,通用串行总线)

USB是一种应用于计算机或单片机领域的新型串行通信技术。USB是Intel、Compaq、Microsoft、IBM、DEC、Northern Telecom、NEC七家公司共同制定的串行接口标准。1994年11月制定了第一个草案,1996年2月公布了USB规范版本1.0.1998,在进一步对以前版本的标准进行阐述和扩充的基础上,发布了USB 1.1。USB 2.0发布于1999年,最高数据传输速率可以达到480Mbit/s。2008年,USB 3.0发布,USB 3.0采用了四线制差分信号线,支持双向并发数据流传输,最大传输速率可达5.0Gbit/s。

USB的物理连接是一种分层的星形结构,集线器(Hub)是每个星形结构的中心,计算机是根集线器(Root Hub),外设或附加的Hub与之相连。USB最多可支持5个Hub层、127个外设。

USB通过4线电缆传输数据和供电,其中D+和D-是差模信号线,Vcc为+5V电源,GND为电源地,如图1-3所示。

图1-3 USB信号的差分传输方式

USB提供12Mbit/s高速模式和1.5Mbit/s低速模式进行数据传输,两种模式可并存于一个系统中。低速模式主要用于一些低速设备(如鼠标、键盘等)。高速模式用于系统中的高速设备(如磁盘、CD刻录机等)。高速模式必须使用带屏蔽层的双绞线,最大长度为5m。低速模式可用一般双绞线,最大长度为3m。

USB设备包括Hub和功能设备。功能设备又可分为定位设备和字符设备。一个USB设备可以分为三层:底层是总线用户接口,用于发送和接收包;中间层是逻辑设备,用于处理总线接口与不同端点之间的数据流通;最上层是功能层,即USB设备所提供的功能,如鼠标、键盘等。

USB主机在USB系统中处于中心地位,对连接的USB设备进行控制。USB主机控制所有USB设备的访问,一个USB设备只有在USB主机允许时才能访问USB总线。USB主机包括:设备驱动程序、USB系统软件、USB主控制器。另外,USB还有两个软件接口:USB驱动接口(USBD)和主机控制驱动接口(HCD)。

2.SPI(Serial Peripheral Interface)总线

Motorola公司的SPI总线的基本信号线为3根传输线,即MOSI、MISO、SCK。传输速率由主片发出的SCK频率决定,MOSI为主片数据输出和从片数据输入,MISO为从片数据输出和主片数据输入。SPI总线的系统结构如图1-4所示,它包含了一个主片和多个从片,主片通过发出片选信号来选择与哪个从片进行通信。当某个从片的信号有效时,能通过MOSI接收指令、数据,并通过MISO发回数据,而未被选中的从片的MISO端处于高阻状态。

主片在访问某一从片时,必须使该从片的片选信号有效;主片在SCK信号的同步下,通过MOSI发出指令、地址信息;如要将数据输出,则接着写指令,由SCK同步在MOSI上发出数据;如要读回数据,则接着读指令,由主片发出SCK,从片根据SCK的节拍通过MISO发回数据。

图1-4 SPI总线的系统结构

对具有SPI接口的从片器件来讲,SCK、MOSI是输入信号,MISO是输出信号。SCK用于主片和从片通信的同步。MOSI用于将信息传输到器件,输入的信息包括指令、地址和数据,且指令、地址和数据的变化在SCK的低电平期间进行,并由SCK信号的上升沿锁存。MISO用于将信息从器件传出,传出的信息包括状态和数据,信息在SCK信号的下降沿送出。

3.I2C总线

I2C总线是由Philips公司开发的两线式串行总线,用于连接微控制器及其外围设备,是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少、控制方式简单、器件封装尺寸小、通信速度较大等优点。I2C总线主要特点如下。

① 只需要两条总线线路:一条串行数据线SDA,一条串行时钟线SCL。

② 每个连接到总线的器件都可以通过唯一的地址访问,主机可以作为发送器或接收器。

③ 它是一个真正的多主机总线,如果两个或更多主机同时初始化,可以通过冲突检测和仲裁防止数据被破坏。

④ 串行的8位双向数据传输速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s。

由于连接到I2C总线的器件有不同种类的工艺(CMOS、NMOS、双极性),逻辑0(低)和逻辑1(高)的电平不是固定的,它由电源Vcc的相关电平决定,每传输一个数据位就产生一个时钟脉冲。SDA线上的数据必须在时钟的高电平周期内保持稳定。数据线的高或低电平状态只有在SCL线的时钟信号是低电平时才能改变。

4.UART(Universal Asynchronous Receiver/Transmitter)

UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工发送和接收。在嵌入式设计中,UART用于主CPU与辅助设备CPU通信。

UART在发送时,首先将并行数据转换成串行数据,再按二进制位进行传输。在UART通信协议中规定信号线上的状态位高电平代表“1”,低电平代表“0”。当两个设备使用UART串口通信时,必须先约定好统一的传输速率和帧格式。如果通信双方速率不同,会导致接收方和发送方的数据位错位,出现收/发数据不一致。帧格式通常为起始位、数据位、停止位,其中数据位的长度通常是8位或9位,其中,9位数据通常包含一个奇偶校验位。接收器发现起始位时知道对方准备发送数据,并尝试与发送器时钟频率同步。如果选择了奇偶校验位,UART就在数据位后面加上奇偶校验位,可以用该位进行校验。

在接收过程中,UART从接收的串行数据中去掉起始位和结束位,对收到的数据进行奇偶校验,并将数据字节从串行转换成并行。UART也产生额外的信号来指示发送和接收的状态。例如,如果产生一个奇偶错误,UART就置位奇偶标志。数据传输可以首先从最低有效位(LSB)开始。然而,有些UART允许灵活选择先发送最低有效位或最高有效位(MSB)。

UART是单片机中串行通信端口的关键部分。计算机中的UART连接到产生RS232规范信号的电路,因此,当计算机与其他微处理器进行串口通信时,需要进行TTL电平与RS232电平相互转换的电路处理。单片机的UART数据传输速率范围为每秒几百位到1.5Mbit。UART通信速率通常受发送和接收线距离长短的影响。

近几年,单片机串口UART有新的扩展,如STM32F10x系列的32位单片机中串口通信描述为USART(Universal Synchronous Asynchronous Receiver and Transmitter),即通用同步/异步收发器。从名字上可以看出,USART在UART基础上增加了同步功能,即USART是UART的增强型。当串口进行异步通信时,USART与UART没有区别,但用在同步通信时,USART与UART的区别之一就是能提供主动时钟。如STM32F10x系列单片机的USART可与支持ISO 7816标准的智能卡接口直接通信。

本章小结

本章对单片机的定义、发展历程、硬件组成及体系架构进行了介绍,其中硬件主要包括CPU、存储器、总线、I/O接口和内部集成功能部件,单片机的体系架构分为冯·诺伊曼结构和哈佛结构。

本章还介绍了单片机的主要特点及应用领域,最后对单片机的并行总线和常用串行总线进行了详细介绍。

思考题与习题

1.1 简述单片机的定义。

1.2 分析单片机硬件组成和微型计算机硬件组成的异同点。

1.3 单片机常用串行总线有哪些?各自的应用场景有何特点?

1.4 查阅资料,阐述单片机引脚分时复用功能和多功能复用功能的使用差异。

1.5 结合自己所查阅的资料,举例说明单片机在国内的行业应用现状,并分析单片机的技术发展对于国家经济、国防、军工和工业有何作用?

国内单片机厂家排名

目前,单片机在民用和工业测控领域得到最广泛的应用。家中常见的彩电、冰箱、空调、录像机、VCD,遥控器,电饭煲等无处不见单片机的影子,单片机早已深深地渗透到我们每个人的生活之中,单片机对于各种智能电子产品的重要性不言而喻,而国内有哪些比较好的 单片机厂家呢?宇凡微为大家整理了最新的国内单片机排名。

国内单片机厂家排名

单片机从20世纪70年代诞生以来,就一直处在快速发展的阶段,从最初的4位单片机发展到现在的8位单片机、32位单片机。我国的单片机厂家从无到有,也历经了多个发展阶段,到现在,我国单片机行业取得了巨大的进步,单片机厂家也层出不穷,笔者通过综合对比整理了以下的国内单片机厂家排名,仅代表个人意见,如果大家有其他意见,欢迎在评论区留言。

第一名:中颖电子

在谈到国产单片机厂家的时候,我们有一个厂商是不能绕过的,那就是中颖电子。是一家专注于单片机及锂电池管理芯片领域的芯片设计公司,是首批被中国工业及信息化部,及上海市信息化办公室认定的,集成电路设计企业,也是上海市企业技术中心、高新技术企业、国家认定的重点集成电路设计企业。多方资料显示,中颖电子是国内当之无愧的单片机厂家龙头。

第二名:北京兆易创新

兆易创新在国内单片机行业几乎无人不知,作为国内首家专业从事存储器及相关芯片设计的集成电路设计公司。公司核心管理团队曾在硅谷、韩国等地著名存储器公司工作多年,有着丰富的研发及管理经验,带领团队研发出国内第一颗静态存储器及IP技术,经过多年的积累和探索,兆易创新已成长为国内存储芯片产业龙头,以及领先的闪存芯片设计公司,2010、2011、2012年三年,公司蝉联“中国芯”最佳市场表现奖,并成为了行业中备受瞩目的高新企业,在国内单片机厂家排名中,兆易创新排名第二实至名归。

第三名:华大半导体

华大半导体有限公司(简称华大半导体)是中国电子信息产业集团有限公司(CEC)整合旗下集成电路企业而组建的专业子集团,成立于2014年5月8日。虽然看似成立时间较短,实际上华大半导体涵盖设计、制造、封装、测试、EDA等领域,是拥有完整产业链的企业。华大半导体这一公司实力雄厚,据CSIA数据显示,华大半导体连续5年入围中国十大集成电路设计公司,且营收和行业地位逐渐上升。目前,华大半导体拥有超过16家子公司,包括3家上市公司:上海贝岭、晶门半导体、中电华大科技。总资产超过160亿,实力底蕴可谓是十分雄厚,在国内单片机厂家中排名进入前三也是轻而易举。

第四名:华润微电子

华润微电子有限公司是华润集团旗下负责微电子业务投资、发展和经营管理的高科技企业,曾先后整合华科电子、中国华晶、上华科技、中航微电子等中国半导体企业,在目前,公司是中国领先的拥有芯片设计、晶圆制造、封装测试等全产业链一体化运营能力的半导体企业,目前公司主营业务可分为产品与方案、制造与服务两大业务板块,公司产品设计自主、制造过程可控,在分立器件及集成电路领域均已具备较强的产品技术与制造工艺能力,形成了先进的特色工艺和系列化的产品线。公司产品聚焦于功率半导体、智能传感器领域,为客户提供系列化的半导体产品与服务。

第五名:复旦微电子

1998年7月,由复旦大学“专用集成电路与系统国家重点实验室”、上海商业投资公司和一批梦想创建中国最好的集成电路设计公司(芯片设计)的创业者联合发起创建了复旦微电子。复旦微电子集团现已形成安全与识别、智能电表、非挥发存储器、智能电器四大成熟的产品线和系统解决方案,产品行销30多个国家和地区。发展至今,复旦微电子已成功地确立了在国内集成电路设计行业中举足轻重的地位。

第六名:国民技术

国民技术股份有限公司于2000年源于国家“909”集成电路专项工程成立,是中国安全芯片、通用MCU领军企业,国家级高新技术企业,拥有国内首个企业独立安全芯片攻防技术实验室,博士后科研工作站。总部位于深圳,在北京、上海、武汉、西安、香港、新加坡等地设有分支机构。拥有1400多项国内外专利,其中发明专利超过1000项, 多项核心基础专利在美国、墨西哥、新加坡、印尼、尼日利亚、阿尔及利亚等地获得授权。

第七名:上海东软载波

上海东软载波微电子有限公司专注芯片设计二十多年,于2015年被青岛东软载波科技股份有限公司合并,经过多年努力,公司掌握了具有自主知识产权的核心技术,在设计流程、产品架构、行为级描述、RTL级设计、验证、版图以及各种电路控制板设计等方面, 取得了丰硕的成果。产品及服务涉猎范围也越来越广,从最初专注于研发8位通用MCU,直至现今完成硏发并量产的电力线载波通信芯片、8/32位通用芯片、无线射频芯片、触控芯片等不同类型的集成电路产品, 形成了MARS产品线。

第八名:深圳中微半导体

中微半导体(深圳)股份有限公司成立于2001年,是集成电路(IC)设计企业,专注于数模混合信号芯片、模拟芯片的研发、设计与销售。主要产品包括家电控制芯片、消费电子芯片、电机与电池芯片、传感器信号处理芯片及功率器件等,广泛应用于家用电器、消费电子、电机电池、医疗健康、工业控制、汽车电子和物联网等领域。自成立以来,中微半导体围绕智能控制器所需芯片及底层算法进行技术布局,不断拓展自主设计能力。目前已完成以MCU为核心的芯片开发平台,实现了芯片的结构化和模块化开发,具备8位和32位MCU、高精度模拟、功率驱动、功率器件、无线射频和底层核心算法的设计能力,可针对不同细分领域作出快速响应。

第九名:上海晟矽微电子

晟矽微电专注于研发高抗干扰性、高可靠性的通用型及专用型的8位和32位微控制器产品(MCU),并为客户提供相关的应用开发工具和整机系统方案。同时,在整合现有产品技术的基础上,公司逐步加大研制基于物联网架构的智能家居领域产品,致力于成为智能家居及物联网硬件基础方案提供商。公司的组成成员,大都来自半导体业界,不论是在设计工程、市场营销、财务行政管理及委托代工作业等方面,在IC 设计制造业中都有相当的资历与经验;基于共同的理念及奋斗目标,组成以 MCU 设计制造为主的公司,来供应高品质、高附价值的MCU 产品。

第十名:杭州士兰微电子

杭州士兰微电子股份有限公司坐落于杭州高新技术产业开发区,是专业从事集成电路芯片设计以及半导体微电子相关产品生产的高新技术企业。得益于中国电子信息产业的飞速发展,士兰微电子已成为国内规模最大的集成电路芯片设计与制造一体(IDM)的企业之一,其技术水平、营业规模、盈利能力等各项指标在国内同行中均名列前茅。

相关问答

本科做基于 单片机 的智能车(有寻迹,避障,蓝牙控制功能)毕业设计是不是很low,大家有什么好的意见吗?

如果认为这种本科生毕业设计课题很low,那么请最好自我评估一下,尽量避免养成一种眼高手低的习惯。作为本科生毕业设计课题“基于单片机的寻迹智能车”、“基...

外部中断0和外部中断1的触发方式?

国内外生产的51单片机,在外部中断0/外部中断1触发方式上略有不同。以ATMEL和飞利浦为代表的51单片机采用了边沿触发和电平触发方式,例如AT89C系列,外部中断既...

请教下: 单片机 培训推荐哪家?

合作客户案例:公司成立以来先后与国内外知名大型企业合作,获得了用户的一致好评,和我们合作的客户有(部分客户):金融:工商银行,建设银行,中国正券登...

单片机 的毕业论文怎么写?

一、毕业设计题目及要求(2个)1、基于单片机控制的电动机Y-△启动的设计要求:1)控制器为单片机,电动机为三相异步电动机;2)启动时间为3秒;3)由按键设...51...

请教: 单片机 培训哪家规模大?

面向企事业实际需求提供最新,最实用技术,北京中科信软高级技术培训中心(以下简称中科信软)作为中国领先的企业高端技术服务机构,公司秉承“诚信、创...

智能电子密码锁 国内外 发展现状?

当今智能电子密码锁发展已经到了非常高的境界,由于电子元件特别是单片机应用在这几年得到空前发展,无论功能性,稳定性都比较全面,在保密方面已做到人眼识别,...

Arduino,C51,STM32和ARM等有什么联系和区别?

先说ARM吧,最开始ARM是由乔布斯资助的,苹果一家公司就占了43%,这里面ARM的格局也是最大的,Arduino和51与ARM相比,真是小巫见大巫,或者说他们根本没有可比性...意...

国内外 对巡线小车的研究现状

[最佳回答]65339本课题所研究的基于单片机的光电自动寻迹小车也属于智能机器人的种类之一,自动寻迹小车的寻迹方式的大致可以分为3类[2]。第一类为CCD寻迹,这...

toukie是什么品牌?

是武汉拓尔奇光电技术有限公司的品牌。位于“中国光谷”腹地的光谷电子工业园。是由具有近二十年单片机技术开发生产能力的众多技术精英与华中科技大学、武汉...

猜你喜欢