96系列单片机简介及应用实例课件.ppt

上传人(卖家):三亚风情 文档编号:3514839 上传时间:2022-09-10 格式:PPT 页数:63 大小:574KB
下载 相关 举报
96系列单片机简介及应用实例课件.ppt_第1页
第1页 / 共63页
96系列单片机简介及应用实例课件.ppt_第2页
第2页 / 共63页
96系列单片机简介及应用实例课件.ppt_第3页
第3页 / 共63页
96系列单片机简介及应用实例课件.ppt_第4页
第4页 / 共63页
96系列单片机简介及应用实例课件.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

1、3.1 硬件结构z主要内容主要内容y3.1.1 内部定时y3.1.2 存储空间y3.1.3 芯片配置寄存器CCRy3.1.4 状态和控制寄存器y3.1.5 中断结构 ()重点y3.1.6 定时器y3.1.7 高速输入单元 ()y3.1.8 高速输出单元 ()y3.1.9 模拟接口y3.1.10 串行口 ()y3.1.11 监视定时器y3.1.12 复位和掉电保护3.1.1内部定时z 内部定时(续)z8098为3分频结构,即每3个时钟周期为1个状态周期,在12M的晶振下:y1个状态周期=3个时钟周期=1/12000000*3s=1/4s (8T)z80C196为2分频结构:y1个状态周期=2个时

2、钟周期=1/12000000*2s=1/6s3.1.2存储空间z寄存器组合空间 ()z专用寄存器空间z掉电保护空间zROM空间的寻址存储空间READW RITE00H01H02H03H04H05H06H07H08H09H0AH0BH0CH0DH0EH0FH10H11H12H13H14H15H16H17H18H19HR0(LO)R0(HI)AD_CMDHSI_MO DHSO _TIM(L)HSO _TIM(H)HSO _CMDSBUF(TX)INT_MASKINT_PENW ATCHDO GR0(LO)R0(HI)AD_RES(L)AD_RES(H)HSI_TIM(L)HSI_TIM(H)HSI

3、_STASBUF(RX)INT_MASKINT_PENTIMER1(L)TIMER1(H)TIMER2(L)TIMER2(H)PO RT0PO RT2SP_STATRESERVEDIO S0IO S1 STACKPSTACKPPW M_CO NIO C1IO C0RESERVEDSP_CO NPO RT2RESERVEDBAUD_RARESERVEDRESERVEDRAMPRO TECT PO W DERDO W N RAM0EFH1AH0F0H0FFH0000H00FFH0100H1FFDH1FFEH1FFFH2000H2011H2012H-2017H2018H2019H201AH-201B

4、H201CH-201FH2020H-202FH2030H-207FH2080HFFFFHINER O R O UTERRESERVEDCO DERESERVEDJUMP SELFRESERVEDCCRRESERVEDINTERUPT VECTO RPO RT4PO RT3O UTER MEM I/OINNER RAMRO M RAM I/O etc.图 3.3 存 储 空 间 图3.1.3芯片配置寄存器CCRzCCR的内容由用户预先写入018H单元(芯片配置字节),系统复位时,该芯片配置字节被自动送入CCR寄存器。(8位总线时一般为0BDH)3.1.4状态和控制寄存器z8098有两个I/O控制

5、寄存器IOC0和IOC1yIOC0控制定时器2和高速输入线。yIOC1控制某些引脚功能、中断源和两个HSO引脚。控制寄存器HSI.0输入/分断定时器2复位,写1使之复位HSI.1输入/分断定时器2外部复位允许/禁止HSI.2输入/分断定时器2复位源HSI.0/T2RSTHSI.3输入/分断定时器2时钟源HSI.1/T2CLK01234567图3.5 I/0控制寄存器0PWM/P2.5选择ACH7/EXTINT选择定时器1溢出中断允许/禁止定时器2溢出中断允许/禁止HSO.4输出允许/禁止TXD/P2.0选择HSO.5输出允许/禁止HIS中断源选择FIFO 满/保持寄存器已有数据01234567

