微机原理及单片机接口技术 刘忠国:liuzhg@sdu.edu.cn 电话:18764171197 Tel:84192 山东大学生物医学工程
任课教师:刘忠国 电话:18764171197 Tel:84192 Email: liuzhg@sdu.edu.cn 网站:http://www.mcu001.com http://course.sdu.edu.cn/G2S/stcmcu.cc keil μvision软件下载及指导手册(Help→μvision Help) http://www.keil.com/ 何宾STC单片机原理及应用 > http://www.gpnewtech.com/study/stc/
后续课程:DSP原理与应用、生物医学智能仪器 课程描述 课程性质:专业基础课 后续课程:DSP原理与应用、生物医学智能仪器 应用: 大学生科技创新项目,“宏晶杯”单片机大奖赛, 中国机器人大奖赛,飞思卡尔杯-全国大学生智能车竞赛, 节能减排社会实践与科技竞赛 选用教材: 陈桂友.单片微型计算机原理及接口技术
课程特点 学习方法 内容多 需要加强理解 更重要的是需要加强实践动手能力的培养 注重理解,加强软件、硬件实验锻炼 充分利用网络,提高自学能力 相互交流,共同提高
课程主要内容 微型计算机基础知识 (第2章) 计算机系统的组成及工作原理 (第3章) 指令系统及汇编语言程序设计 (第4章) C语言程序设计及仿真调试 (第5章) 中断 (第6章) 定时计数器与可编程计数器阵列 (第7章) 数据通信 (第8章) 模数转换器与数模转换器 (第9章) 人机交互接口 (第10章) 复位时钟和省电方式控制 (第11章)
第一章 微型计算机概述
第一章 微型计算机概述 本章学习目标 了解微型计算机发展概况 了解微型计算机的应用
§1 微型计算机发展概况 1.1.1 微型处理器和微型计算机 1、第一台通用数字电子计算机ENIAC §1 微型计算机发展概况 1.1.1 微型处理器和微型计算机 1、第一台通用数字电子计算机ENIAC (Electronic Numerical Integrator And Calculator) 占地面积170平方米 重达30吨 耗电量150千瓦 造价48万美元 使用18000多个电子管 70000多个电阻 10000多个电容 1500多个继电器 6000多个开关 每秒可进行5000次加法或400次乘法运算 图1-1 第一台电子计算机 诞生于1946年2月14日的美国宾夕法尼亚大学
2、微型机的发展——取决于微处理器 1971年,美国Intel公司生产出第一片微处理器4004。 1976年,相继推出了高档微处理器,如:Intel公司 的8085、Zilog公司的Z80等。 1978年,推出了性能与中档16位小型机相当的微处 理器,代表性产品是Intel 8086。 地址线:20位 时钟频率:4~8MHz。 进入21世纪, 不断推出新型的计算机, 在速度、性能、 价格等诸方面不断适应各种人群的使用。到2009年, 奔腾双核机的主频已经达到2.6GHz以上。 2016年, Intel推出 Xeon E5-2602 V4处理器主频5.1GHz。
1.1.2 微型计算机的基本构成 典型的微型计算机的基本结构包括: 微处理器(CPU) 存储器 输入/输出接口(I/O接口) 外部设备(输入输出设备) 系统总线
1.1.2 微型计算机的基本构成 图1-2 微型计算机的基本结构
1、系统总线 定义:连接多个功能部件的一组公共信号线。各功 能部件之间通过总线传输信息。 系统总线分为 地址总线AB(Address Bus) 数据总线DB(Data Bus) 控制总线CB(Control Bus) -----典型的三总线结构
地址总线AB: 单向, CPU输出的地址信号; 1、系统总线 地址总线AB: 单向, CPU输出的地址信号; 输出将要访问的内存单元或I/O端口的地址。 地址线的多少决定了系统直接寻址存储器的范围。 例, Intel 8086 CPU共有20条地址线, 分别用A19~A0 表示, 其中A0为最低位。 20位地址线可以确定220=10241024个不同的地址 (称为1MB内存单元)。 20位地址用16进制数表示其范围: 00000H~FFFFFH。
数据总线DB: 双向, 数据在CPU与存储器(或I/O 接口)间传送 ; 1、系统总线 数据总线DB: 双向, 数据在CPU与存储器(或I/O 接口)间传送 ; CPU读操作时,外部数据 CPU写操作时,CPU数据 数据线的多少决定了一次能够传送数据的位数(8, 16, 32, 64); CPU通过不同的地址与存储器(或I/O接口)进行 数据传输。 数据总线 CPU; 数据总线 外部;
控制总线CB: 双向, CPU对存储器、I/O接口进行 控制和联络。 1、系统总线 控制总线CB: 双向, CPU对存储器、I/O接口进行 控制和联络。 输出控制信号: CPU发给存储器或I/O接口的控制信 号。如, 微处理器的读信号RD, 写信号WR等。 输入控制信号: CPU通过接口接受的外设发来的信 号。如, 外部中断请求信号INTR、非屏蔽中断请求 输入信号NMI等。 控制信号间相互独立, 表示方法采用能表明含义的 缩写英文字母符号。按照惯例, 若符号上有一横线, 则表示该信号为低电平有效, 否则为高电平有效。
1、系统总线 注意: 在连接系统总线的设备中,某时刻只能有 一个发送者向总线发送信号;但可以有多个 设备从总线上同时获取信号。
简称MP(Micro Processor),也称μP, 2、微处理器 简称MP(Micro Processor),也称μP, 是微型机的核心部件。通常称为中央处理单元CPU (Central Processing Unit),包括: 运算器ALU (Arithmetic Logic Unit) 控制器CU (Control Unit) 寄存器阵列R(Registers) 内部总线等电路 -----集成在一片硅片上
3、存储器 4、I/O接口 1.1.2 微型计算机的基本构成 分为程序存储器和数据存储器两类。 1.1.2 微型计算机的基本构成 2k bit串行 EEPROM 3、存储器 分为程序存储器和数据存储器两类。 程序包括系统程序和用户程序。程序存储器主要 是硬盘;数据存储器——内存条。 4、I/O接口 主要用于CPU和外部设备之间交换数据。 并行口 串行口 USB口等 1Mbit并行 EEPROM
5、关于微机需要区别的概念 (1)微处理器即CPU —— 计算机的核心部件 将运算器、控制器集成在一片芯片上。其功能: 对指令译码并执行规定动作; 能与存储器及外设交换数据; 可响应其它部件的中断请求; 提供系统所需的定时和控制。 (2)微型计算机 在CPU基础上配置存储器、I/O接口电路、系统总线。 (3)微型计算机系统 以微机为主体, 配置系统软件和外设。软件部分包括 系统软件(如操作系统)和应用软件(如字处理软件)。
图1-3 微处理器、微型计算机和微型计算机系统关系图 5、关于微机需要区别的概念 微型计算机系统 运算器 控制器 寄存器阵列 存储器 总线 输入输出 接口电路 外部设备 软件 微处理器 微型计算机 区别3个概念 图1-3 微处理器、微型计算机和微型计算机系统关系图
1.1.3 单片微型计算机简介 单片微型计算机就是将计算机的核心部分: 中央处理器CPU 存储器 通用I/O接口 典型外设 ----集成在一块芯片上的计算机
1.1.3 单片微型计算机简介 1、单片机的基本定义 在一块芯片上集成了中央处理单元(CPU)、存储器 (RAM/ROM等)、定时/计数器以及多种输入/输出(I/O) 接口的比较完整的数字处理系统。 2、单片机名称的来源 早期的英文名称是Single-chip Microcomputer,即单 片微型计算机,简称单片机。 后来称之为微控制器(Microcontroller),这也是目 前比较正规的名称。 我国学者或技术人员一般使用“单片机”一词。
1.1.3 单片微型计算机简介 图1-4 一个典型的单片机的组成框图
3、单片机的发展过程 单片机问世: 1975年美国TEXAS公司推出4位单片机。 1976年,Intel公司推出MCS-48系列8位单片机,其 代表型号是8048 (96条指令)。 特点:8位字长, 片内ROM为1K字节, 片内RAM 为64 字节, 27根I/O口线, 1个8位定时/计数器, 两个中断源。 1980年以后, Intel公司推出MCS-51系列单片机, 其代 表型号是8051 (111条指令) 。 特点: 8位字长, 片内ROM为4K字节, 片内RAM为128 字节, 32根I/O口线, 2个16位定时/计数器, 5个中断源。
价格低廉﹑片上系统(System On Chip, SOC) 的方向发展 目前,微型计算机正朝两个方向发展 高性能﹑多功能的方向发展 以个人计算机PC(Persnal Computer)为标志,具有 强大的操作系统,并且支持多种软件运行。 价格低廉﹑片上系统(System On Chip, SOC) 的方向发展 将CPU、存储器、接口电路、内部总线等部件全部 集成在同一个芯片上的单片微机又称为微控制器 (Microcontrolor), 也称为单片机。
4、单片机的产品 8051内核单片机, 非8051内核单片机 8051内核单片机 生产8051内核单片机的公司及典型产品有: 宏晶科技有限公司的STC系列; Atmel公司的AT89系列; NXP半导体公司(原PHILIPS半导体公司, 2007年 更名为NXP半导体公司)的8051内核单片机; 意法半导体(STMicroelectronics)ST公司的增强 型8051内核单片机等。
4、单片机的产品 非8051内核单片机 Freescale公司 (2004年从Motorola公司分离出来 的半导体公司)的MC68系列单片机、MC9S08系列 单片机(8位单片机)、MC9S12系列单片机(16位单 片机)以及32位单片机。 美国微芯Microchip公司的PIC系列单片机。 TI(Texas Instruments)公司的MSP430系列16位 单片机。
5、单片机的特点 集成度高 体积小 功耗低 可靠性高 使用灵活方便 控制功能强 编程保密化 价格低廉等。
6、单片机的应用 7、单片机的选择 工业生产控制 数据采集和处理 设备控制 智能化仪器仪表 日常生活等。 当前, 出现了16位、32位的单片机。单片机在集成 度、运算速度、接口性能等方面都在不断创新。但是, 到目前为止,在工业控制、测量检测、仪器仪表等方 面, 8位单片机仍然是主流单片机
教学机型的演变: 上世纪80年代——Z80 上世纪90年代中期——Intel 8086 近年来,PC机作为通用机型,其底层结构的控制 系统的设计、汇编语言的编程等优势逐渐让位于单 片机; 单片机的技术和性能不断提高,开发手段、控制功 能等功能不断完善,单片机更适于面向控制对象的 设计和编程,从单片机入手学习微型计算机原理, 正在逐步成为学习计算机原理的更好途径。
1.1.4 微型计算机的软件系统 PC机的运行过程 裸机——只有计算机硬件构成的计算机 没有系统程序的支持,裸机是无法工作的 1.1.4 微型计算机的软件系统 裸机——只有计算机硬件构成的计算机 没有系统程序的支持,裸机是无法工作的 PC机的运行过程 开机进入系统,执行系统程序,包括开机存储器自 检、接口自检、外设自检等等。 接受用户通过键盘或者鼠标发出的命令,进一步执 行用户要执行的程序。 系统程序就把要执行的程序从硬盘里面找到,放进 内存,然后运行用户的程序。 关闭用户程序时,系统程序会将内存中的信息重新 写回到硬盘中保存。
单片机运行程序的过程 单片机应用系统, 可有操作系统(此时一般称之为嵌 入式操作系统)的支持, 也可没有操作系统的支持。 单片机应用系统, 可有操作系统(此时一般称之为嵌 入式操作系统)的支持, 也可没有操作系统的支持。 无论有没有操作系统,用户所编写的应用程序经过 编译后都保存在程序存储器中(一般都保存在单片机 内部集成的FLASH存储器中),执行时,由单片机内 部的控制器控制程序的执行。 对普通个人计算机来讲,用户的开发任务主要集中 在程序设计方面,硬件设计较少。开发应用系统时, 一般用可视化的集成开发环境, 常见的有Visual C++, Eclipse, NetBeans, PowerBuilder等。
使用集成开发环境对用户系统进行仿真运行 在开发单片机应用系统的过程中,往往需要对硬件 和软件进行反复多次的调试。调试时,使用集成开 发环境对用户系统进行仿真运行,根据系统的仿真 运行状态对电路进行硬件和软件的修改调试,直到 满足用户要求为止。 仿真调试可发现并改正某些硬件电路的设计缺陷; 对软件, 可进行某些程序模块的编写和调试。特别 是对那些与硬件关系不大的程序模块进行模拟调 试, 这对系统的开发带来了很大的方便,可加快项 目的开发过程,如数据运算、逻辑关系测试等。
目前,许多集成开发环境具有模拟调试功 能, 使用集成开发环境对用户系统进行仿真运行 目前,许多集成开发环境具有模拟调试功 能, 如:著名的Keil μVision集成环境、 飞思卡尔公司的CodeWarrior、 IAR Systems公司的IAR集成开发环境。
设计人员在进行程序设计时应考虑的几个方面: (1)模块化、结构化的程序设计 根据系统功能要求,将软件分成若干个相对独立 的模块,实现各功能程序的模块化、子程序化。 (2)建立正确的数学模型 根据功能要求,描述各输入和输出变量之间的数 学关系——这是关系到系统性能好坏的重要因素。
设计人员在进行程序设计时应考虑的几个方面: (3)绘制程序流程图 绘制程序流程图是程序设计的一个重要组成部 分,而且是决定成败的关键部分。 流程图的优势:从某种意义上讲,恰当的程序 流程图将有助于程序的编写和优化,缩短程序的调 试过程。
设计人员在进行程序设计时应考虑的几个方面: (4)合理分配系统资源 包括ROM、RAM、定时/计数器、中断源等。资 源规划好后,应列出一张详细的资源分配表,以方 便编程时查阅。 (5)注释 在程序的适当位置写上功能注释,提高程序的可 读性。
设计人员在进行程序设计时应考虑的几个方面: (6)抗干扰设计 加强软件抗干扰设计,这是提高计算机应 用系统可靠性的有力措施。 通过编辑软件编辑出的源程序,必须用编译 程序汇编后生成目标代码。
§2 微型计算机的应用 1、科学计算 通用微型计算机的重要应用之一 。例,美国Seguent 公司最早用30个Intel 80386构成Symmetry计算机, 速度为120MIPS (Million Instructions Per Second), 达到IBM 3090系列中最高档大型机的性能, 价格却 不到后者的十分之一 1996年, 由美国能源部(DOE)发起和支持, 由Intel建 成的Option Red系统, 用9216个微处理器使系统每 秒浮点运算峰值速度达到1.8T flop/s(每秒1.8万亿次 运算), 成为世界上第一台万亿次计算机。
1、科学计算 1998年,同样得到DOE支持的由IBM建成的Blue Pacific内含5856个微处理器,峰值速度达到 3.888Tflop/s。 2000年,在DOE支持下,IBM又建成内含8192个 微处理器的Option White, 其系统峰值达到 12.3Tflop/s。 这些系统尽管是由微处理器架构而成的,但是无 论是从规模还是功能上,都成了超级计算机。
2、信息处理 由于Internet的蓬勃发展,使世界进入了崭新 的信息时代,对大量信息包括多媒体信息的处 理是信息时代的必然要求。 连接在Internet上的微型计算机配上相应的软 件以后,就可以很灵活地对各种信息进行检索、 传输、分类、加工、存储和打印。
过程控制是微型计算机应用最多、也 是最有效的方面之一。 3、过程控制 过程控制是微型计算机应用最多、也 是最有效的方面之一。 在制造工业和日用品生产厂家中的微 型计算机控制的自动化生产线,为生产 能力和产品质量的迅速提高开辟了广阔 前景。
4、仪器、仪表控制 用微处理器代替传统的机械部件或分离的电子部 件,使产品减小了体积、降低了价格,而可靠性和 功能却得到了提高。 逻辑分析仪使电子工程技术人员能够用以前不可 能采用的办法同时观察多个信号的波形和相互之间 的时序关系。 在医学领域,出现了用微处理器作为核心控制部 件的CT扫描仪和超声扫描仪,加强了对疾病的诊 断手段。
5、家用电器和民用产品控制 洗衣机、冰箱 自动报时、自动控制、自动报警系统 娱乐产品将智能融于娱乐中 以微处理器为核心的盲人阅读器为盲人带 来福音.
6、人工智能方面的应用 人工智能 (Artificial Intelligence, AI)是研 究、开发用于模拟、延伸和扩展人的智能的 理论、方法、技术及应用系统的一门新的技 术科学。 人工智能是计算机科学的一个分支,它通过 了解智能的实质,生产出一种新的能以人类 智能相似的方式做出反应的智能机器,该领 域的研究包括机器人、语言识别、图像识别、 自然语言处理和专家系统等。
6、人工智能方面的应用 人工智能还有许多方面的应用研究 机器学习 模式识别 智能控制及检索 机器学习及视觉 智能调度与指挥等等。 计算机控制的机器人、机械手
第一章 微型计算机概述 习题 1-2; 1-3; 1-4 18:18