《单片微机原理及应用备课提纲课件》由会员分享,可在线阅读,更多相关《单片微机原理及应用备课提纲课件(78页珍藏版)》请在金锄头文库上搜索。
1、第一章第一章 微型计算机的基本概念微型计算机的基本概念第一节第一节 概述概述一、微机一、微机 微(型)机的意义微(型)机的意义: 价低、体小、功能强,且不断提高渗透各行各业,药中甘草. 超大 计算机计算机 微可组成超大 单片机单片机 集成化微机 微微(型型)机的用途机的用途: 工控:实时控制 (1)专用机的用途 检测:仪器仪表 产品:嵌入式家电玩具管理(2)通用机的用途 CAD通讯 1 微(型)机的组成微(型)机的组成 图1-1 五大件五大件 I设备、0设备又称外设(含外存) 运算器、控制器构成CPU(微处理器)(算盘)(人)存贮器存原始数据(程序、表格、常数)(纸、笔)中间结果最后结果控制器
2、除输出控制命令外,还接受I、0设备的状态信息2 三大块三大块 外设CPU内存后二者构成主机接口处含必要的接口电路 另外还有总线另外还有总线 CPU内部单总线CPU对外三总线是挂,不是接死缓冲分时复用 系统系统 CPU+ROM、RAM+接口电路+外设+电源+软件前五项为硬件外设如键盘、数显、CRT、行打等单板机前四项装在一块板上单片机前三项主机(裸机)3微(型)机的软件微(型)机的软件 指令指令 计算机按指(定的命)令进行各种操作每条指令对应一种特定的操作,如传送、加法、加1等指令群预存于ROM计算机自动顺序执行,除非转移、转子、中断(特殊的转子) 程序程序 完成一种任务的指令的集合软件即各种程
3、序(图1-9) 只对计算机有用,否则一堆废料! 指令系统指令系统 计算机设计与生产者使该计算机具有的指令的集合微(型)机的机型。微(型)机的机型。4二、单片机单片机的发展历史19711976萌芽阶段4位机家电、计算器、高级玩具19761980初级8位机MCS-48系列一般工控、智能化仪器仪表19801983高级8位机MCS-51系列可用作智能终端、多机通信1983今16位机MCS-96系列有A/D转换,通信能力提高,高速控制 单片机的特点轻小省廉电源容量小RAM、ROM 容量小但易扩展可靠性高,抗干扰好按工控环境设计集成于片内满足工控转移、位处理、I/O口逻辑操作功能强5单片机的应单片机的应用
4、用电脑型产品电脑型产品 家电、玩具、游戏机、声象设备 办公设备、电子秤、收银机、厨房设备仪器仪表仪器仪表 可测量、可处理(运算、误差修正、 线性化、零漂处理)、可监控 实现数字化、 智能化。 机电一体化机电一体化数控机械、缝纫机械、医疗设备、 汽车计算机外设计算机外设 打印机、绘图仪、智能终端一般工控一般工控 温控、液面控制、电镀生产线、多机应用多机应用 加工中心机床、要求高的数据采测系 统,分层控制、 6三三. 计算机中的数与码制计算机中的数与码制二进制二进制物理状态明确:1开通0关断;硬件成本比十进制字长字长8位机8位二进制数,也有16326441位的字节字节一般8位二进制数各位符号各位符
5、号D7D6D5D4D3D2D1D0左高右低70,不是81!256种变化(0255,256个数)到256溢出,又成071 1、十进制数、十进制数 D D 日常生活用2 2、二进制数、二进制数 B B 计算机用 1K=1024!(数大用它计数方便)3 3、八进制数、八进制数 Q Q 三位二进制数 较少用4 4、十六进制数、十六进制数 H H 四位二进制数 用得多,8位二进制数 分成前后二个十六进制数5 5、BCDBCD码码 二二-十进制数十进制数 二进制编码的十进制数 8、4、2、1 例:4978.149 (0100 1001 0111 1000.0001 0100 1001)BCD6 6、ASC
6、IIASCII码码 美国标准信息交换码(见附录A) 以7位二进制数构成,D7用作奇偶校. 串行传送 7位二进制数可表示128个字符 09 用3039H表示 加帽30H(48) AF 用41H46H表示 加帽37H(55) (AZ) (41H5AH)8带符号的数带符号的数 D7符号位,=0为正数,=1为负数;D6D0为数字位。1、原码、原码 例4、32、1272、反码、反码 正数反码=原码例+4、+32、+127 负数D6D0按位取反例-4、-32、-1273、补码、补码 正数补码=原码例+4、+32、+127 负数D6D0按位取反加1例-4、-32、-127取反是以全1(255)为准,要加1(
7、成256)为补 +4-4+32-32+127-127原码000001001000010000100000101000000111111111111111反码000001001111101100100000110111110111111110000000补码000001001111110000100000111000000111111110000001反码是过渡,补码可使加法成减法,计算机只做加法和逻辑处理9例例 64-10=64+(-10)01000000+)111101100011011064补+-10补=64+118=182=54补加数、被加数、结果都用补码又例又例 34-68=34+(-
8、68)00100010+)101111001101111034补+-68补=34+60=94=-34补(减法)(加法)钟表10点拨到3点可退7,可进57+5=12,补的关系10第二节第二节 微处理器微处理器 图图1-141-14 运算器运算器 1、ALU 2、A 3、F C、AC、OV、P、Z 4、BCD调整 5、TR 控制器控制器 1、IR 2、ID 3、定时电路 控制电路 工作寄存器组工作寄存器组 提高计算机速度,简化指令的机器码 程序计数器程序计数器 指针 三种功能 数据总线,地址总线,控制总线数据总线,地址总线,控制总线 内部总线内部总线 另内部控制线11工作过程举例工作过程举例 P.
9、248+4+5=?粗讲指令、程序书写格式工作过程:取指访问内存(PC)为地址,经AB,在ROM中选中某单元PC+1读回指令经DB,到CPU,经IR、ID、定时和控制电路发各控制信号执行(或再取下一字节双字节指令)重复取指执行存贮单元内容:“百读不变”“一写就变(ROM不可写、RAM可写)前客让后客”12第三节第三节存贮器存贮器体积意义意义计算机性能的关键速度价格指标指标:存贮容量,读写周期、可靠性、耗电与集成度、价格分类分类:图1-15并行(位数)、串行内存分RAM和ROM两种RAM随机可读写,存数据(I、O、中间、结果),失电丢失双极型快、少MOS型静态图1-17集成度价格功耗不如动态,勿需
10、刷新动态图1-192mS刷新一次,过去用得少,现发展快ROM只读,存程序、常数、表格,失电不丢失掩摸ROM价低、大批量、用于产品RROM用户编程,一次性,熔丝式EPROM当前用得多,可擦(紫外线),可反复写(不在线)擦EEPROM电可擦,可编程,大有前途13结构结构 存贮体 外围电路 AR、AD、I/0电路 图1-16堆栈堆栈 RAM的一个区域 堆 先进后出、后进先出, 硬币盒栈放断点地址(先低后高)、现场信息 压入指令PUSH 、弹出指令POP 图1-25 (保存现场) (恢复现场) 保存断点在执行调子指令时由硬件实现 入栈 恢复断点在执行返主指令时由硬件实现 出栈 SP 堆栈指针、专用寄存
11、器 专指栈顶 其值程序初先设定(定栈底该单元空) 以后随进、出栈自动浮降(指栈顶该单元满) 14第四节第四节 I/O接口电路接口电路 一一. 概述概述 计算机系统必有计算机系统必有I/O设备设备 外存也可看作外设外存也可看作外设,要与要与CPU交换信息交换信息.15 外设与计算机间要传递数据外设与计算机间要传递数据、状态状态、控制信息控制信息, 速度悬殊速度悬殊, 快速如磁盘快速如磁盘, 250000位位/秒秒; 慢速每字符为秒级慢速每字符为秒级. 传递要媒介传递要媒介, 如中间人如中间人, 二手牵二手牵, 这就是这就是I/O接口电路接口电路. CPU只认接口电路只认接口电路, 可设多个端口可
12、设多个端口, 数据端口数据端口8 位位; 状态和控制端口有时只状态和控制端口有时只1位位, 可合用可合用. 功能功能 数据数据: 缓冲缓冲锁存锁存、信息转换信息转换、电平转换电平转换. 地址地址: 译码选中译码选中. 控制控制: 状态信息状态信息 中断申请中断申请 控制信息控制信息16二、CPU与外设间数据传送方式(一)无条件传送(同步方式)外设总准备好外部参数变化慢(一段时间内不变)(二)条件传送(异步方式) 查询传送方式不一定准备好(或空)条件异步要查询外设CPU等,反复查询,到条件满足,才I或O。图1-31CPU受牵制,不能作它用。不断问,象“老和尚念经”.(三)中断传送方式CPU先发启
13、动外设工作命令,即可做自己工作。外设准备好或空,请求中断,中断原程序,转中断服务程序(I、O),服务好,返原程序,仍做原工作,直待下次请求中断,CPU与外设(或多个外设)可同时工作。CPU做更需CPU做的事“急症病人”胡荣华除与一名手下棋,再加很多“一般棋手”。17(四) 直接数据通道传送(DMA) CPU靠边,交出总线例:某外设以100字节/s传送,如送100字节 查询: : 用1s 中断: :中断服务程序每执行一次100s, 100100s=10毫秒 1/100! DMA: 不需保护现场、断点 不需恢复现场、断点18三、中断三、中断用途:用途:分时操作CPU、外设同时工作几个外设同时工作实
14、时处理监控现场参数、装置在任意时刻发中断请求,CPU及时处理故障处理如电源中断(通过中断程序,CPU自行紧急处理大电容、备用电源)等。19中断源:引起中断的原因、能发中断请求的装置。I/O设备(含外存)外部实时时钟故障硬件软件构成工控的条件、检测电路程序断点优先权:排队多个中断源同时请求时,谁优先权高,响应谁,依次响应嵌套高优先权中断,中断低优先权中断响应过程:开中(包括接口电路)是否响应?(优先权)如响应,要现指令执行完20大致的过程如右(可稍有出入)注意顺序、自动完成的功能(例如开中、关中)有的需撤消中断请求信号防止多次响应保存断点(自动)转相应中断服务程序入口地址(有时多次转)中关中断保
15、存现场服开中(如可嵌套)务子程真正中断服务程序序关中(如可嵌套)恢复现场开中(如不嵌套)恢复断点继续原程序21第二章第二章MCS-51系列单片机的硬件结构系列单片机的硬件结构第一节第一节MCS-51总况总况产品简单介绍P45表2-3一、一、MCS-51性能性能P39二、结构框图二、结构框图图2-1三、引脚说明引脚说明图2-2、表2-1第二节第二节微处理器微处理器一、运算器一、运算器算逻单元除一般算逻操作外,可:、(在B配合下),交换,比较判跳,有强的位操作功能。(A)(A)+#data(A)(A)#dataAINCAADDA,#dataANLA,#dataRLACLRAPSW图2-3C、AC、
16、FO、RSI、RSO、OV、P算逻单元除一般算逻操作外,可:、(在B配合下),交换,22二、控制器二、控制器三、振荡器和三、振荡器和CPU时序时序1、振荡器、振荡器图2-42、时序、时序图2-5PC指下一指令的地址读单字节单周期指令INCA读双字节单周期指令ADDA,#data23第三节第三节存贮器存贮器单片机单片机必含RAM、ROM:用途、容量表2-3:803180518751一、一、ROM1.编址与访问编址与访问寻址范围:64K0000HFFFFH扩展裕量大编址:先片内、再片外,片内、片外连续,不重叠EA:(高)(低)(只片外)调试程序:可重叠!2.七个特殊单元七个特殊单元表2-4放跳转指
17、令24二、二、RAM1、编址与访问编址与访问51007FHRAM,80FFHSFR5200FFHRAM,80FFHSFR访问见表2-5片外片外可64K单元,用DPTR数据指计寄存器可访问0000HFFFFH可256单元,R间址都用MOVX指令访问ROM用MOVC指令,访问片内RAM用MOV指令,地址均可重复252、片内、片内RAM有三个区有三个区图2-8工作寄存器组区工作寄存器组区00007H1080FH21017H3181FH位寻址区位寻址区202FH数据缓冲区数据缓冲区栈区设置栈区设置原始SP指向07H,可改设,一般2FH或更大3、SFR表2-7不包括PC5118个(内3个双字节)12个可
18、位寻址表2-75221个(内5个双字节)direct指令27条且可位寻址访问未定义字节无意义!位寻址用途例SETBD3R区改用1组26第四节第四节定时器定时器/计数器计数器用途:用途:最重要接口定时器:定时器:定时检测、采样或控制(例步进电机)计数器:计数器:计数、延时一、定一、定/计计0、1的结构的结构图2-916位加1计数器高8位低8位TH0TL0对TCY(机器周期脉冲)计数TH1TL1定时值、计数值由初值设定决定1、TMODP52高半字节定/计1,低半字节定/计0门控端定/计选择方式选择M1、M0其决定见表2-827 2 2、TCONTCON P.53 高半字节TR0、TR1,TF0、T
19、F1 低半字节 外部中断用 起动 TR0、TR1 由软件置1或清零 溢出 TF0、TF1 置1,中断请求 响应后清零二、定二、定/ /计计0 0、1 1的工作方式的工作方式 方式方式0 0 图2-10 M1、M0为00 13位定/计(TL1高3位未用) C/T=0 定时器 对内部时钟Tcy计数 可213s C/T=1 计数器 对外部脉冲(T1引脚)计数 可213次 计数值=213初值 定时值=(213初值) Tcy 溢出后要重置初值 TR启停与门控方式(可测 INT1、INT0上正脉冲宽度) 采样计数脉冲的时序决定对计数脉冲的要求(频率、宽度)28方式方式1M1、M0为0116位定/计216s
20、或216次计数值=216初值定时值=(216初值)Tcy溢出后要重置初值其它情况可参照方式0推知例2-2定初值TMOD编程初始化程序方式方式2图2-11M1、M0为108位定/计28s或28次溢出后能自动重置初值方式方式3图2-12M1、M0为11 仅定/计0可此时定/计1作串行口的波特率发生器定/计0为二个8位定/计用TR0、TF0、TL0借用TR1,TF1,THO非门控三、定三、定/计计2自学自学29第五节并行I/O口4个准双向口,可并行I、并行O、位I、位O。P1口:通用I/O口图2-15一位输出锁存输入缓冲驱动输出(写)如MOVP1,#data51无I/O指令经锁存器输入(读)如MOV
21、A,P1先输出1,“准”!由引脚复位后为1,可I修改(端口操作)可与、或、异或、+1等(P.60)“读修改写”锁存器在CPU锁存器负载能力约4个(实3个)LSTTL不须上拉电阻52子系列P1.0作T2,P1.1作T2EX.30P2口:高8位地址总线通用I/O口图2-16内部控制信号选择其功用访片外ROM右(锁)不变不能再作它用通用I/O口左似P1口未用作地址线的位(I、O、修改、负载能力)P3口:通用I/O口第二功能(表2-1)图2-17通用I/O口第二功能输出端=1!余同P1口第二功能(锁)必=1!输入由缓冲器3P0口:地址/数据分时复用总线通用I/O口图2-18(地/数总线)访片外存贮器控
22、制信号=13、4不同时出1T2、T1不同时通T2通为1,T1通为031(通用I/O口)无片外存贮器控制信号=0同P1口如输入T1、T2都不通引脚悬浮如0C、0D如输出T2不通OD都要上拉电阻负载能力8个LSTTL串行口单工、半双工、全双工并行通信快硬件多,线多;如线长,干扰、压降、费用均上升(图2-19)串行通信慢硬件少,线少;适于通信(图2-19)双机多机异步通信图2-208位数据1帧9位数据1帧第9位多作数据/地址辩别起始位0停止位1空闲位1同步通信图2-21同步帧快位宽(每位时间)波特率(每秒位数)32SCONSM2多机通信用SM0、SM1决定工作方式表2-11(为1)REN起动接收由软
23、件置1或清零起动发送例:MOVSBUF,ATB8发送的最高位(第8位)数据方式1不用RB8接收的最高位(第8位)数据方式1放停止位TI发送全一帧信息置位,申请中断或接受查询RI接收全一帧信息置位,申请中断或接受查询由程序清零33工作方式:方式0多用扩展并行I/O口fOSC/12方式1双机通信8位可变(定/计1溢出)方式2多机通信9位fOSC/64或fOSC/32方式3多机通信9位可变(定/计1溢出)波特率方式0fOSC/12方式2SMOD=0fOSC/64SMOD=1fOSC/32方式12SMOD定/计1溢出速率1/32方式32SMOD定/计1溢出速率1/32SMOD电源控制寄存器的最高位方式
24、0图2-22放第四章讲34第七节第七节中断系统中断系统图2-28一、中断源二种讲法(1)申请者(2)申请种类(机器角度)稍有不同!二中断屏蔽寄存器IEP.71上半页1允中0屏蔽EA总其它诸中断三、中断优先级寄存器IPP.71下半页先分高低级(图2-28)同级的查询顺序定高低另,TCON低半字节IT1、IT0=0电平触发1跳变触发IE1、IE0下降沿置1,中断响应后清零四、中断响应过程入口地址中断矢量RETI返回,不用RET五、中断请求的撤除图2-29多用一D触发器在中断服务程序用与、或指令使P1.0有一负脉冲,Q为高。35第八节第八节特殊工作方式特殊工作方式1、复位复位电路图2-30复位后状态
25、表2-12 PC0000H,PSW工作寄存器0组栈区08H起,各并行I/O口可IIP都低优先级,IE都禁中定/计初值为0,SBUF不定其它常用寄存器一般都00H2、节电新工艺芯片掉电等待自学36第三章MCS-51系列单片机的指令系统和汇编语言程序示例第一节汇编语言与指令系统重述机器语言、汇编语言、高级语言汇编语言程序设计的重要性:小系统,工具放不下,单片机!程序效率高,占用时间、空间少,小系统和实时.学微机:软件、硬件结合,深入融汇贯通.指令系统:111条指令五大类简明整齐指令短单字节49双字节46三字节16指令周期短适于工控!位操作强指令汇总表例见表3-1助记符寻址便于手译长度时间操作码操作
26、数操作功能机器码字节数Tcy37第二节第二节寻址方式寻址方式寻址方式特征访问寻址范围用途例1、立即寻址前缀#MOVA,#30H(A)#30H2、寄存器寻址RiR48单元存取操作数MOVA,R2(A)(R2)ADDA,R2MOVR3,A3、寄存器间址前缀RAM28=256单元存取操作数MOVA,R1Rj(51只128单元)(A)(R1)4、直接寻址addrROM64K、2K给出跳转或调子地址directRAM007FH128各类指令表SFR21(51)存取操作数自己找26(52)位操作指令直接寻址位221(位)5、基寄+变寄间址ROM64KMOVC指令MOVCA,A+DPTRPC或DPTRAMO
27、VC指令(查表)MOVA,A+PC6、相对寻址偏移量relROM255程序浮动CJNEA,#FFH,rel(补码)(PC-128+127)38第三节第三节数据传送类指令数据传送类指令一、指令表一、指令表表3-1 7个小类29条用得多,占75%以以A为一方为一方6条三对互逆,含其它特征的未列入,寻址片内RAM(含SFR),i0-7,j0-1(只R0、R1),direct128+21+26;唯一可寻址SFR,nn地直接寻址地址不以不以A为一方为一方direct类!5条,二对半,第5条机器码nn地源nn地目的勿颠倒立即数置数立即数置数置数类nn立即数第5条唯一16位传送指令nn高nn低(#data1
28、6位)39访问片外访问片外RAMMOVX指令,寻址片外RAM前2条R间址,寻址28单元后2条DPTR间址,寻址64K单元(基址基址)+(变址变址R)MOVC指令,访问ROM,查表基址R:PC或DPTR,寻址64K单元变址R:A,变址28单元交换交换51指令系统特色(多、快、灵活)3条整字节交换2条半字节交换操作数都未丢失(冲走)进栈出栈进栈出栈堆栈操作类,压入、弹出指令只与direct有关128+21+26条,丰富40二、例二、例1、R寻址指令寻址指令P.82一条实为8条,或32条,确切R地址与RS1、RS0值有关2、I/O指令指令P.83如direct为80H、90H、A0H、B0H,MOV
29、A,direct为I指令,MOVdirect,A为O指令,不以A为一方的也可作I、O指令3、机器码、机器码接上例MOVR5,A为FDH4、算字节数、算字节数算算Tcy数数再接上例MOVA,R1较MOVA,50H孰优?设(R1)=50H(50H)=FFH得(A)=FFH(A)(RI)机器码E7H1字节机器码E5H、50H2字节1Tcy1Tcy但左先要有MOVRI,#50H即添机器码A9H50H二字节1Tcy!direct是是MCS-51指令系统特色指令系统特色415、MOVX指令指令P.85例又:扩展I/O口的I/O指令6、双、双direct指令指令接上例MOVdirect,direct指令好,
30、直捷7、MOVC指令指令P.85末注意(PC)的值严格说:(PC)为下一字节的地址,不是当前地址8、交换指令、交换指令P.86三例9、堆栈操作指令、堆栈操作指令P.87PUSH先调栈计,自动上浮(+1),后压栈顶总满POP先弹,后调栈计,自动下降(-1)但栈底空42第四节第四节算术操作类指令算术操作类指令一、指令表一、指令表表3-25个小类24条快(一般1Tcy,INCDPTR2Tcy,4Tcy)加法加法共8条,不带C,4条;带C,4条不带C适用于单字节或多字节的最低字节、带C适用于多字节的高字节相加影响C、AC、OV减法减法4条,总带C;影响C、AC、OV加加15条第4条可“读修改写”端口减
31、减14条第4条可“读修改写”端口,无DECDPTR其它算术操作其它算术操作3条DA只用于BCB码加法,不能用于BCD码减法影响CMUL、DIVA与B配合,中间无“,”AB积存B、A,C清零,OV:积255置位,255复位A/B,商在A,余在B,C清零,OV:(B)=0置位,0复位43二、例1、有符号数指令注意OVP.89、P.90四例(OV=1)上次课先布置予习,本次课细讲结论2、加法指令标志位P.89例3、减法指令标志位P.90例4、DA指令P.92例5、标志位P.93与表3-344第五节第五节逻辑操作类指令逻辑操作类指令一、指令表一、指令表表3-4,4个小类(含A操作),24条,不含位逻辑
32、操作,其中3条三字节,2Tcy,余均1Tcy与与指指令令6条,第4、6条送回direct:可“读修改写”端口以(A)或nn修改R、RAM、direct、A内容,用0清零、用1不变或或指指令令6条,第4、6条送回direct:可“读修改写”端口以(A)或nn修改R、RAM、direct、A内容,用0不变、用1置1异异或或指指令令6条,第4、6条送回direct:可“读修改写”端口以(A)或nn修改R、RAM、direct、A内容,用0不变,用1取反A操作操作也6条,A清零、A取反另4条移位,循环左移一位,小、大循环,图3-1,2循环右移一位,小、大循环,图3-1,245二、例1、与指令P.94二
33、例2、或指令P.95二例3、异或指令P.96二例4、A操作指令P.97二例第六节第六节程序转移类指令程序转移类指令一、指令表表3-73个小类16条均2Tcy另加NOP1条1Tcy不含位条件转移指令46无条件转移无条件转移4条长转移64K地址内(216)73(必转)相对长转移64K地址内(216)02nn高nn低绝对转移2K地址内(211)偶1nn地(低8位)(表3-5)相对短转移一页地址内(28)80nn相对要能手译偏移量rel条件转移条件转移8条(A)=0?2条;都相对比较4条;,转;后前,C置1;=,不转短转移后前,C清零;(R)=0?2条一条顶二条:DECRi(或Direct)(dire
34、ct)=0?灵活JNZrel调子与返回调子与返回4条长调子64K地址内(216)绝对调子2K地址内(211)奇1nn地(低8位)(表3-6)RETRETI恢复断点前,清IP而开中空操作空操作NOP延时程序等有用00H47二、例二、例1、绝对转移指令、绝对转移指令可寻址2K(8页)11位中高3位决定页数,但高5位变化有32种地址P.98例PC当前值决定的2K!本例特殊,跨到下一2K范围长转移指令长转移指令可寻址64K,但多用一字节不多用2、相对短转移指令、相对短转移指令rel多用符号地址机器汇编自动代真人工汇编基本功,勿算错P.99末例STMP$80FE483、相对长转移指令、相对长转移指令p.
35、100例多分支散转指令前5位后11位指明分别转1900H、1B00H、1C00H、1D00H4、比较指令、比较指令减1不为零转P.101例又例再例5、绝对调子指令、绝对调子指令P.102对照AJMP指令,但注意操作P.104例又例49第七节第七节位操作类指令位操作类指令一、指令表一、指令表表3-83个小类17条丰富,专门子集,适用于逻辑控制位传送位传送2条C和bit互换nn位直接寻址位四种表示方式(P.105)位逻辑操作位逻辑操作10条C3条清零、置1、取反bit3条清零、置1、取反C/bit、C/bit2条C/bit、C/bit2条位条件转移位条件转移5条C=1相对转移2条C1相对转移2条b
36、it=1相对转移2条bit1相对转移2条bit=1相对转移且清零1条50二、例二、例1、位传送指令p.105例2、位逻辑操作指令p.106例又例3、位条件转移指令p.107例又例51第八节第八节汇编语言源程序的格式和伪指令汇编语言源程序的格式和伪指令格式:(地址单元)(机器码)标号:操作码操作数;注释注意拉齐、空格、标点(如:、,、;)有的最前面冠以句号操作数可有0个、1个、2个(多数)、3个,有时是表达式。伪指令:注释性,计算机不执行ORG定义起始地址END结束指令,有时后随初址DB定义字节DW定义字DS定义字节数bit定义位,规定特定位以标号EQU字节(标号)赋值例:P.109P.1105
37、2第九节第九节算逻处理程序算逻处理程序常用、常见程序段逐渐会编程,提高技巧不是最优程序,但是可行程序,可:钻研(要求稍变)、思考,精益求精,试编,手译机器码先看,看几遍,由粗看,再细看,抓头绪,摘记、归纳,到看懂,到会编会编、会看、都是基本功。例3-1图3-4例3-2图3-5编程前,往往先编程序框图,要求(粗)具体(细)指令与程序考虑初始化(先考虑资源分配:R、内存单元、定/计等)设定地址指针、计数器、R或定/计置初值本例注意:C先置0、rel为F9H53例3-3自已举一反三看懂例3-4假定和小,不溢出注意ACALL指令的机器码,(A)的变化例3-5高字节最低位移入低字节最高位符号位不变,故可
38、适用于处理带符号数例3-6注意:最低字节处理要取反+1,其它字节单取反最低字节用ADD指令、其它字节用ADDC指令的用意例3-7排序上课自学、当堂答疑注意rel=0B、07、02,F0=D5例3-8自学,添机器码完善:设数串有L个数每输入两数间有时间间隔或输入一数时要查询某标志位问:START一定地址值很小,否则MOVA,P1前先MOVP1,#FFH为什么?54例3-9 排队看懂程序(参考表3-9)可相互讨论补流程框图添机器码例3-10两双字节无符号数相乘高字节低字节被乘数R7R6乘数R5R4对照表3-10,分成4段,部分积逐段提前一字节(似小学乘法竖式)注意:如何计及可能有的进位。5556例
39、3-14查表法籍DPTR查表籍PC查表参数传递TAB不必紧接TAB必需紧接巧妙且因有RET,三种(P.120)自学故要INCA子程序首句前要标号,末句为RET查表法也可用于例3-12,但TAB要接长DB41DB4257第十一节第十一节散转程序散转程序自学 要求彻底理解例3-15两种方法:AJMP、LJMP在p.100例基础上例3-16注意 PUSH与RET指令用法!第十二节第十二节延时程序延时程序软件延时,不添硬件,变化灵活,但占用CPU,多用,多为子程序例例3-171ms延时延时执行程序的耗时 循环数与NOP凑时间例例3-18250ms延时 上例调用250次自学自学58第十三节第十三节定定/
40、计应用程序计应用程序例3-191延时定/计01ms延时,定/计1 计数60000次,两者串接,CPU不占用1000=03E8H,初值应为FC18H60000=EA60H,初值应为15A0H0030H到005FH,初始化程序0060H到008FH,CPU作监控用,+调用子程序耗时 +0093H到00A3H用时,应1ms,不足1ms的部分用于JNB TFO,等待。例3-20读定/计“先读TH0、后读TL0、再读TH0”:防错自学59第十四节第十四节外部中断应用程序外部中断应用程序例3-21某工控系统 图3-8注意 INT00、INT01、INT02、INT03、DELAY的真实地址,AJMP转那里
41、撤除中断请求(常用于电平激活场合)保存与恢复现场外部中断入口地址例3-22利用外部中断实现程序转换图3-9、图3-10、表3-11数显(6位)的安排注意:复核各ACALL、AJMP指令的机器码,复核各rel(+5、ROUT1、ROUT2、)的值自学第十五节第十五节串行接口应用程序串行接口应用程序成绩好的自学,其它同学答疑、复习60第四章第四章MCS-51系列单片机的系列单片机的扩展展单片机每需扩展:ROM、RAM、并行I/O口、定/计等。扩展很方便。三总线结构图4-1如扩展的外接芯片多,要用总线驱动器,单向的、双向的。驱动器图4-2驱动器接法图4-361第一节第一节最小系统与程序存贮器的扩展最
42、小系统与程序存贮器的扩展一、最小系统未曾扩展不是应用系统,只是裸机接线图4-4803140根P2、P0地/数总线P1、P3电源2根接晶振2根EA、RESET接法ALE锁存地址(下降沿)PSEN取指(上升沿)271624根地址线11根(2K)输出数据8根CE、OE电源3根现多用2764以上(图4-6)(表4-1)37320根8进8出电源2根G、OE(图4-7、4-8、4-9)P2.0接A8P2.1接A9P2.2接A10不能乱接2732添P2.3接A11、2764添P2.4接A1262原理第一瞬间地址锁存S2P0为AB送A0A7到373锁存图4-5(ALE下降沿)第二瞬间取指S4P0为DBA0A7
43、由373送(PSEN上升沿)必须有地址锁存器(总线复用)二、程序存贮器的扩展带ROM的单片机一般小系统,简单用片外ROM的单片机,兼有的系统少用片外ROM容量干脆大图4-1027128图4-11多片图4-12线选法不用译码器多用单片图4-13译码法占用口线少图4-14寻址可两个64K63三、用EEPROM的程序存贮器扩展不用紫外线可在线改写发展快:闪存常用芯片图4-15表4-2、4-3、2864A、2864B扩展电路图4-16、4-17第二节第二节数据存贮器的扩展数据存贮器的扩展一、用静态RAM的扩展芯片图4-18表4-4、4-5、4-6扩展电路图4-19、4-20(图4-21、4-22自学)
44、兼有片外ROM、RAM的扩展电路图4-23(时序图4-24)二、用EEPROM的数据存贮器扩展图4-16PSEN改用RD三、用动态RAM的数据存贮器扩展图4-25发展快64第三节第三节并行并行I/O的扩展的扩展一、用多功能芯片的扩展表4-78155/8156256单元RAM定时器28+6口地址锁存器8255A38口8355/8755A2K单元ROM28口地址锁存器8255A芯片引脚图4-26表4-8结构图4-27表4-9端口地址方式控制字各位定义图4-28方式0(基本I/O)方式1(选通I/O)方式2(双向)只A口各状态控制信号表4-10置位/复位字表4-11例4-2、4-3扩展实例图4-29
45、例4-4、4-5658155/8156芯片芯片引脚图4-30表4-12结构图4-31表4-13端口地址写命令字定工作方式表4-14命令/状态R读状态字知A、B口与定时器状态定时器R图4-32定时器为14位减法器决定输出方式(图4-33)和计数初值扩展实例图4-34地址8755A芯片芯片引脚图4-35表4-15结构图4-36寄存器端口地址 读写条件表4-16扩展实例图4-37表4-1766二、用用TTL芯片的扩展芯片的扩展价低、种多、灵活通过P0扩展用74LS377扩展O口图4-38 图4-40图4-43用74LS244扩展I口图4-41图4-42图4-43三、用用8243的扩展的扩展自学四、用
46、串行口的扩展用串行口的扩展串行方式0可扩展很多口线,但速度下降并行I/O串行移位器CMOSTTL401474LS165图4-50409474LS164图4-52图4-49并行I程序p.164图4-51并行O程序p.165参考图2-22RXD(P3.0)串入或串出TXD(P3.1)CLK打拍P1.7串并选择67第五章第五章MCS-51系列单片机的接口与应用系列单片机的接口与应用第一节第一节扳键开关、拨盘开关、按钮、键盘的接口扳键开关、拨盘开关、按钮、键盘的接口一、扳键开关的接口一、扳键开关的接口置数、输入电平、操作分档等人机联系图5-1程序二、拨盘开关的接口二、拨盘开关的接口多见的是BCD码拨盘
47、开关,将置定的十进制数转成BCD码输入计算机图5-2用于参数设定直观,方便原理表5-1 也可得反码图5-3程序三、按钮的接口三、按钮的接口手按的短时内送出改变了的电平。要消抖 图5-4是硬件方法68四、键盘的接口四、键盘的接口单一按键似按钮但多数组合成键盘矩阵式重要的人机联系手段输入程序、数据、命令、控制程序走向全扫描查有未按、有未松图5-5逐行扫描查按的哪一键,转相应键处理程序何时扫描可主程序、可定时、可按键时申请中断以进行图5-6程序图5-7要介决: 消抖、每按一次响应一次、一键多功能 编键 号与转相应键处理程序,防止二键或多键同按69第二节第二节显示器与单片机的接口显示器与单片机的接口上
48、节输入器件,本节输出器件 ,都用于人机联系一、LED与单片机的接口用于信号指示输入、输出器件常通过扩展I/O口与单片机连接图5-8 程序二、LED数码管与单片机的接口用于数显输出前例3-22共阴极数码管、共阳极数码管,笔划信息可能按表3-10置反软件译码、硬件译码前者查表,后者用CD4511或74LS46、74LS47、74LS48、74LS49静态扫描、动态扫描静态扫描静态扫描无位选信号,笔划信息每位一路、同时送给,编程容易、简单,占用计算机时间少,显示清晰,亮度高,占用I/O线多,硬件多,成本高。常硬件译码图5-9p.172程序70动态扫描动态扫描用得更多,各管轮流点亮(视觉暂留)轮及时间
49、短、长都不行,性能与静态扫描相反图5-10下随程序三.8279芯片用得多含键盘输入和显示输出两种功能自学四.CRT与单片机的接口自学第三节第三节行程开关、继电器、晶闸管元件与单片机的接口行程开关、继电器、晶闸管元件与单片机的接口工控系统多用行程开关、继电器触点用于输入继电器线圈、SCR、双向SCR用于输出为屏除干扰,常用光耦、二套电源,或低电平端(接地端)分组71一、行程开关、继电器触点与单片机的接口一、行程开关、继电器触点与单片机的接口常开触点图5-1410F消抖10K 提供LED通路触点断开后,10F放电二、继电器线圈与单片机的接口二、继电器线圈与单片机的接口图5-15CLRP1.0后K吸
50、合最后接通电磁阀或小电动机,线圈旁并联二极管,供断电瞬间线圈反电势有泄放电路.三、晶闸管元件与单片机的接口三、晶闸管元件与单片机的接口图5-16SETBP1.0后双向SCR通,交流负载L得电.无触点控制;但继电器触点多,有利联锁,灵活多样。第四节第四节打印机与单片机的接口打印机与单片机的接口自学自学72第五节第五节A/D、D/A转换芯片与单片机的接口转换芯片与单片机的接口有检测、监控要求的系统常涉及模拟量,I要A/D,O要D/A计算机快,可多路、巡回图5-25采样频率应现场被测信号中最高变化频率的两倍,否则A/D、D/A都不能合用一、一、A/D转换芯片与单片机的接口转换芯片与单片机的接口四类
51、表5-91、5G14433131/2位BCD码输出双积分式转换速度110次/秒输出为199.9mv、1.999v要负电源结构 24个引脚图5-26时序 图5-27表5-10应用实例图5-28后随程序732、ADC08098路8位逐次比较式 有地址锁存转换快(100us)单一电源I:0+5vO:00FFH结构 28个引脚图5-29通道选择表5-11应用实例图5-30后随程序ADC0808ADC0816/0817二、二、D/A转换芯片与单片机的接口转换芯片与单片机的接口显示、控制1、DAC08328位双缓冲器多片同用可多参数同时输出(等齐)价廉、接口简单、转换控制方便,应用多结构20个引脚图5-3
52、1应用实例图5-32后随程序742、产生波形、产生波形也常用以产生锯齿波为例,8位的分辨率=(5V-0V)/255=0.02V/步程序示例p.197图5-33可锯齿波、三角波、梯形波、矩形波、可不同占空比、可组合3、DAC121012位 要解决毛刺例:001111001111010000000000经010000001111升过了头应二级缓冲、12位一起送结构24个引脚图5-34图5-36应用实例图5-35后随程序75第六节第六节应用实例一应用实例一汽车方向灯系统小、简单,典型的位操作控制一、系统的要求一、系统的要求 输出信号表表5-12需低频(1Hz)与高频(30Hz)闪烁信号故障监控性能二
53、、硬件安排二、硬件安排数字逻辑电路图5-37硬件安排图图5-3876三、程序与说明三、程序与说明程序p.201、P.2021、每1s先故障监控,再信号灯指示。24440961s=1s2、50%占空比实际:20H单元最高位为0时间=127/244秒20H单元最高位为1时间=(244-127)/244=117/244秒3、30Hz闪烁20H单元高5位每1/30s减1得到02H+01H00H=1得占空比62.5%表5-134、故障自检报警5、信号灯指示77第七节第七节应用实例二应用实例二第八节第八节应用实例三应用实例三第六章第六章MCS-96系列单片机系列单片机第一节第一节概述概述一、主要性能特点一、主要性能特点第七节第七节196系列单片机介绍系列单片机介绍 表表6-5以上作简单介绍,主要自学以上作简单介绍,主要自学78