




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机系统设计讲座v第一讲、单片机系统及其设计简介 v第二讲、单片机系统硬件设计 v第三讲、单片机系统软件设计 v第四将、单片机系统设计实例 第一讲第一讲 单片机系统及其开发简介单片机系统及其开发简介v1单片机系统概述v2 单片机的基本结构和工作原理 (为例)v3 单片机系统开发环境及工具介绍v4 单片机系统的开发过程概述v1.1单片机系统的概念v1.2单片机系统特点v1.3单片机系统的应用领域1 1 单片机系统概述单片机系统概述 1.11.1单片机系统的概念单片机系统的概念v1.1.1 单片机与单片机系统的概念单片机与单片机系统的概念v单片机单片机是大规模集成电路技术发展的产物,它将中央处理
2、器(cpu)、存储器(rom/ram)、输入输出接口、定时器/计数器等主要计算机部件集成在一片芯片上,因此单片机被称为单片微型计算机(single chip microcomputer)。单片机系统单片机系统简单的说就是单片机加一些外围芯片和软件组成的完整系统 。1.1.2 单片机最小系统v单片机最小系统如右图所示v1 晶振v2 电源v3 复位电路 1.2单片机系统特点v(1)单片机构成的应用系统可靠性高。v(2)系统配置规范 。v(3)控制功能具有预想性,变动控制方案容易。v(4)具有较高的性价比1.3单片机系统的应用领域v1.在智能仪器仪表上的应用 v2.在工业控制中的应用 v3.在家用电
3、器中的应用 v4.在计算机网络和通信领域中的应用 v5.单片机在医用设备领域中的应用 v6.在各种大型电器中的模块化应用 v7.单片机在汽车设备领域中的应用 v参考网址:http:/ 单片机的基本结构和工作原理 以为例讲解v2.1 mcs-51系列单片机的结构 v2.2 8051单片机内部结构和功能v2.3 mcs-51单片机的引脚功能v2.4 mcs-51单片机的工作方式v2.5 mcs-51单片机的时序由图2-2可知8051单片机内部结构如下:v由运算器和控制器组成的8位微处理器(cpu)v4kb的片内程序存储器(rom)v128b数据存储器(ram)v21个特殊功能寄存器(sfr)v两个
4、16位定时器/计数器t0、t1v一个全双工串行通信接口v4个8位输入输出接口(p0p3),共32根i/o口线v5个中断源,可编程为两个优先级v内部时钟电路v微处理器又称cpu,是计算机的运算控制中心,由运算器和控制器及中断控制电路等几部分组成。cpu字长有4位、8位、16位和32位之分,字长越长运算速度越快,数据处理能力也越强。vmcs-51单片机的cpu字长为8位。2.1.1 微处理器(cpu)(1) 运算器运算器以算术逻辑运算单元alu为核心,包括累加器a、状态字寄存器psw、b寄存器等部件。算术逻辑单元(alu)在控制器的作用下,进行各种算术运算和逻辑运算。如加法、减法、加1、减1等操作
5、。(2) 控制器控制器包括程序计数器pc、指令寄存器、指令译码器、振荡器、定时电路及控制电路等部件,能根据不同的指令产生相应的操作时序和控制信号,控制单片机各部分的运行。pc是一个16位计数器,具有自动加1功能。cpu每执行一条指令则pc自动加1,并指向要执行的下一条指令的地址,最大寻址范围为64k。可以通过控制转移指令改变pc值,实现程序的转移。2.2.1 2.2.1 存储器存储器mcs-51单片机片内只读存储器(rom)用作程序存储器,用于存放已编好的程序、数据表格等;片内读写存储器(ram)又称随机存取存储器,可用于存放输入、输出数据和中间计算结果,同时还作为数据堆栈区。当存储器的容量不
6、够时,可以外部扩展。2.3.3 i/o2.3.3 i/oi/o:输入输出端口, i/o的功能是负责实现cpu通过系统总线把i/o电路和 外围设备联系在一起。其中8051的i/o资源如下: (1) 4个8位并行i/o口p0p3,均可以并行输入输出8位数据。 (2) 串行i/o口用于数据的串行输入输出。2.3.4 2.3.4 定时器定时器/ /计数器计数器定时器/计数器既可以用于产生定时脉冲,实现单片机的定时控制,也可以用于计数方式,对外部事件的脉冲计数。mcs-51系列单片机芯片均为40条引脚,hmos 工艺制造的芯片用双列直插(dip)方式封装,其引脚示意及功能分类如图2-2所示。各引脚功能说
7、明如下:2.3 mcs-51单片机的引脚功能2.3 1. 主电源引脚vvcc(40脚): 接+5v电源正端。vvss(20脚): 接+5v电源地端。vxtal1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。v xtal2(18脚):接外部石英晶体的另一端。在单片机内部,它是片内振荡器的反相放大器的输出端。2.3.2外接晶体引脚2.3.3 输入/输出引脚v(1) p0口(3932脚):p0.0p0.7统称为p0口。在不接片外存储器或扩展i/o口时,可作为准双向输入/输出口。在接有片外存储器或扩展i/o口时,p0口分时复用为低8位地址总线和
8、双向数据总线。v (2) p1口(18脚):p1.0p1.7统称为p1口,可作为准双向i/o口使用。对于52子系列,p1.0与p1.1还有第二功能:p1.0可用作定时器/计数器2的计数脉冲输入端t2,p1.1可用作定时器/计数器2的外部控制端t2ex。2.3.3 输入/输出引脚(续)v3) p2口(2128脚):p2.0p2.7统称为p2口,一般可作为准双向i/o口使用。在接有外存储器或扩展i/o口且寻址范围超过256字节时,p2口用作高8位地址总线。v (4) p3口(1017脚):p3.0p3.7统称为p3口。除作为准双向i/o口使用外,还可以将每一位用于第二功能,且p3口的每一条引脚均可
9、独立定义为第一功能的输入、输出或第二功能的输入、输出。p3口的第2功能如表2-1所示。表表2-1 p32-1 p3口的第二功能口的第二功能0int1intwrrd引 脚第 二 功 能p3.0rxd 串行口输入端p3.1txd 串行口输出端p3.2 外部中断0请求输入端,低电平有效p3.3 外部中断1请求输入端,低电平有效p3.4t0 定时器/计数器0计数脉冲输入端p3.5t1 定时器/计数器1计数脉冲输入端p3.6 外部数据存储器写选通信号输出端,低电平有效p3.7 外部数据存储器读选通信号输出端,低电平有效p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78rst
10、/vpd9rxd p3.010txd p3.111int0 p3.212int1 p3.313t0 p3.414t1 p3.515wr p3.616rd p3.717xtal218xtal119vss20p2.021p2.122p2.223p2.324p2.425p2.526p2.627p2.728psen29ale/prog30ea/vpp31p0.732p0.633p0.534p0.435p0.336p0.237p0.138p0.039vcc408031 8051 875151单片机的引脚2.3.4 控制线v (1) ale/ (30脚):地址锁存有效信号输出端。ale在每个机器周期内输出
11、两个脉冲。在访问片外程序存储器期间,下降沿用于控制锁存p0输出端的低8位地址;在不访问片外程序存储器期间,可作为对外输出的时钟脉冲或用于定时目的。v (2) psen(29脚):片外程序存储器读选通信号输出端,低电平有效。在从外部程序存储器读取指令或常数期间,每个机器周期内该信号两次有效,并通过数据总线p0口读回指令或常数。在访问片外数据存储器期间,psen信号将不出现。2.3.4 控制线(续) (3) rst/vpd(9脚):rst即为reset,vpd为备用电源。该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上将出现持续两个机器周期的高电平,这时可实现复位操作,使单片机
12、回复到初始状态。上电时,考虑到振荡器有一定的起振时间,该引脚上高电平必须持续10ms以上才能保证有效复位。 (4) ea/vpp(31脚):为片外程序存储器选通端。该引脚有效(低电平)时,只选用片外程序存储器,否则单片机上电或复位后选用片内程序存储器。mcs-51单片机的工作方式有v复位方式v单步执行方式v程序执行方式v掉电和低功耗方式v单步执行就是通过外来脉冲控制程序的执行,使之达到来一个脉冲就执行一条指令的目的。而外来脉冲是通过按键产生的,因此单步执行实际上就是按一次键执行一条指令。v程序执行方式是单片机的基本工作方式。由于复位后pc=0000h,因此程序总是从地址0000h开始。v(1)
13、 振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的周期。 v(2) 状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后得到的。 v(3) 机器周期: 一个机器周期包含 6 个状态周期s1s6, 也就是 12 个时钟周期。 在一个机器周期内, cpu可以完成一个独立的操作。 v(4) 指令周期: 它是指cpu完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。mcs - 51 系统中, 有单周期指令、双周期指令和四周期指令。33 单片机系统开发环境及工具单片机系统开发环境及工具v3.1 3.1 单片机开发语言的选择单片机开发语言的选择v
14、单片机的应用首先要考虑的是它的开发平台,也即我们常说的开发环境。现阶段,国内的大部分单片机开发工程技术人员还是普遍使用汇编语言编写程序。v汇编语言的优点:代码最小,最直接,效率最高。v汇编语言的缺点:编程员必须十分了解所用单片机的硬件结构,程序编写困难,代码难以理解,不易于识读,难于移植,排错困难,编写程序花的时间相当多,调试不便等等。现在已有相当的开发器材支持高级语言的使现在已有相当的开发器材支持高级语言的使用和调试,为单片机的开发应用提供了更好的物用和调试,为单片机的开发应用提供了更好的物质条件。质条件。 高级语言(如c语言)的优点:开发周期短,易于识读,容易移植,也便于初学着掌握。 高级
15、语言(如c语言)的缺点:产生的代码过长、运行速度慢、 但是随着单片机技术的发展,高级语言的弱点也已被较大的克服,象mcs-51上的c语言的代码长度,如果未加上人工优化条件,也可做到最优汇编程序水平的120%150%,这也相当可观了。可以说相当于中等汇编程序员的水平。 vamerican automation 编译器通过#asm和endasm预处理选择支持汇编语言,汇编速度慢,要求汇编的中间环节。 vfranklin它的前身是keil,它以代码紧凑领先,可产生最少的代码。它支持浮点和长整数,重入和递归。它不提供库的源代码,不能生成能汇编的汇编代码,仅产生混合代码,只能修改后汇编。若使用汇编语言,
16、必须分开汇编程序,然后手工连接。keil/franklin专业级开发工具pk51,支持dos话windows环境。3.2 3.2 目前的常用目前的常用c c语言编译器介绍语言编译器介绍varchimedes 它的鼻祖是瑞典的iar,是支持分组开关(bank)的编译器,集成环境类似于borland和turbo,c编译器可产生一个汇编语言文件,然后再用汇编器。vbso/tasking 它是一家专业开发和销售嵌入式系统软件工具的公司。它生产基于windows的集成开发环境、调试器和交叉模拟器,支持鼠标,介面友好。软件格式符合intelomf-51和intel hex标准,它的汇编器和intel汇编器
17、兼容。vmicro computer controls 它不支持浮点数,长整数,结构和多维数组,定义不允许有参数,生成的源文件需由intel或mcc的8051汇编器汇编。 3.3 3.3 单片机系统开发环境及工具单片机系统开发环境及工具v单片机应用系统开发必须经过调试阶段,只有经过调试才能发现问题,改正错误,最终完成开发任务。实际上,对于较复杂的程序,大多数情况下都不可能一次性就调试成功,即使是资深程序员也是如此。v单片机只是一块芯片而已,本身并无开发能力,要借助开发工具才能实现系统设计。开发工具主要包括电脑、编程器(又称写入器)、仿真机。如果使用eprom作为存储器还要配备紫外线擦除器。其中
18、必不可少的工具是电脑和编程器(当然对于在线可编程(isp)的单片机,如89s51,也可以不用编程器,而通过下载电缆下载)。3.3.1 3.3.1 仿真机及其使用仿真机及其使用v(1) 开发环境v单片机程序的编写、编译、调试等都是在一定的集成开发环境下进行的。v集成开发环境仿真软件(ide)将文件的编辑,汇编语言的汇编、连接,高级语言的编译、连接高度集成于一体,能对汇编程序和高级程序进行仿真调试。v单片机程序如果是汇编编写的,文件名后必须加后缀名“.asm”。如果是c51编写的,必须加后缀名“.c”。(2) (2) 仿真机的使用仿真机的使用v为了实现目标系统的一次性完全开发,必须用到仿真机(也称在线仿真机)。在线仿真机的主要作用是能完全“逼真”地扮演用户单片机的角色,且能在集成开发环境中对运行程序进行各种调试操作,即时发现问题,即时修改程序,从而提高工作效率,缩短开发周期。v使用时,在线仿真机通过rs-232插件与电脑的com1或com2端口相连。在断电情况下,拨下用户系统的单片机和eprom,代
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论