第一章 单片机实验系统简介解析.ppt

  1. 1、本文档共117页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 单片机实验系统简介解析

* * * 大连理工大学电信学院 陈育斌 * SFR(表二) 标识符 名 称 地 址 TH0 TL0 TH1 TL1 SCON SBUF PCON 定时/计数器0初值寄存器高8位 定时/计数器0初值寄存器低8位 定时/计数器1初值寄存器高8位 定时/计数器1初值寄存器低8位 串行口控制寄存器 串行口数据缓冲器(接收,发送) 电源控制寄存器 8CH 8AH 8DH 8BH 98H 99H 97H SFR 高128B 低128B 0FFH 80H 7FH 00H 特殊功能寄存器 SFR在片内RAM 中的位置 注:表中黄色的单元为可按位寻址的字节 * 大连理工大学电信学院 陈育斌 * 几个主要的特殊功能寄存器SFR说明 程序计数器PC( 程序指针) 为CPU指明将要执行的指令地址,(存放下一条指令的地址)。长度为16位,其寻址范围为0-65535(64K)。 单片机在复位时PC=0000H,这就意味着一旦将单片机复位,CPU就从ROM的0000H单元执行程序。 在物理上是独立于SFR。 * 大连理工大学电信学院 陈育斌 * 累加器A: 最常用的寄存器。所有的算术运算指令所要使用的寄存器且运算结果都存放在A中。 B寄存器:乘、除法指令专用的寄存器,当然也可作为一般的工作寄存器使用。 * 大连理工大学电信学院 陈育斌 * 数据指针DPTR: 由两个8位寄存器构成。高八位寄存器DPH和低八位寄存器DPL构成16位的寄存器DPTR。作用: DPTR主要用来存放外部数据存储器RAM的地址,作为CPU访问外部RAM的数据指针。如: MOVX A,@DPTR CPU的查表指令使用DPTR提供ROM中表格的首地址; MOVC A ,@A+DPTR * 大连理工大学电信学院 陈育斌 * 例如:片外RAM的2000H单元中有一个数x,试将其送到累 加器A中: MOV DPTR,#2000h ; DPTR ← 2000H MOVX A ,@DPTR ; A ← x(间址方式) 【注意】:作为数据指针MCS-51单片机有两种: ① DPTR --- 外部RAM数据指针,寻址范围64K; ② R0或R1 --- 内部或外部数据指针,寻址范围256B。 (详细使用见第二章寻址方式) * 大连理工大学电信学院 陈育斌 * 程序状态字PSW:8位寄存器,表征程序执行的状态信息。 CY(PSW.7)进位标志: 在加减法运算中,累加器A的最高位D7有进位,则CY=1,否则CY=0。同理,在减法运算中,如果A7有借位,则CY=1.因此CY往往作为无符号数运算是否有溢出的标志。 AC(PSW.6)辅助进位位: 用来判断加减法运算时,低四位是否向高四位进位或借位(既A3的进位或借位)。往往用来处理压缩的BCD码的运算处理。 CY AC F0 RS1 RS0 OV - P RAM分配图 * 大连理工大学电信学院 陈育斌 * F0(PSW.5) 用户标志位: 完全由用户来定义和使用。 RS1,RS0工作寄存器区选择位: 确定工作寄存器R0-R7在4个区中的位置(单片机在复位后RS1、RS0=00 --- 选择0区)。可以通过修改RS1,RS0的值来改变工作寄存器区的选择。 CY AC F0 RS1 RS0 OV - P * 大连理工大学电信学院 陈育斌 * OV(PSW.2)溢出标志位 判断有符号数运算时是否有溢出。 OV的结果可以用一个算法来表示: OV=CP异或CS 其中:CP为A7的进位,CS为A6的进位OV=1表明有溢出。 P(PSW.0)奇偶标志位: 用来标志累加器A中运算后“1”的个数。 当P=1时,表明A中1的个数为奇数个,反之为偶数个。 CY AC F0 RS1 RS0 OV - P * 大连理工大学电信学院 陈育斌 * 【举例】:有两个数0FH和F8H,试将两数相加 MOV A,#0FH ;将立即数0f h 送累加器A ADD A,#0F8H ;A的内容与立即数0f8h相加,结果送A 0000 1111 运算结果:A=07H,CY=1(既CP=1), + 1111 1000 CS=1,OV=0(因为CP=1,CS=1) Cy→1 0000 0111 AC=1,P=1(A中“1”的个数为奇) 如何根据PSW来分析运算结果是否有溢出? 1,若数据为无符号数。既15+248=263=

文档评论(0)

aena45 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档