6、图3.6 I/0控制寄存器1状态寄存器HSO.0 现行状态01234567图 3.7 I/0 状态寄存器 0HSO.1 现行状态HSO.2 现行状态HSO.3 现行状态HSO.4 现行状态HSO.5 现行状态CAM 或保持寄存器满HSO 保持寄存器满软件定时器 0 到时软件定时器 1 到时软件定时器 2 到时软件定时器 3 到时定时器 2 溢出定时器 1 溢出HSI FIFO 已满HSI 保持寄存器数据可用01234567图 3.8 I/0 状态寄存器 13.1.5中断结构(详细)z 中断源中断向量地址优先级别软件2011H 2010H用户不可用外部中断200FH 200EH7(最高)串行口2

7、00DH 200CH6软件定时器200BH 200AH5HS1.02009H 2008H4高速输出2007H 2006H3HSI 数据2005H 2004H2A/D 转换完成2003H 2002H1定时器溢出2001H 2000H0(最低)设置中断向量z;设置HSI,TIME,SPCON 的中断向量zORG2000HzDCWTYCINT;T1溢出中断zORG2004HzDCWHSIINT ;HSIINT-高速输入中断zORG200AHzDCWTIMEINT ;TIMEINT-软件定时中断3.1.6定时器z系统中有两个16位定时器,定时器1和定时器2。定时器1作为实时时钟用来同步其他事件。它自由

8、运行,每8个状态周期加1。(定时器+1时间为8T=?)z该计数器在任何时刻均可读出,但一般不可改写,且除芯片复位之外也没有其他手段使其停止计数并恢复为0。定时器(续)z定时器1产生高速输入单元HSI和高速输出单元HSO的基准时间。z定时器溢出时可用来产生中断,溢出间隔时间(在12M晶振下):y0 F F F F H*8*T=6 5 5 3 5*8*1/4 1 3 1 m s (三分频系列,如8098)y0 F F F F H*8*T=6 5 5 3 5*8*1/6 8 7 m s (二分频系列,如80C196)T1溢出中断服务子程序zTYCINT:PUSHFzz POPFz RET3.1.7高

9、速输入单元zHSI运行方式zHSI状态寄存器(HSI_STATUS)zHSI的控制和操作()z(详细)高速输入概述z高速输入单元HSI可用定时器1作实时时钟来记录外部事件发生的时间。“高速”表示事件的获取无需CPU的干预。z该单元有四条高速输入线(HSI.0-3),其中HSI.2-3为双向引线,和HSO.4-5共用同一引脚。由IOC0和IOC1确定。一一 HSIHSI运行方式运行方式HSI_MODEHSI_MODEz HSI.0方式选择位01234567图3.9 HSI_MODE寄存器HSI.1方式选择位HSI.2方式选择位HSI.3方式选择位z方式选择位 事件定义z 008个正跳变为一个事件

10、z 01 每个正跳变为一个事件z 10每个负跳变为一个事件z 11每个跳变(正和负)均为事件 二二HSIHSI状态寄存器状态寄存器HSI_STATUSHSI_STATUS)z各位的定义同图3.9y其中低位表示本引脚上是否有事件发生;y高位表示本引脚的现行状态。三三HSIHSI的控制和操作的控制和操作z有关控制见HSI_MODE、IOC0、IOC1、INT_MASK、INT_PENDING以及中断向量。z中断发生后:先读HSI的状态,后读其中断时间。(两者均得读,且顺序读)HSIINT 子程序(记录脉冲)z HSIINT:PUSHFzLDBHSIBJ,HSISTAzJBSHSIBJ,0,HI0

11、;判断是否0口中断zJBSHSIBJ,2,HI1 ;判断是否1口中断zJBSHSIBJ,4,HI2 ;2zJBSHSIBJ,6,HI3 ;3zSJMPHSIFHz HI0:STHSITIM,HI0T ;读时间到HI0T中z z POPFz RET3.1.8高速输出单元zHSO输出控制y LDB HSO_COMMAND,#WHAT_TO_DOy ADD HSO_TIME,TIMER1,#WHEN_TO_DO_IT高速输出单元(续)通 道:0-5 HSO.0-5 相 应 各 位 6 HSO.0-1 两 位 同 时 7 HSO.2-3 两 位 同 时 8-B 软 件 定 时 器 0-3 E 定 时

