pc什么是机器?单片机和PC分析机器的差异和用途
芯片在没有开发前,单片机只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微型计算机控制系统,它与个人电脑(PC机)有着本质的区别,单片机的应用属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使该芯片具备特定的功能。
不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标。这里的技术特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产厂商的技术手册中得到。软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式,数据处理和逻辑处理方式,输入输出特性及对电源的要求等等。开发支持的环境包括指令的兼容及可移植性,支持软件(包含可支持开发应用程序的软件资源)及硬件资源。要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必须的。
单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想。是控制技术的一次革命,是一座重要的里程碑。
单片机的基本工作原理
单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。
单片机的组成、工作原理、分类、特点以及发展趋势
为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。
程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中),在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,PC在中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。
单片机的组成
以MSC-51系列单片机为例,单片机由5个基本部分组成,包括中央处理器CPU、存储器、输入/输出口、定时/计数器、中断系统等。
单片机的组成、工作原理、分类、特点以及发展趋势
单片机CPU结构
51单片机内部有一个8位的CPU,包含运算器,控制器及若干寄存器等。
从上图中我们可以看到,在虚线框内的就是CPU的内部结构了,8位的MCS-51单片机的CPU内部有数术逻辑单元ALU(ArithmeticLogic Unit)、累加器A(8位)、寄存器B(8位)、程序状态字PSW(8位)、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR(16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。
单片机的存储器
存储器是用来存放程序和数据的部件,MCS-51单片机芯片内部存储器包括程序存储器和数据存储器两大类。
1、程序存储器(ROM)
一般用来存放固定程序和数据,特点是程序写入后能长期保存,不会因断电而丢失,MSC-51系列单片机内部有4KB的程序存储空间,可以通过外部扩展到64KB。
2、数据存储器(RAM)
主要用于存放各种数据。
优点:可以随机读入或读出,读写速度快,读写方便。
缺点:电源断电后,存储的信息丢失。
单片机的并行I/O
1、P0口
P0口的口线逻辑电路如图所示
2、P1口
P1口的口线逻辑电路如图所示
3、P2口
P2口的口线逻辑电路如图所示
4、P3口
P3口的口线逻辑电路如图所示
单片机的时钟和时序
1、时钟电路
单片机时钟电路通常有两种形式:内部振荡方式和外部振荡方式
MCS-51单片机片内有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端 。把放大器与晶体振荡器连接,就构成了内部自激振荡器并产生振荡时钟脉冲。
外部振荡方式就是把外部已有的时钟信号直接连接到XTAL1端引入单片机内,XTAL2端悬空不用。
2、时序
振荡周期:为单片机提供时钟信号的振荡源的周期。
时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。因此时钟周期是振荡周期的两倍,即一个S周期,被分成两个节拍—P1、P2
指令周期:CPU执行一条指令所需要的时间(用机器周期表示。
各时序之间的关系如图所示。
单片机的特点
单片机问世以来所走的路与微处理器是不同的。微处理器向着高速运算、数据分析与处理能力、大规模容量存储等方向发展,以提高通用计算机的性能。其接口界面也是为了满足外设和网络接口而设计的。单片机则是从工业测控对象、环境、接口特点出发,向着增强控制功能、提高工业环境下的可靠性、灵活方便的构成应用计算机系统的界面接口的方向发展。因此,单片机有着自已的特点,主要是:
1、品种多样,型号繁多
品种型号逐年扩充以适应各种需要。使系统开发者有很大的选择自由。CPU从4、8、16、32到64位,有些还采用RISC技术;
2、提高性能,扩大容量
集成度已达200万个晶体管以上。总线工作速度已达数十微秒。工作频率达到30MHz甚至40MHz。指令执行周期减到数十微秒。存储器容量RAM发展到1K、2K,ROM发展到32K、64K;
3、增加控制功能,向外部接口延伸
把原属外围芯片的功能集成到本芯片内。现今的单片机已发展到在一块含有CPU的芯片上,除嵌入RAM、ROM存储器和I/O接口外,还有A/D、PWM、UART、Timer/Counter、DMA、Watchdog、SerialPort、Sensor、driver、还有显示驱动、键盘控制、函数发生器、比较器等,构成一个完整的功能强的计算机应用系统;
4、低功耗
供电电压从5V降到3V、2V甚至1V左右。工作电流从mA级降到LA级。在生产工艺上以CMOS代替NMOS,并向HCMOS过渡;
5、应用软件配套
提供了软件库,包括标准应用软件,示范设计方法。使用户开发单片机应用系统时更快速、方便。使有可能做到用一周时间开发一个新的应用产品;
6、系统扩展与配置
有供扩展外部电路用的三总线结构DB、AB、CB,以方便构成各种应用系统。根据单片机网络系统、多机系统的特点专门开发出单片机串行总线。此外,还特别配置有传感器,人机对话、网络多通道等接口,以便构成网络和多机系统。
单片机的发展趋势
1、低功耗CMOS化
MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。象80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。CMOS虽然功耗较低,但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于在要求低功耗象电池供电的应用场合。所以这种工艺将是今后一段时期单片机发展的主要途径。
2、微型单片化
现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。
此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。
3、主流与多品种共存
现在虽然单片机的品种繁多,各具特色,但仍以80C51为核心的单片机占主流。所以C8051为核心的单片机占据了半壁江山。而Microchip公司的PIC精简指令集(RISC)也有着强劲的发展势头,中国台湾的HOLTEK公司近年的单片机产量与日俱增,与其低价质优的优势,占据一定的市场分额。此外还有MOTOROLA公司的产品,日本几大公司的专用单片机。在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补,相辅相成、共同发展的道路。
主流单片机种类及特点
51单片机
应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代经典,为以后的其它单片机的发展奠定了基础。
单片机的组成、工作原理、分类、特点以及发展趋势
特点:
1、从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。
2、同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便,
3、乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。
缺点:
1、AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担
2、虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋
3、运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利
4、保护能力很差,很容易烧坏芯片
MSP430单片机
MSP430系列单片机是德州仪器1996年开始推向市场的一种16位超低功耗的混合信号处理器,给人们留下的最大的亮点是低功耗而且速度快,汇编语言用起来很灵活,寻址方式很多,指令很少,容易上手。主要是由于其针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供单片解决方案。
单片机的组成、工作原理、分类、特点以及发展趋势
特点:
1、强大的处理能力,采用了精简指令集(RISC)结构,具有丰富的寻址方式( 7 种源操作数寻址、 4 种目的操作数寻址)、简洁的27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可参加多种运算;还有高效的查表处理指令;有较高的处理速度,在8MHz 晶体驱动下指令周期为 125 ns 。这些特点保证了可编制出高效率的源程序
2、在运算速度方面,能在 8MHz 晶体的驱动下,实现 125ns 的指令周期。 16 位的数据宽度、 125ns的指令周期以及多功能的硬件乘法器(能实现乘加)相配合,能实现数字信号处理的某些算法(如 FFT 等)
3、超低功耗方面,MSP430 单片机之所以有超低的功耗,是因为其在降低芯片的电源电压及灵活而可控的运行时钟方面都有其独到之处。电源电压采用的是 1.8~3.6V 电压。因而可使其在 1MHz 的时钟条件下运行时,芯片的电流会在 200~400uA 左右,时钟关断模式的最低功耗只有 0.1uA
缺点:
1、个人感觉不容易上手,不适合初学者入门,资料也比较少,只能跑官网去找
2、占的指令空间较大,因为是16位单片机,程序以字为单位,有的指令竟然占6个字节。虽然程序表面上简洁,但与pic单片机比较空间占用很大
STM32单片机
由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成 本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成度方面也有不俗的表 现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度,由于其简单的结构和易用的工具再配合其强大的功能在行业中赫赫有名
特点:
1、内核:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法
2、存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器
3、时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶 振。内嵌出厂前调校的8MHzRC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振
4、调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口
PIC单片机
PIC单片机系列是美国微芯公司(Microship)的产品,共分三个级别,即基本级、中级、高级,是当前市场份额增长最快的单片机之一,CPU采用 RISC结构,分别有33、35、58条指令,属精简指令集,同时采用Harvard双总线结构,运行速度快,它能使程序存储器的访问和数据存储器的访问 并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期,这也是高效率运行的原因之一
单片机的组成、工作原理、分类、特点以及发展趋势
特点:
1、具有低工作电压、低功耗、驱动能力强等特点。PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器,从而解决了51系列I/O脚为高电平时同为输入和输出的状态。
2、当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25mA,高电平输出电流可达20mA。相对于51系列而言,这是一个很大的优点
3、它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。
缺点:
其专用寄存器(SFR)并不像51系列那样都集中在一个固定的地址区间内(80~FFH),而是分散在四个地址区间内。只有5个专用寄存器PCL、 STATUS、FSR、PCLATH、INTCON在4个存储体内同时出现,但是在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。数据的传送和逻辑运算基本上都得通过工作寄存器W(相当于51系列的累加器A)来进行,而51系列的还可以通过寄存器相互之间直接传送,因而PIC单片机的瓶颈现象比51系列还要严重,这在编程中的朋友应该深有体会