单片机控制装置与调试任务一单片机概述及应用课件

上传人:风*** 文档编号:231878691 上传时间:2023-09-10 格式:PPT 页数:49 大小:3.01MB
返回 下载 相关 举报
单片机控制装置与调试任务一单片机概述及应用课件_第1页
第1页 / 共49页
单片机控制装置与调试任务一单片机概述及应用课件_第2页
第2页 / 共49页
单片机控制装置与调试任务一单片机概述及应用课件_第3页
第3页 / 共49页
点击查看更多>>
资源描述
第一部分第一部分全国中职学校单片机控制装置与调试技能大赛模块分析制作人:付少华2019年10月单片机控制装置与调试重庆大学出版社第1页,共49页。L/O/G/O任务一任务一 单片机概论及应用单片机概论及应用第2页,共49页。一、单片机概念单片机概念及基本结构及基本结构1、单片机概念单片机概念:单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,第3页,共49页。在工业控制领域的广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。单片微型计算机简称单片机,是典型的嵌入式微控制器(MicrocontrollerUnit)。图1.1芯片实物图第4页,共49页。2单片机基本结构单片机基本结构MCS-51系列单片机的内部功能模块图如图1.2所示。从图1.2中可看出,MCS-51单片机组成结构中包含运算器、控制器、片内存储器、4个I/O口、串行口、定时器/计数器、中断系统、振荡器等功能部件。其中还包括堆栈指针寄存器SP,程序计数器PC,程序状态字寄存器PSW,数据指针寄存器DPTR。具体功能如下:第5页,共49页。图1.2单片机内部功能模块图第6页,共49页。(1).运算器运算器运算器由运算部件算术逻辑单元(Arithmetic&LogicalUnit,简称ALU)、累加器和寄存器等几部分组成。ALU的作用是把传来的数据进行算术或逻辑运算,输入来源为两个8位数据,分别来自累加器和数据寄存器。ALU能完成对这两个数据进行加、减、与、或、比较大小等操作,最后将结果存入累加器。例如,两个数6和7相加,在相加之前,操作数6放在累加器中,7放在数据寄存器中,当执行加法指令时,ALU即把两个数相加并把结果13存入累加器,取代累加器原来的内容6。第7页,共49页。运算器有两个功能:执行各种算术运算。执行各种逻辑运算,并进行逻辑测试,如零值测试或两个值的比较。运算器所执行全部操作都是由控制器发出的控制信号来指挥的,并且,一个算术操作产生一个运算结果,一个逻辑操作产生一个判决。第8页,共49页。从逻辑功能上看,计算机网络可以分成两从逻辑功能上看,计算机网络可以分成两个子网:个子网:资源子网资源子网和和通信子网通信子网。1.资源子网:提供资源共享所需的硬件、软件及数据等资源,提供访问计算机网络和处理数据的能力。主要由主机系统、终端和终端控制器组成。2、通信子网:完成数据的传输、交换以及控制,提供计算机网络的功能。包括传输线路、节点交换机、网控中心等设备,是一个计算机网络性能优劣的关键。第9页,共49页。(2).控制器控制器由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成,是发布命令的“决策机构”,即协调和指挥整个微机系统的操作。其主要功能有:从内存中取出一条指令,并指出下一条指令在内存中的位置。对指令进行译码和测试,并产生相应的操作控制信号,以便于执行规定的动作。指挥并控制CPU、内存和输入输出设备之间数据流动的方向。第10页,共49页。(3).主要寄存器主要寄存器累加器A累加器A是微处理器中使用最频繁的寄存器。在算术和逻辑运算时它有双功能:运算前,用于保存一个操作数;运算后,用于保存所得的和、差或逻辑运算结果。数据寄存器DR数据寄存器通过数据总线向存储器和输入/输出设备送(写)或取(读)数据的暂存单元。它可以保存一条正在译码的指令,也可以保存正在送往存储器中存储的一个数据字节等等。第11页,共49页。指令寄存器指令寄存器IR和指令译码器和指令译码器ID 指指令令包包括括操操作作码码和和操操作作数数。指指令令寄寄存存器器是是用用来来保保存存当当前前正正在在执执行行的的一一条条指指令令。当当执执行行一一条条指指令令时时,先先把把它它从从内内存存中中取取到到数数据据寄寄存存器器中中,然然后后再再传传送送到到指指令令寄寄存存器器。当当系系统统执执行行给给定定的的指指令令时时,必必须须对对操操作作码码进进行行译译码码,以以确确定定所所要要求求的的操操作作,指指令令译译码码器器就就是是负负责责这这项项工工作作的。其中,指令寄存器中操作码字段的输出就是指令的。其中,指令寄存器中操作码字段的输出就是指令 程序计数器程序计数器PC PC用用于于确确定定下下一一条条指指令令的的地地址址,以以保保证证程程序序能能够够连连续续地地执执行行下下去去,因因此此通通常常又又被被称称为为指指令令地地址址计计数数器器。在在程程序序开开始始执执行行前前必必须须将将程程序序的的第第一一条条指指令令的的内内存存单单元元地地址址(即即程程序序的的首首地地址址)送送入入PC,使它总是指向下一条要执行指令的地址。,使它总是指向下一条要执行指令的地址。地址寄存器地址寄存器AR 地地址址寄寄存存器器用用于于保保存存当当前前CPU所所要要访访问问的的内内存存单单元元或或I/O设设备备的的地地址址。由由于于内内存存与与CPU之之间间存存在在着着速速度度上上的的差差异异,所所以以必必须须使使用用地址寄存器来保持地址信息,直到内存读地址寄存器来保持地址信息,直到内存读/写操作完成为止。写操作完成为止。第12页,共49页。二、单片机外部引脚二、单片机外部引脚51系列和52系列单片机有40个引脚,其引脚图和各个引脚功能如下讲解。外部引脚示意图如图1.3所示。2、主电源引脚VCC(40脚):接+5V电源正端。VSS(20脚):接+5V电源地端。第13页,共49页。3、外接晶体引脚XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHMOS单片机,该引脚作为外部振荡信号的输入端。4、输入/输出引脚(1)P0口(3932脚):P0.0P0.7统称为P0口。在不接片外存储器与不扩展I/O口时,可作为准双向输入/输出口。在接有片外存储器或扩展I/O口时,P0口分时复用为低8位地址总线和双向数据总线。第14页,共49页。(2)P1口(18脚):P1.0P1.7统称为P1口,可作为准双向I/O口使用。对于52子系列,P1.0与P1.1还有第二功能:P1.0可用作定时器/计数器2的计数脉冲输入端T2,P1.1可用作定时器/计数器2的外部控制端T2。(3)P2口(2128脚):P2.0P2.7统称为P2口,一般可作为准双向I/O口使用;在接有片外存储器或扩展I/O口且寻址范围超过256字节时,P2口用作高8位地址总线。第15页,共49页。(4)P3口(1017脚):P3.0P3.7统称为P3口。除作为准双向I/O口使用外,还可以将每一位用于第二功能,而且P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。P3口的第二功能如表1.1所示。第16页,共49页。第17页,共49页。5、控制线控制线(1)ALE/PROG(30脚):地址锁存有效信号输出端。ALE在每个机器周期内输出两个脉冲。在访问片外程序存储器期间,下降沿用于控制锁存P0输出的低8位地址;在不访问片外程序存储器期间,可作为对外输出的时钟脉冲或用于定时目的。但要注意,在访问片外数据存储器期间,ALE脉冲会跳空一个,此时作为时钟输出就不妥了。对于片内含有EPROM的机型,在编程期间,该引脚用作编程脉冲PROG的输入端。第18页,共49页。(2)PSEN(29脚):片外程序存储器读选通信号输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期该信号两次有效,以通过数据总线P0口读回指令或常数。在访问片外数据存储器期间,PSEN信号将不出现。(3)RST/VPD(9脚):RST即为RESET,VPD为备用电源。该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机回复到初始状态。上电时,考虑到振荡器有一定的起振时间,该引脚上高电平必须持续10ms以上才能保证有效复位。第19页,共49页。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。(4)EA/VPP(31脚):EA为片外程序存储器选用端。该引脚有效(低电平)时,只选用片外程序存储器,否则单片机上电或复位后选用片内程序存储器。第20页,共49页。对于片内含有EPROM的机型,在编程期间,此引脚用作21V编程电源VPP的输入端。综上所述,MCS-51系列单片机的引脚可归纳为以下两点:第一点:单片机功能多,引脚数少,因而许多引脚都具有第二功能。第二点:单片机对外呈现3总线形式,由P2、P0口组成16位地址总线;由P0口分时复用为数据总线;由ALE、PSEN、RST、EA与P3口中的INT0、INT1、T0、T1、WR、RD共10个引脚组成控制总线,如图1.4所示。由于是16位地址线,因此,可使片外存储器的寻址范围达到64KB。第21页,共49页。图图1.4 总线结构图总线结构图第22页,共49页。三、三、单片机应用领域单片机应用领域单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:1.在智能仪器仪表上的应用在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。第23页,共49页。2.在工业控制中的应用在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。3.在家用电器中的应用在家用电器中的应用可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。第24页,共49页。4.在计算机网络和通信领域中的应用在计算机网络和通信领域中的应用现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。5.单片机在医用设备领域中的应用单片机在医用设备领域中的应用单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。第25页,共49页。四、四、KEIL C51软件的使用软件的使用单片机要运行,就必须将程序代码下载到程序存储器内部,但是在写进单片机之前要先将你写的程序转换成*.hex或*.bin的文件。不同系列的单片机都有不同的软件对其进行编译,而keilCx51是一个专为51系列单片机提供的软件开发平台基本上现在的所有51系列内核的单片机都是使用keil来调试和编译,在上面编写好程序后,将其编译成*.hex的十六进制烧写文件。然后再烧写到单片机系统中去。最后单片机就会按照你写程序的逻辑思维在电路上运行。下面以keilCx51V8.08版本为例,介绍如何使用Keil的集成开发环境。第26页,共49页。1 建立工程建立工程(1)双击桌面,启动Keil3软件,界面如图1-5所示。图1-5启动Keil3软件界面第27页,共49页。(2)点击点击New Project,建立工程界面如图,建立工程界面如图1-6所示。所示。图1-6建立工程界面第28页,共49页。2、新建一个工程新建一个工程(1).点击“Project”菜单,选择下拉菜单的“NewVisionProject”,会弹出如图1-7的窗口,在文件名一栏中填入你的想要的工程文件名,文件名是任由你决定的,但是一般是取带有特定意义的为文件名,这样比较容易管理和理解。在这里就取“test”意为测试的意思。图1-7建立新工程名界面第29页,共49页。然后点击保存。文件的扩展名为*.uv2(如图1-8),这是keil项目文件扩展名,以后我们直接双击打开这个文件就可以了。(2).点击保存之后会弹出如图1-9的窗口,要求选择芯片的型号,在这里我们选择“Atmel”内面的AT89S52如图1-10所示。第30页,共49页。图1-9选择设备系列芯片型号界面第31页,共49页。图1-10选择具体芯片型号界面(3).完成上一步之后点击确认。有可能会出现图1-11的对话框其意思是把标准8051的启动代码复制到本工程中去你只需要“否(N)”就可以了。图1-11启动代码复制到本工程中界面第32页,共49页。(4).完成以上步骤之后我们就可以见到的完成以上步骤之后我们就可以见到的keil界面如界面如图图1-12所示。所示。图1-12keil完整界(5).我们现在来编写第一个程序。点击“File”的下拉菜单中选择“New”的选项(或者点击图标)如图1-13所示。)如图1-13所示。第33页,共49页。图1-13新建文件界面第34页,共49页。(6).这时光标会在新建的“Text1”这个文本框中闪烁。其实现在已经可以编写程序了,但是建义大家还是先将这个空白文件保存好之后再来编写。点击“File”的下拉菜单中的“SaveAs”此时会弹出图1-14的对话框。在文件名中填入你想要的文件名,但是文件名最好是具有一定的代表意义,这样比较容易管理和理解。这里特别要注意的就是,如果我们用C语言来写程序的话,那么文件的扩展名一定要为.c,但是如果我们用的是汇编语言来写程序,那么文件的扩展名一定要为.asm,由于我们现在用C语言来编写程序,所以这里就取“test.c”,单击“保存”。原来的那个“Text1”的文件已经变成了我们刚才的那个“test.c”文件。当你按上面的程序步骤完成之后,还是看见“Text1”没有变这“test.c”文件,那只是你的keil没有刷新,你把它最小化,然后再还原就可以了。第35页,共49页。图1-14保存文件对话框第36页,共49页。(7).完成上一步之后,回到了图1-12的编辑界面,单击“Target”前面的“+”号,然后在“SourceGroup1”上右击一下,选中“AddFilestoGroup,SourceGroup1”就会弹出图1-15的对话框,选择我们刚才建立的那个“test.c”的文件。图1-15添加文件对话框第37页,共49页。(8).选择完之后,我们已经发现那刚才在图1-12右边的“SourceGroup1”下面多了一个“test.c”,如图1-16所示。图1-16添加文件之后的对话框(9)将文件加入将文件加入“Source Group 1”之后,增加文件的对话框并没有消失。这时其之后,增加文件的对话框并没有消失。这时其对话框还在等待添加其它的文件,如果你再单击对话框还在等待添加其它的文件,如果你再单击“Add”,就会出现图就会出现图1-17的对话框,的对话框,其意思是提示用户所选的文件已经在列表中。其意思是提示用户所选的文件已经在列表中。这时点击这时点击“确定确定”返回到增加对话返回到增加对话框,然后点击框,然后点击“Close”返回主界面。再在返回主界面。再在“Source Group 1”前面的前面的“+”号中点号中点击一下,你就会见到击一下,你就会见到“test.c”这个文件已在工程当中。这个文件已在工程当中。第38页,共49页。到这里一个完整的项目工程就建立完成了,下面让我们来学习如何调试程序。#include/包含所用单片机对应的头文件voiddelay_ms(unsignedinttime)/延时1毫秒程序n是形式参数图1-17所选的文件已在列表中界面第39页,共49页。unsignedinti,j;for(i=time;i0;i-)/i不断减1一直到i0条件不成立为止for(j=112;j0;j-)/j不断减1一直到j0条件不成立为止;voidmain(void)while(1)P1=0 x00;/点亮P1端口delay_ms(500);/把实际参数500传给n延时500毫秒也就是0.5秒P1=0 xff;/熄灭P1端口delay_ms(500);/把实际参数500传给n延时500毫秒也就是0.5秒第40页,共49页。上面是一个简单的C语言程序,只要将该程序的代码烧写到设备的电路中去,实验模块就会实现“亮,延时500毫秒,灭,延时500毫秒”这样不断循环闪烁。对于上面的程序,如果你是是一个初学者,可能还有好多问题是不明白的,在这里我们暂时不用去管它,在以后节章中我们会详细去研究它,在这里只是让大家有一个初步的认识。把程序装入keil之后的画面如图1-18所示。第41页,共49页。图1-18附有程序的界面第42页,共49页。3、设置工程设置工程(1).在图1-18的画面中点击,会弹出如图1-19的对话框。其中有10个选择页。选择“Target”项,也就是图1-19的界面。图1-19目标选项界面第43页,共49页。在图1-19中,晶振的频率值12MHZ,默认是所选单片机最高的可用频率值。该设置值与单片机最终在电路运行中的程序代码是无关的,这只是供我们在软件调试时,显示程序执行的时间(关下如何看时间,这个在后面节章中会详细讲解),一般设置为单片机运行的晶振值(实验模块的晶振值为12MHZ),正确的设置可以显示单片机的实际运行时间,但是如果你在调试程序时不是很关心程序的运行时间,那你也可以不用理会它。(2).在图1-19的画面中点击“Output”页,会弹出如图1-20的对话框。图1-20代码输出生成界面第44页,共49页。在图1-20的对话框中,是生成烧写文件的选项,它的扩展名是“.hex”在默认的情况下是未被选中的。因为我们稍后要将程序烧写到实验板中去,所以在这里选中该项。在默认情况下这个“.hex”文件的存放路径与我们开始时建立项目工程的存放路径相同。只要将这个“.hex”的文件烧写到单片机里面去,其运行的结果与你想象中的一致,那你的电子产品就开发成功了。(3).在图在图1-20的画面中点击的画面中点击“Debug”页,会弹出如图页,会弹出如图1-21的的对话框。对话框。第45页,共49页。图1-21Debug界面第46页,共49页。Keil提供了两种调试方式。一种是“软件模似仿真”一种是“硬件仿真”。在软件模似仿真的模式下完全不需要硬件的支持如目标板、仿真器、开发板、实验板等。在这种模式下我们可以观察单片机内部的运行情况,如运行时间、寄存器的状态、变量状态等。一般非常简单的程序你就可以这样调试,但是如果较为复杂的程序,这样来调试就较为困难。还有一种就是硬件仿真,它是利用仿真器与keil连接起来在硬件中看到真实的运行情况,但是硬件仿真有一样是做不到的,那是看不到程序运行时间,这一点也只有软件仿真才能做到。第47页,共49页。五、总结五、总结在第一章主要讲解了单片机的基本概念、内部结构、引脚功能,另外还讲解了Keil3软件的用法。同学们应该理解其功能和用法。第48页,共49页。xiexie!xiexie!谢谢!谢谢!第49页,共49页。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!