12、器 2 复 位 F 启 动 A/D 转 换中 断/无 中 断置 位/清 0定 时 器 2/101234567图 3.10 HSO 命 令 格 式软件定时1ms中断服务子程序z TIMEINT:PUSHFzDIzLDBHSOCOM,#38H ;重设TIMEINTzADDHSOTIM,TIMER1,#TIJG;12M=#750 6M=#375zEIzINCZDCS ;中断次数加1zPOPFzRET3.1.9模拟接口z 模拟输入z AD_COMMANDz z AD_RESULT脉冲宽度调制输出(PWM)z数/模转换可以通过脉冲宽度PWM输出来实现,PWM输出波形是一个重复周期为256个状态周期,而占

13、空比可变,占空比的变化通过向PWM寄存器写入新值来实现。对此波形进行积分,那么,即可得到一个DC电平,通过改变占空比,可使该电平分256个阶梯变化。AD变换子程序z ADBH:ADBH:LDBLDBTDHAO,ACHTDHTDHAO,ACHTDH;TDHAO;TDHAO标记标记ACHTDHACHTDHzORBORBTDHAO,#00001000BTDHAO,#00001000BzLDBLDBADCOM,TDHAOADCOM,TDHAO;立即启动立即启动ADAD变换变换zNOPNOPzNOPNOPzNOPNOPz ADDD1:ADDD1:LDBLDBBL,ADLBL,ADL;等待等待ADAD变换

14、的完成变换的完成zJBSJBSBL,3,ADDD1BL,3,ADDD1zLDBLDBBL,ADLBL,ADLzLDBLDBBH,ADHBH,ADHzSHRSHRBX,#6BX,#6zADDADDADLJD,BXADLJD,BX ;累计累计A/DA/D变换值变换值zADDCADDCADLJG,#0ADLJG,#0zINCINCADBHCSADBHCS ;A/D;A/D变换次数变换次数+1+1zRETRET3.1.10串行口z方式0:同步方式,通常用在以移位寄存器为基础的I/O扩展方面z方式1:标准异步通讯方式。串行口(续)z方式2和方式3:用于多机通讯串行口(续)z串行口的控制串行口波特率设置串

15、行口波特率设置 z1.98:方式0=y z 方式1、2、3=yy z因为波特率寄存器的最高位用于对内部时钟源的选择,当用XTAL1时,固定为“1”XTALBB1410();XTALB1641()BAUDRATE方式0方式1、2、312M6M96008137H8013H8009H48008270H8026H8000H+19 2.96系列单片机的波特率设置z z方式0=z 方式1、2、3=X T A LBB1210();X T A LB11 61()BAUDRATE6M8M10M12M960038516477480077103129155基于串行口的多机通讯基于串行口的多机通讯z串行口方式2和方式

16、3是提供给多机通讯用的。在方式2下若所接收到的第9位数据非1,则不会发生串行口中断,而方式3则均会中断。在多机系统中,当主机欲向某从机发送数据时,它首先发出一帧地址以确定目的从机。地址帧和数据帧的不同点在于,前者之第9位数据位为1,后者之该位为0。z在方式2下,数据帧不会引起任何从机中断。然而,地址帧却将在所有从机中激发中断。这样,各从机便在各自的中断服务程序中检查所收到的字节是否等于自己的地址。相等者即为被呼叫的从机,于是它便切换到方式3下运行,以接收此后主机发来的数据;并回送主机数据后恢复到方式2下等待。未被呼叫的多个从机则仍留在方式2下继续自己的作业。主机12nz通讯举例:主机和2号从机

17、进行数据交换z1、主机和全部从机工作于方式2;z2、主机以第9位为1发送地址码2;z3、全部从机接收中断,2号判定被呼叫转入方式3;其它从机仍然工作与方式2;z4、主机发送数据,DB9=0,2号中断接收;z5、2号反送主机数据,主机接收;z6、主机和2号从机再转入方式2待命。串口中断服务程序z SERINT:PUSHFSERINT:PUSHFz RDAGA:RDAGA:LDBLDBSPTEMP,SPSTATSPTEMP,SPSTATzORBORBTEMP,SPTEMPTEMP,SPTEMPzANDBANDBSPTEMP,#60HSPTEMP,#60HzJNEJNERDAGARDAGAzJBSJ

