1/58单片微型计算机原理及接口技术21:14:242/58任课教师:陈桂友联系方式办公电话:88392957—808Email:chenguiyou@sdu.edu.cn网站::14:243/58课程描述课程性质:专业基础课后续课程:嵌入式系统、计算机控制技术选用教材《单片微型计算机原理及接口技术》陈桂友主编21:14:244/58课程特点内容多需要加强理解更重要的是需要加强实践动手能力的培养21:14:245/58学习方法注重理解,加强软件、硬件实验锻炼充分利用网络,提高自学能力相互交流,共同提高21:14:246/58课程主要内容本课程主要内容:微型计算机基础知识计算机系统的组成及工作原理指令系统及汇编语言程序设计C语言程序设计及仿真调试中断定时计数器与可编程计数器阵列数据通信模数转换器与数模转换器人机交互接口复位时钟和省电方式控制21:14:247/58第一章微型计算机概述本章学习目标了解微型计算机发展概况了解微型计算机的应用21:14:248/58§1微型计算机发展概况一、微型处理器和微型计算机1、第一台通用数字电子计算机ENIAC占地面积170平方米重达30吨耗电量150千瓦造价48万美元使用18000多个电子管70000多个电阻10000多个电容1500多个继电器6000多个开关图1-1第一台电子计算机21:14:249/582、微型机的发展——取决于微处理器1971年,美国Intel公司生产出第一片微处理器4004。1976年,相继推出了高档微处理器,如:Intel公司的8085、Zilog公司的Z80等。21:14:2410/581978年,推出了性能与中档16位小型机相当的微处理器,代表性产品是Intel8086。地址线:20位时钟频率:4~8MHz。进入21世纪,不断推出新型的计算机,在速度、性能、价格等诸方面不断适应各种人群的使用。到2009年,奔腾双核机的主频已经达到2.6GHz以上。21:14:2411/58新一代计算机:采用人工智能技术及新型软件,硬件采用新的体系结构和超导集成电路,分为问题解决与推理机、知识数据库管理机、智能接口计算机等。具有以下特点:在CPU上集成存储管理部件采用指令和数据高速缓存采用流水线结构以提高系统的并行性采用大量的寄存器组成寄存器堆以提高处理速度具有完善的协处理器接口,提高数据处理能力在系统设计上引入兼容性,实现高、低档微机间的兼容。21:14:2412/58二、微型计算机的基本构成典型的微型计算机的基本结构包括:微处理器(CPU)存储器输入/输出接口(I/O接口)外部设备系统总线21:14:2413/58存储器I/O接口地址总线AB数据总线DB控制总线CBCPU运算器ALU控制器输出设备输入设备图1-2微型计算机的基本结构21:14:2414/581、系统总线定义:连接多个功能部件的一组公共信号线。各功能部件之间通过总线传输信息。系统总线分为地址总线AB(AddressBus)数据总线DB(DataBus)控制总线CB(ControlBus)-----典型的三总线结构21:14:2415/58地址总线AB单向输出CPU的地址信号输出将要访问的内存单元或I/O端口的地址地址线的多少决定了系统直接寻址存储器的范围例,Intel8086CPU共有20条地址线,分别用A19~A0表示,其中A0为最低位。20位地址线可以确定220=10241024个不同的地址(称为1MB内存单元)。20位地址用16进制数表示时,范围为:00000H~FFFFFH。21:14:2416/58数据总线DB双向数据在CPU与存储器(或I/O接口)间的传送CPU读操作时,外部数据CPU写操作时,CPU数据数据线的多少决定了一次能够传送数据的位数CPU通过不同的地址与存储器(或I/O接口)进行数据传输数据总线数据总线CPU外部21:14:2417/58控制总线CB双向CPU对存储器、I/O接口进行控制和联络。输出控制信号:CPU发给存储器或I/O接口的控制信号。如,微处理器的读信号RD、写信号WR等。输入控制信号:CPU通过接口接受的外设发来的信号。如,外部中断请求信号INTR、非屏蔽中断请求输入信号NMI等。控制信号间相互独立,表示方法采用能表明含义的缩写英文字母符号。按照一般惯例,若符号上有一横线,则表示该信号为低电平有效,否则为高电平有效。21:14:2418/58注意:在连接系统总线的设备中,某时刻只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获取信号。21:14:2419/582、微处理器简称MP(MicroProcessor),也称μP,是微型机的核心部件。通常称为中央处理单元CPU(CentralProcessingUnit),包括:运算器ALU(ArithmeticLogicUnit)控制器CU(ControlUnit)寄存器阵列R(Registers)内部总线等电路-----集成在一片硅片上21:14:2420/583、存储器分为程序存储器和数据存储器两类。程序包括系统程序和用户程序。程序存储器主要是硬盘;数据存储器——内存条。4、I/O接口主要用于CPU和外部设备之间交换数据。并行口串行口USB口等21:14:2421/585、关于微机需要区别的概念(1)微处理器即CPU——计算机的核心部件将运算器、控制器集成在一片芯片上。其功能如下:对指令译码并执行规定动作;能与存储器及外设交换数据;可响应其它部件的中断请求;提供系统所需的定时和控制。(2)微型计算机在CPU的基础上配置存储器、I/O接口电路、系统总线。(3)微型计算机系统以微机为主体,配置系统软件和外设。软件部分包括系统软件(如操作系统)和应用软件(如字处理软件)。21:14:2422/58运算器控制器寄存器阵列存储器总线输入输出接口电路外部设备软件微处理器微型计算机微型计算机系统区别3个概念图1-3微处理器、微型计算机和微型计算机系统关系图21:14:2423/58三、单片微型计算机简介计算机的核心部分:中央处理器CPU存储器通用I/O接口典型外设----集成在一块芯片上的计算机21:14:2424/581、单片机的基本定义在一块芯片上集成了中央处理单元(CPU)、存储器(RAM/ROM等)、定时/计数器以及多种输入/输出(I/O)接口的比较完整的数字处理系统。21:14:2425/58内部总线CPU单片机工作支撑模块数据存储器程序存储器定时/计数器模块串行通讯接口A/D转换模块D/A转换模块其他I/O模块其他模块图1-4一个典型的单片机的组成框图21:14:2426/582、单片机名称的来源早期的英文名称是Single-chipMicrocomputer,即单片微型计算机,简称单片机。后来称之为微控制器(Microcontroller),这也是目前比较正规的名称。我国学者或技术人员一般使用“单片机”一词。21:14:2427/583、单片机的发展过程单片机的问世——1975年美国TEXAS公司推出4位单片机。1976年,Intel公司推出MCS-48系列8位单片机,其代表型号是8048。特点:8位字长,片内ROM为1K字节,片内RAM为64字节,27根I/O口线,1个8位定时/计数器,两个中断源。21:14:2428/581980年以后,Intel公司推出MCS-51系列单片机,其代表型号是8051。特点:8位字长,片内ROM为4K字节,片内RAM为128字节,32根I/O口线,2个16位定时/计数器,5个中断源。21:14:2429/58目前,微型计算机正朝两个方向发展高性能﹑多功能的方向发展以个人计算机PC(PersnalComputer)为标志,具有强大的操作系统,并且支持多种软件运行。价格低廉﹑片上系统(SystemOnChip,SOC)的方向发展将CPU、存储器、接口电路、内部总线等部件全部集成在同一个芯片上的单片微机又称为微控制器(Microcontrolor),也称为单片机。21:14:2430/584、单片机的产品8051内核单片机非8051内核单片机21:14:2431/588051内核单片机生产8051内核单片机的公司及典型产品有:宏晶科技有限公司的STC系列Atmel公司的AT89系列NXP半导体公司(原PHILIPS半导体公司,2007年更名为NXP半导体公司)的8051内核单片机ST公司的增强型8051内核单片机等21:14:2432/58非8051内核单片机Freescale公司(2004年从Motorola公司分离出来的半导体公司)的MC68系列单片机、MC9S08系列单片机(8位单片机)、MC9S12系列单片机(16位单片机)以及32位单片机Microchip公司的PIC系列单片机Ti公司的MSP430系列16位单片机21:14:2433/585、单片机的特点集成度高体积小功耗低可靠性高使用灵活方便控制功能强编程保密化价格低廉等。21:14:2434/586、单片机的应用工业生产控制数据采集和处理设备控制智能化仪器仪表日常生活等。21:14:2435/587、单片机的选择当前,出现了16位、32位的单片机。单片机在集成度、运算速度、接口性能等方面都在不断创新。但是,到目前为止,在工业控制、测量检测、仪器仪表等方面,8位单片机仍然是主流单片机21:14:2436/58教学机型的演变:上世纪80年代——Z80上世纪90年代中期——Intel8086近年来,PC机作为通用机型,其底层结构的控制系统的设计、汇编语言的编程等优势逐渐让位于单片机;单片机的技术和性能不断提高,开发手段、控制功能等功能不断完善,单片机更适于面向控制对象的设计和编程,从单片机入手学习微型计算机原理,正在逐步成为学习计算机原理的更好途径。21:14:2437/58四、微型计算机的软件系统裸机——只有计算机硬件构成的计算机没有系统程序的支持,裸机是无法工作的。21:14:2438/58PC机的运行过程开机进入系统,执行系统程序,包括开机存储器自检、接口自检、外设自检等等。接受用户通过键盘或者鼠标发出的命令,进一步执行用户要执行的程序。系统程序就把要执行的程序从硬盘里面找到,放进内存,然后运行用户的程序。关闭用户程序时,系统程序会将内存中的信息重新写回到硬盘中保存。21:14:2439/58单片机运行程序的过程在单片机应用系统中,可以有操作系统(此时一般称之为嵌入式操作系统)的支持,也可以没有操作系统的支持。无论有没有操作系统,用户所编写的应用程序经过编译后都保存在程序存储器中(一般都保存在单片机内部集成的FLASH存储器中),执行时,由单片机内部的控制器控制程序的执行。21:14:2440/58对于普通的个人计算机来讲,用户的开发任务主要集中在程序设计方面,硬件设计较少。开发应用系统时,一般采用可视化的集成开发环境,常见的有VisualC++,Eclipse,NetBeans,PowerBuilder等。21:14:2441/58在开发单片机应用系统的过程中,往往需要对硬件和软件进行反复多次的调试。调试时,使用集成开发环境对用户系统进行仿真运行,根据系统的仿真运行状态对电路进行硬件和软件的修改调试,直到满足用户要求为止。对硬件电路来说,某些硬件电路的设计缺陷可以在仿真调试中发现并改正;对软件来说,可以进行某些程序模块的编写和调试。特别是可以对那些与硬件关系不大的程序模块进行模拟调试,这对系统的开发带来了很大的方便,可以加快项目的开发过程,如数据运算、逻辑关系测试等。21:14:2442/58目前,许多集成开发环境具有模拟调试功能,如:著名的KeiluVision集成环境、飞思卡尔公司的CodeWarrior、IARSystems公司的IAR集成开发环境。21:14:2443/58设计人员在进行程序设计时应考虑的几个方面:(1)模块化、结构化的程序设计根