18、BSTEMP,5,TRANSTEMP,5,TRANSzJBSJBSTEMP,6,GETTEMP,6,GETzSJMPSJMPSEROUTSEROUTz 3.1.11监视定时器z在12M晶振下:y 98:WATCHDOG溢出时间为:16msy 96:WATCHDOG溢出时间为:10.67msz监视定时器的驱动:(连续写入)y DIy LDB WATCHD,#1EHy LDB WATCHD,#0E1Hy EI3.1.12复位和掉电保护z在电源处于正常范围且振荡器稳定后,RESET引脚上至少保持两个状态周期的低电平就可使系统复位。zRESET引脚电压升高后,系统将执行10个状态周期的内部复位序列。在

19、此期间,芯片配置字节CCR被从2018H单元读出并进而写入芯片CCR寄存器。z上电复位可用电容、单稳或其他方法实现,条件是它们能够提供一个宽度要比Vcc和振荡器稳定下来所需的时间至少长两个状态周期的负脉冲。对于96系列单片机,复位电平是低电平有效。3.2 MCS-96指令系统z主要内容z3.2.1操作数类型 ()z3.2.2操作数的寻址 ()z3.2.3程序状态字PSWz3.2.4指令系统3.2.1操作数类型z字节型(BYTE)z字型(WORD)z短整数型(SHORT_INTEGER)z整数型(INTEGER)z位型(BIT)z双字型(DOUBLE_WORD)z长整数型(LONG_INTEGE

20、R)3.2.2 操作数的寻址(详细)z寄存器直接寻址 (LD AX,BX)z间接寻址 (LD AX,BX)z自动增量间接寻址 (LD AX,BX+)z立即寻址 (LD AX,#1234)z短变址寻址 (LD AX,123BX)z长变址寻址 (LD AX,1234BX)z栈指针寄存器寻址 (LD AX,2SP)3.2.3程序状态字PSWz 位151413121110987 6 5 43 2 1 0标志ZNVVTCIST中断屏蔽寄存器INT_MASK1.Z:0标志,若为1,则表示刚刚进行的操作所得结果为0;3.2.4指令系统z8098单片机共有100条指令。z80C196单片机共用112条指令,其

21、中的100条与8098完全相同。专用指令如:CMPL/MOVB/JNZW等都是98所没有的。z(详细)1.数据传送指令zLD LDB ST STB LDBSE(短整数整数)LDBZE(字节字)yLD AX,BX;LDB AL,BLyST AX,BX;STB AL,BLyLDBSE LDBZE不常用2.算术运算指令zADD ADDB ADDC ADDCB SUB SUBB SUBC SUBCB CMP CMPB MULU MULUB MUL MULB DIVU DIVUB DIV DIVB CMPL(双字比较80C196)y注意有无符号和操作数类型yMULU(16*16=32)MULUB(8*8

22、=16)无符号yDIVU(32/16=16 低16=商 高16=余数)yDIVUB(16/8=8 低8=商 高8=余数)y课堂练习:将1234分解为BCD码BCD变换子程序 BCSD为入口,AX BX为转换的压缩BCD码z BCDBH:CLRAXzCLRBCSGzDIVUBCSD,#1000zORAX,BCSDzSHLAX,#4zLDBCSD,BCSGzCLRBCSGzDIVUBCSD,#100zORAX,BCSDzSHLAX,#4zLDBCSD,BCSGzCLRBCSGz DIVUBCSD,#10zORAX,BCSDzSHLAX,#4zORAX,BCSGzSTBAL,BLzSTBAL,BHH

23、zSHRBBL,#4zANDBBHH,#00001111BzSTBAH,ALzSHRBAL,#4zANDBAH,#00001111Bz PMXYH:RET3.逻辑操作指令zAND ANDB OR ORB XOR XORByANDB AL,#11101111B ;指定位清0yORB AL,#00010000B ;指定位置1yXORB AL,#00010000B ;指定位取反4.栈操作指令zPUSH PUSHF POP POPF PUSHA POPA(双字进栈80C196专用)yPUSHFyPUSH AX ;96的堆栈向下生成SP=SP-2yPUSH BX ;若SP原为0F0H,BX压栈后SP=0

24、EEH yyPOP BX ;先入后出yPOP AX yPOPF5.转移操作指令zLJMP SJMP BR LCALL SCALL RET TRAP(软件中断陷井,用户不用)6.条件转移指令zJC JNC JNH JE JH JNE JV JNV JGE JLT JVT JNVT JGT JLE JST JNSTyCMPBAL,BLyJNHADDRESS0 ;当AL=BL时跳转7.位为0或位为1的转移指令zJBS(位为1跳转)JBC(位为0跳转)yJBS AL,0,ADDRESS1 ;当AL的第0位=1时跳转yJBC AL,0,ADDRESS2 ;当AL的第0位=0时跳转8.循环控制指令zDJN

25、Z DJNZW(一个字的递减,80C196所有)y LDB AL,#8yLOOP1:LDBBL,#0F0HyLOOP0:NOPy DJNZ BL,LOOP0y DJNZ AL,LOOP19.单寄存器指令zDEC DECB NEG NEGB INC INCB EXT EXTB(符号扩展)NOT NOTB CLR CLRByNEG 求补=求反1 例如:-1=11111111By1=00000001,1求反=11111110B,求反+1=11111111By再例如DS1820输出的温度值为补码,若收到00000001B则为1,若收到11111111B则为-1。10.移位指令zSHL SHLB SHL

26、L SHR SHRB SHRL SHRA SHRAB SHRALy注:SHRA 为带符号右移,移位后左边补1ySHRAL AL(AL=#11000011B);AL结果=#11100001B11.专用指令zzSETC CLRC CLRVT RST DI EI NOP SKIP NORMLyRST 机器码为0FFH,软件复位y数据总线D0D7接上拉排阻,若程序跑飞到无效地址,取回指令为0FFH使系统复位。12.块移动(80C196所有)zBMOV BMOVIzyBMOV LREG,WREG y其中LREG为源地址(低16位)指针和目的地址(高16位)指针的组合,WREG为移动的字数yBMOV LR

27、EG(高16位=5000H 低16位=4000H),WREG(16位=100)y上面语句的作用为将以4000H为首地址的100个字的数块移到以5000H为首地址的存储器中中13.伪指令zREG:定义寄存器地址zORG:定义程序代码段地址zDSB DSW:定义寄存器地址的代码zDCB DCW:在指定的存储空间定义常数,即直接将常数存放于指定地址存储空间zEQU:定义常数代码zEND:程序结束标记3.3 80C196KB单片机测控系统应用实例z主要内容z(机车随车质量状态检测诊断报警装置)z3.3.1 装置研制背景z3.3.2 系统总体结构、检测参数及功能()z3.3.3 系统软硬件设计()z3.

28、3.4 试验及结论3.3.1 装置研制背景z 目前,根据铁道部规定,机车实行定期大修、段修,在段修中经常存在某些部件尚可运行,而某些部件应早该更换的问题,这样势必存在浪费和事故。因此有必要设计一种随车的仪器,随车检测重要参数,并随车诊断报警、记录机车随车实时的动态信息,数据转储后,通过地面数据分析处理诊断出是否存在故障隐患,以保运输安全。3.3.2 系统总体结构、检测参数及功能系统总体结构、检测参数及功能(续)z装置检测诊断的内容z语音报警和应急故障处理提示的部分内容z系统总体功能z(详细)3.3.3 系统软硬件设计z 装置关键硬件的设计z 单总线数字式DS18B20传感器编码与自动寻码定位z

29、 系统软件设计z 系统软硬件详细功能描述z 系统主机硬件的研制z 系统传感器的选取z 系统主机软件的研制z PC机软件的研制装置硬件原理图zCPU板z信号采集和调理板3.3.4 试验及结论z装置综合应用计算机软硬件技术、数据采集、记录、显示及存储技术,实现对机车主要的电参数、电气线路状态、油耗率、热工参数、轴温及火情等质量参数的实时采集、记录、显示,并进行实时的机车故障诊断、语音定点定性报警提示,通过数据转储地面分析处理,参数性能变化趋势和机车故障先兆信息,及时发现机车故障隐患,从而提高机车质量,确保运输安全。本章小结z本章重点介绍了96系列单片机的硬件结构、软件操作以及一个基于80C196KB的随车智能仪表的设计实例。z通过96系列单片机的实例,大家掌握智能仪表CPU的一般设计方法。本章作业z本章内容很多,有许多细节希望大家课下仔细阅读相关章节。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(96系列单片机简介及应用实例课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|