ImageVerifierCode 换一换
格式:DOC , 页数:111 ,大小:1.11MB ,
资源ID:7664423      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7664423.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(《单片机原理及接口技术》学习与实践指导.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

《单片机原理及接口技术》学习与实践指导.doc

1、单片机原理及接口技术学习与实践指导第一篇 单片机原理与接口技术学习指导第1章 单片机基础知识1.1 内容提要1. 概述单片机具有体积小、功耗低、重量轻、价格低、可靠性高、开发使用简单等一系列优点。自问世以来己得到了非常广泛的应用。其中MCS-51及与之完全兼容的AT89系列单片机在我国应用最广。(1)微机发展形成两大分支,一类是PC机,另一类是嵌入式微处理器(单片机)。PC机系统全力实现海量高速数据处理,兼顾控制功能。嵌入式系统全力满足测控对象的实时测控功能,兼顾数据处理能力。(2)单片机发展概论。单片机发展可分为4个阶段。目前虽然己有性能优异的16位/32位单片机产生,但由于价格不菲,其应用

2、受到一定限制。相反,由于AT89系列8位单片机的性价比高,却得到了广泛的应用,成为目前最流行的主流单片机型。(3)AT89系列单片机是美国ATMEL公司生产的内含18KB Flash ROM的8位高性能单片机。按其功能可分为标准型、低档型和高档型三类,共有7种型号。2. 微机中数的表示方法及其运算微机系统中常用的数制是二进制、十进制和十六进制,表达形式有原码、反码和补码。计算机中二进制数的四则运算可以归结为加法和移位两种操作。(1)二进制、十进制和十六进制的概念二进制数和十六进制数是计算机中常用的数制。为区别起见,二进制数用尾缀B表示,十六进制数用尾缀H表示,十进制数则用尾缀D表示,但在书写时

3、通常省略其尾缀D。(2)二进制、十进制和十六进制数相互转换 二进制数及十六进制数转换成十进制数,只要将二进制数或十六进制数按权展开,然后相加即可。 十进制数转换成二进制数(或十六进制数),整数部分和小数部分要分别进行。即整数部分转换用“除2(或16)取余法”;小数部分用“乘2(或16)取整法”。 二进制数与十六进制数相互转换,按1位十六进制数对应于4位二进制数进行转换。3. 二进制数的运算(1)不同进制数的运算,必须先转换成同一进制数之后才能进行。(2)二进制数的运算分算术运算和逻辑运算两种。算术运算包括加、减、乘、除四则运算,它们都可以归结为做加法和移位运算。逻辑运算包括与、或、非、异或运算

4、等。 加法运算规则为“0+0=0,1+0=0+1=1,1+1=10(逢二进一)”。 减法运算规则为“0-0=0,1-0=1,1-1=0,0-1=1(借一当二)”。 乘法运算规则为“00=0,01=10=0,11=1”。 逻辑与运算规则为“00=0,01=10=0,11=1”。 逻辑或运算规则为“00=0,10=01=1,11=1”。 逻辑非运算规则为“=1,=0”。 逻辑异或又称半加,是不考虑进位的加法,其运算规则是“相同取0,相异取1”即“00=11=0,10=01=1”。4. 微机的码制和编码(1)在计算机中,数的正负必须在最高有效位分别用“0”和“1”表示。原码、反码和补码是计算机中有符

5、号数的3种表示方法。引入补码,是为了将减法运算转换成加法运算。8位二进制数的原码、反码和补码有如下关系: 对于一个正数:X原=X反=X补 对于一个负数:X补=X反+1(2)单片机系统中常用编码有BCD码和ASCII码。 用4位二进制数表示1位十进制数的编码称为BCD码。它有多种编码方案,其中8421BCD码最为常用。8421BCD码也称为二十进制数,是一种十进制数,逢十进一,只是数符09用4位二进制码00001001表示而己。每4位以内按二进制进位,4位与4位之间按十进制进位。其加减运算有时会出错,需要修正。 在微机系统中,世界各国普遍采用ASCII码来表示一些特殊的字符,如26个英文字母、标

6、点符号、空格换行等。具体可查阅ASCII码表。1.2 学习的基本要求与指导1. 概述本节仅要求一般性的了解从微机单片机AT89C51的发展概况,单片机技术未来发展趋势以及单片机广泛应用的领域,以激发读者学习单片机技术的兴趣。2. 微机中数的表示方法及其运算(1)建立二进制和十六进制的概念。(2)学会二进制、十进制和十六进制数相互转换的方法,熟记016之间二进制、十进制和十六进制数的对应关系及相互转换。(3)熟悉二进制和十六进制数加、减、乘、除以及“与”、“或”、“非”、“异或”运算方法。(4)了解二进制数原码、反码和补码的表示方法。二进制数、十六进制数与十进制数之间的关系、相互转换和运算方法,

7、是学习计算机必备的基础知识,特别是016范围内各进制数要求熟记。(5)了解BCD码的编码方法、转换关系和加减法运算时出错修正的原因、条件和方法。(6)了解ASCII码和查表换算方法。本章是学习后续章节的基础,若己具备这些基本知识,则可跳过。上述学习要求的“了解”、“学会”、“熟悉”、“熟记”,由读者自己掌握分寸。1.3 习题与思考题解答1. 微机中常用的数制有几种?计算机内部采用哪种数制?答:微机中常用二进制、十进制和十六进制3种数制。但计算机内部采用的是二进制。2. 十六进制数能被计算机直接执行吗?为什么要用十六进制数?答:不能。之所以在计算机中广泛采用十六进制数是因为用它来描述二进制数特别

8、简短,便于书写与阅读。3. 将下列十进制数转换为二进制数和十六进制数。(1)125 (2)0.525 (3)121.687 (4)47.945解:(1)125=1111 1100B=FCH (2)0.525=0.1100 0000B=0.C0H (3)121.687=1111 1000.1010 1111B=F8.AFH (4)47.945=10 1111.1111 0001B=2F.F1H4. 将下列二进制数转换为十进制数和十六进制数。(1)1011 0101 (2)0.1011 0010 (3)0.1010 (4)1101.0101解:(1)1011 0101=181D=B5H (2)0.

9、10110010=0.6954D=0.B2H (3)0.1010=0.625D=0.AH (4)1101.0101=13.3125D=D.5H5. 将下列十六进制数转换为十进制数和二进制数。(1)ABH (2)28.07H (3)ABC.DH (4)0.35FH解:(1)ABH=10161+11160=160+11=171D ABH=1010 1011B(2)28.07H=2161+8160+716-2=40.0273D 28.07H=0010 1000.0000 0111B(3)ABC.DH=10162+11161+12160+1316-1=2748.75D ABC.DH=1010 1011

10、 1100.1101B(4)0.35FH=316-1+516-2+1516-3 0.35FH=0.0011 0101 1111B6. 已知下列各组二进制数X、Y,试求X+Y、X-Y、XY和XY。(1)X=1010 1110B,Y=1001B (2)X=10 1101B,Y=1010B(3)X=1101 0011B,Y=1110B (4)X=1100 1110B,Y=110B解:(1)X+Y=1011 0111B X-Y=1010 0101B XY=110 0001 1110B XY=1 0011B,余11(2)X+Y=110 0111B X-Y=10 0011B XY=1 1100 0010B

11、 XY=100B,余101(3)X+Y=1110 0001B X-Y=1100 1101B XY=1011 1000 1010B XY=1111B,余1(4)X+Y=1101 0100B X-Y=1100 1000B XY=100 1101 0100B XY=10 0010B,余107. 将下列各组十六进制数转换成二进制数,然后分别完成逻辑与、逻辑或、逻辑非、逻辑异或运算。(1)23H和BCH (2)ABH和76H (3)CDH和8FH (4)10H和67H解:- 5 -(1)23H=0010 0011BBCH=1011 1100B23HBCH=0010 0000B23HBCH=1011 11

12、11B= 1101 1100B=0100 0011B23HBCH=1001 1111B(2)ABH=1010 1011B76H=0111 0110BABH76H=0010 0010BABH76H=1111 1111B=0101 0100B =1000 1001BABH76H=1101 1101B(3)CDH=1100 1101B8FH=1000 1111BABH76H=1000 1101BCDH8FH=1100 1111B=0011 0010B=0111 0000BCDH8FH=0100 0010B(4)10H=0001 0000B67H=0110 0111B10H67H=0000 0000B

13、10H67H=0111 0111B=1110 1111B=1001 1000B10H67H=0111 0111B8、在8位二进制计算机数中,正负数如何表示?答:在计算机中,数的正负在最高位分别用“0”和“1”来表示,8位微机中约定,最高位D7表示符号,其他7位表示数值。D7=1表示负数,D7=0表示正数。9、什么叫机器数?机器数的表示方法有几种?答:在最高的符号位用“0”和“1”表示数的正负的二进制数称为机器数。其数值部分称为机器数的真值。机器数通常有原码、反码和补码三种表示方法。10、写出下列各十进制数的原码、反码和补码。(1)+28 (2)+69 (3)-125 (4)-54解:(1)+2

14、8原=+28反=+28补=0001 1100B(2)+69原=+69反=+69补=0100 0101B(3)-125原=1111 1101B;-125反=1000 0010B;-125补=1000 0011B(4)-54原=1011 0110B;-54反=1100 1001B;-54补=1100 1010B11. 什么是BCD码?BCD码与二进制数有何区别?答:BCD码也称为二十进制数,属十进制数,即逢十进位,但每位十进制数位采用二进制数编码,这种编码方式的特点是保留了十进制的权,数字则用二进制码表示。BCD码既适应了人们逢十进位的习惯,又适应了计算机对输入输出数据的要求。虽然BCD码与二进制

15、数都是用二进制码表示,但是是有区别的。BCD码是以4位二进制码表示一位十进制数,每4位以内按二进制进位,4位与4位之间按十进制进位,即它是用二进制编码表示的十进制数,逢十进位;而二进制数逢二进一;两者的本质不同。例如二进制数0110 0111B = 103,而=67,虽然两者表面上看起来数码相同,但是并不一相等。12. 写出下列各十进制数的BCD码。(1)34 (2)59 (3)1983 (4)270解:(1)34=0011 0100BCD (2)59=0101 1001BCD (3)1983=0001 1001 1000 0011BCD (4)270=0010 0111 0000BCD13.

16、 已知下列各组数据,用BCD码求下列XY和XY。(1)X=36,Y=26 (2)X=100,Y=44(3)X=27,Y=79 (4)X=51,Y=88解:(1)X+Y=0011 0110BCD+0010 0110BCD=0101 1100BCD低4位出现非法码,所以低4位应加6修正X+Y=0101 1100BCD+0110BCD=0110 0010BCDX-Y=0011 0110BCD-0010 0110BCD=0001 0000BCD(2)X+Y=0001 0000 0000BCD+0100 0100BCD=0001 0100 0100BCDX-Y=0001 0000 0000BCD-010

17、0 0100BCD=1011 1100BCD高、低4位都出现了非法码,故高、低4位分别减6予以修正。X-Y=1011 1100BCD-0110 0110BCD=0101 0110BCD(3)X+Y=0010 0111BCD+0111 1001BCD=1010 0000BCD低4位向高4位有进位,所以低4位应加6修正;又高4位出现了非法码,所以高4位应加6修正。X+Y=1010 0000BCD+0110 0110BCD=0001 0000 0110BCDX-Y=0010 0111BCD-0111 1001BCD=1010 1110BCD低4位向高4位有借位,且出现了非法码,所以应减6修正;又高4

18、位向更高位有借位且也出现了非法码,故高4位也应减6修正。X-Y=1010 1110BCD-0110 0110BCD=0100 1000BCD(4)X+Y=0101 0001BCD+1000 1000BCD=0001 0011 1001BCDX-Y=0101 0001BCD-1000 1000BCD=0011 0111BCD14. 什么是ASCII码?查表写出下列字符的ASCII码。(1)A (2)7 (3)b (4) (5)= (6)? (7)G (8)回车CR答:ASCII码是“美国信息交换标准代码”的简称。它用7位二进制数表示27=128个常用和特殊字符,包括数码(09),英文大小写字母,

19、标点符号和控制字符等。目前,在微机系统中,世界各国普遍采用ASCII码。解:查ASCII码表可得下列字符的ASCII码分别是:(1)“A”=100 0001B=41H(2)“7”=011 0111B=37H(3)“b”=110 0010B=62H(4)“”=100 0000B=40H(5)“=”=011 1101B=3DH(6)“?”=011 1111B=3FH(7)“G”=100 0111B=47H(8)“CR”=000 1101B=0DH单片机原理及接口技术学习与实践指导1.4 自我检测题1. 填空题(10分)(1)微处理器(CPU)是单片机的核心。它主要由 、 和 组成。(2)将CPU、

20、存储器、I/O接口和中断系统集成在同一块芯片上,具有完整功能的微型计算机又称为 。(3)二进制的进位规则是 ,借位规则是 。(4)单片机自面市以来,己经过了4个发展阶段。其中第4代单片机的起始时间是从1983年以后开始的。最近几年单片机正朝向高性能、 、增加自身 功能的方向发展。2.多选题(14分)(注:多选计0分)(1)AT89系列单片机可分为( )。A、豪华型 B、标准型 C、低档型 D、高档型(2)微机中常用的数制有( )。A、二进制数 B、十进制数 C、十二进制数 D、十六进制数(3)微机常用的机器数是( )。A、原码 B、反码 C、补码 D、真值(4)BCD码加(减)运算时有时会出错

21、,修正的条件和方法是( )。A、低4位向高4位进(借)位,低4位加(减)6修正;B、低4位出现非法码,低4位加(减)6修正;C、高4位出现非法码,高4位加(减)6修正;D、高4位向更高位进(借)位,高4位加(减)6修正。(5)一个负数的原码为1110 1100B,则其反码和补码分别为( )。A、0110 1100B B、0001 0011B C、1001 0011B D、1001 0100B3. 用表列出015的二进制数和十六进制数。(16分)十进制01234567二进制十六进制十进制89101112131415二进制十六进制4. 按要求进行数制转换(无限小数取8位)。(12分)(1)71.8

22、5= B;(2)E5.B7H= B;(3)101.4= H;(4)100 0110.0101 11B= H(5)B8.8BH= D;(6)1101 1111.0110 1101B= D。5. 己知二进制数X=1101 0011B,Y=1110 0011B,试按下列要求运算。(20分)(1)X+Y= B;(2)X-Y= B;(3)XY= B;(4)XY= B;(5)XY= B。6. 己知二进制数X=1101 0011B,Y=1110B,试按下列要求运算。(8分)(1)XY= B; (2)XY= B,余 。7. 己知十六进制数X=ABH,Y=78H,试按下列要求运算。(8分)(1)X+Y= H;

23、(2)X-Y= H;(3)XY= H; (4)XY= H。8. 求原码、反码和补码。(8分)(1)+127原= B;+127反= B;+127补= B;(2)-25原= B;-25反= B;-25补= B;(3)+99原= B;+99反= B;+99补= B;(4)-88原= B;-88反= B;-88补= B。9. 将下列各数转换成BCD码。(4分)(1)110= BCD;(2)1111 1010B= BCD。(注:先将二进制数转换成十进制数,然后再将十进制数转换成BCD码)第2章 AT89C51单片机结构和原理2.1 内容提要1. 内部结构和引脚功能(1)内部结构:由1个8位CPU、128

24、B片内RAM及4KB Flash ROM、21个特殊功能寄存器、4个8位并行I/O口、两个16位定时/计数器、一个串行I/O口和时钟电路及内部总线等组成。(2)引脚功能:共有40个引脚。除了电源、接地、时钟端和32根I/O端线外,有4个控制引脚:ALE(地址锁存允许)、(片外ROM读选通)、RST(复位)、(片内、外ROM选择)。2. 存储空间配置和功能AT89C51有三个不同的存储空间,分别是64KB的ROM、64KB片外RAM和256B片内RAM,用不同的指令和控制信号实现对它们的操作。(1)ROM最大64KB。ROM主要用来存储程序,CPU读ROM中的程序以程序计数器PC作为16位地址指

25、针;用户读ROM中的数据用MOVC指令,控制信号是和。(2)片外RAM共64KB,读写片外RAM用MOVX指令,控制信号是P3口中的和。(3)片内256B数据存储器分为两部分:00H7FH共128B为片内RAM区;80HFFH共128B为SFR区。 128B内RAM区可分成三个物理空间:工作寄存器区(00H1FH)、位寻址区(20H2FH)和数据缓冲区(30H7FH)。 特殊功能寄存器(SFR)有21个,离散分布在片内RAM高128B的80HFFH中。累加器A、程序状态字PSW、堆栈指针SP、数据指针DPTR等都有各自特殊的用途和功能。(4)程序计数器PC不属于特殊功能寄存器,用户不可访问它,

26、主要用于CPU读ROM 16位地址指针。3. I/O端口结构及工作原理AT89C51共有4个8位并行双向I/O口:P1P3口,实际上它们已被归入特殊功能寄存器之列。它们除可按字节寻址之外,还可以按位寻址。在单片机中,口是一个集数据输入缓冲、数据输出驱动及锁存等多项功能于一体的I/O电路。AT89C51的4个口在电路结构上基本相同,但又各具特点,因此在功能和使用上各口之间有一定的差异。各口用作输入时,均须先写入“1”;P0口用作输出时,应外接上拉电阻。在并行扩展外部存储器或I/O口的情况下,P0口用于低8位地址总线和数据总线(分时传送),P2口用作高8位地址总线。P3口常用于第二功能,用户能使用

27、的I/O口只有P1口和未作第二功能的部分P3口端线。4. 堆栈操作堆栈是计算机的重要概念。 堆栈的功用:堆栈是专为计算机保护和恢复现场而设置的。 堆栈指针用SP来表示。 堆栈的设置:单片机上电复位时,堆栈指针SP的初值为07H,根据需要可以通过编程对SP值进行设置。 无论是保护现场的入栈或是恢复现场的出栈操作,都必须遵循“先进后出,后进先出”的原则。5. AT89C51的工作方式AT89C51有复位、程序执行、省电和片内EPROM编程与校验等4种工作方式。(1) 复位是计算机的一种重要工作状态。复位的条件是RST引脚保持2个机器周期以上的高电平;复位电路一般由RC微分电路构成。单片机复位后,P

28、C值为0000H,SP值为07H,P0P3口值为FFH。(2) AT89C51单片机有两种低功耗方式:待机(空闲)方式和掉电保护方式,可降低功耗和发生掉电时保存RAM中的数据不丢失。6. 时钟和时序指挥AT89C51单片机有条不紊地工作的是时钟脉冲,执行指令均按一定时序操作。机器周期(简称为机周)是AT89C51单片机工作的基本定时单位,一机周包含12个时钟脉冲。7. AT89C51的主要特点AT89系列单片机与前些年国内广泛使用的MCS-51系列单片机完全兼容,AT89C51单片机最突出的优点是片内采用了Flash ROM,其读写方便,可多次擦写,价格低廉,所以它是近年来广泛使用的主流单片机

29、机型。2.2 学习的基本要求与指导1. 内部结构和引脚功能(1)总体了解AT89C51单片机内部结构。(2)AT89C51单片机有40个引脚,按其功能可分为3类:一是电源、接地、时钟;二是4个I/O口32条I/O端线;三是4个控制引脚:ALE、RST、,熟记其第一功能,了解其第二功能。熟悉P3口的第二功能。2. 存储空间配置和功能(1)熟悉AT89C51三个不同存储空间配置及地址范围,了解不同存储空间的操作指令和控制信号。(2)熟悉AT89C51片内RAM低128B分区结构和作用。(3)了解特殊功能寄存器地址分布范围,理解ACC、B、SP、DPTR的作用和功能,重点掌握PSW结构组成和各位作用

30、。(4)理解程序计数器PC的功能。3. I/O端口结构及工作原理(1)了解AT89C51 4个I/O端口结构及工作原理。(2)理解在扩展外存储器情况下,P0、P2及P3口的功能作用。4. 堆栈操作要掌握以下几个方面:(1)堆栈的作用;(2)堆栈的设置;(3)堆栈指针SP;(4)堆栈使用方式。5. AT89C51的工作方式(1)熟悉AT89C51复位条件、复位电路和复位后常用的SFR的状态。(2)理解AT89C51两种低功耗方式的作用以及进入和退出的方法。6. 时钟和时序(1)理解时钟电路组成。(2)理解AT89C51时钟和机器周期的概念。(3)了解指令执行的时序过程,理解控制信号在读写片外RA

31、M和读ROM时的作用。学习单片机主要有三个方面的内容:一是单片机片内面向用户的软、硬件资源;二是单片机指令及程序编制;三是单片机接口电路及应用。单片机片内面向用户硬、软件资源的教学内容主要集中在本章和第5章至第8章,它是学习单片机应用的基础,因此必须学好。2.3 习题与思考题解答1. AT89C51单片机内部结构由哪几部分组成?答:AT89C51单片机内部主要由CPU、寄存器、I/O端口、定时/计数器、中断系统和内部总线六个部分组成。2. 程序状态字PSW各位的定义是什么?答:程序状态字寄存器PSW也称为标志寄存器,是个8位的特殊功能寄存器,其中存放各有关标志。其结构和定义如表2.1所示。表2

32、.1 PSW各位定义表位编号PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位地址D7HD6HD5HD4HD3HD2HD1HD0H位定义CYACF0RS1RS0OVF1P CY:进位标志位。在累加器执行加减法运算时,若最高位有进位或借位,CY置1,否则清0。在进行位操作时,CY是位操作累加器,指令助记符用C表示。 AC:辅助进位标志位。累加器A执行加减运算时,若低半字节即ACC.3向高半字节ACC.4有进(借)位,AC置1,否则清0。 RS1、RS0:工作寄存器区选择位。工作寄存器区有4个,但当前工作寄存器区只能有一个。RS1、RS0的组合编号用于选择当前工作寄

33、存器区。RS1RS0=00:0区(物理地址00H07H); RS1RS0=01:1区(物理地址08H0FH)RS1RS0=10:2区(物理地址10H17H); RS1RS0=11:3区(物理地址18H1FH) OV:溢出标志位。用于表示ACC在有符号数算术运算中是否溢出。发生溢出时OV置1,否则清0。 P:奇偶标志位。表示ACC中“1”的个数的奇偶性。如果A中“1”的个数为奇数,则P置1,反之清0。 F0:用户标志位。与位操作区20H2FH中的位地址00H7FH功能相同。3. 程序计数器PC的作用是什么?怎样工作?答: PC是一个16位的地址寄存器,其作用是用来存放将要从ROM中读出的下一字节

34、指令码的地址,因此也称为地址指针。程序计数器PC不属于特殊功能寄存器,用户不可访问,但其在物理结构上是独立的。PC的基本工作方式有:(1)自动加1。CPU从ROM中每读一个字节,自动执行加1操作;(2)执行转移指令时,PC会根据该指令要求修改下一次读ROM新的地址;(3)执行调用子程序或发生中断时,CPU会自动将当前PC值压入堆栈,将子程序入口地址或中断入口地址装入PC;子程序(或中断)返回时,恢复原有被压入堆栈的PC值,继续执行原程序指令。4. P0P3口各有什么功能?P0口用作普通I/O口使用时应注意什么?答:P0P3口除了都可作为普通I/O口使用之外,在并行扩展外部存储器或I/O口情况下

35、,P0口作为低8位地址总线和数据总线(分时传送);P2口作为高8位地址总线;P3口亦有其第二功能。所以,用户一般能用作I/O口的只有P1口和未用作第二功能的部分P3口端线。P0P3作输入口时,必须先写入“1”;P0口作输出时,应外接上拉电阻。5. AT89C51单片机只用内部Flash存储器时,引脚怎样处理?答:若只用内部Flash ROM时,引脚应接高电平(如直接接电源正端),因低电平有效时,是选择读片外ROM。6. AT89C51单片机存储器结构是怎样的(画图说明)?片内数据存储器共有多少字节?划分成几个区域工作?答:AT89C51单片机存储器结构图见教材P.23图2-7所示。可分为三个不

36、同的存储空间,分别是:(1)64KB程序存储器(ROM),包括片内Flash ROM 4KB和片外ROM 60KB;(2)64KB片外数据存储器(外RAM);(3)256B内部数据存储器(内RAM)。片内256B数据存储器可分为两部分: 00H7FH共128B RAM区又可分为工作寄存器区(00H1FH)、位寻址区(20H2FH)以及数据缓冲区(30H7FH)。 80HFFH共128B区域用于存放21个特殊功能寄存器。7. 在AT89C51单片机ROM空间中,0003H、000BH、0013H、001BH、0023H有什么特殊用途?答:AT89C51单片机有5个中断源,其中2个外部中断源:、,

37、3个内部中断源:T0、T1及串行口中断。0003H、000BH、0013H、001BH、0023H分别是、T0、T1及串行口中断5个中断源中断程序入口地址。通过这些地址,引入相应中断请求的中断服务程序。8. 什么是堆栈?堆栈指针SP的初值是多少?堆栈操作必须遵循的原则是什么?答:堆栈是CPU用于暂时存放需要保护和恢复的特殊数据的“仓库”。如子程序断点地址、中断断点地址和其他需要保护的数据。堆栈指针SP专用于指出堆栈顶部数据的地址。无论存入或取出数据,SP始终指向堆栈最顶部数据的地址。当单片机上电复位时,堆栈指针SP的初值为07H,如有需要的话,可以用编程的办法重置SP值。堆栈中数据存取操作应遵

38、循“先进后出,后进先出”的原则。好比冲锋枪子弹夹中的子弹,一粒粒压进弹夹中,射击时,最后压进去的子弹先打出去(后进先出),最先压进去的子弹最后打出来(先进后出)。9. AT89C51单片机的外RAM和外ROM使用相同的地址空间和同一条总线,那么是否会在总线上出现读错和写错现象?为什么?答:AT89C51单片机外RAM和ROM虽然使用相同的地址空间并共用同一条总线,但因两者操作指令不同,控制信号也不一样,加上外RAM和外ROM都有输出缓冲器,而输出缓冲器具有三态结构,未得到允许,不能将数据送到数据总线上。这个输出允许对外RAM来说,由、信号控制,外ROM则由信号控制,所以外RAM和外ROM的数据

39、信号不会在数据总线上撞车(出错)。10. 什么是对I/O口的“读修改写”操作?答:对I/O口“读修改写”操作实质上是对其状态进行更改的过程。通常采用专门的指令来完成。例如执行ANL P0,A指令是将P0口(锁存器)的状态信号(读)与累加器A内容相“与”(修改)后,再重新从P0口输出(写)。其中“读”不是读P0口引脚上的输入信号,而是读端口原来输出的信号,即读锁存器Q端的信号。11. 单片机的复位方式有几种?复位后各个寄存器、片内RAM的状态如何?答:单片机复位电路一般有上电复位、手动开关复位和自动复位电路三种。其中自动复位电路又称“看门狗”电路。AT89C51单片机上电复位后,片内RAM各单元

40、自动清零。各寄存器进入下列状态:第 111 页 共 111 页PC:0000HACC:00HB:00HPSW:00HSP:07HDPTR:0000HPP0P3:FFHIIP:00000BIIE:000000BTTMOD:00HTCON:00HTH0:00HTLO:00HTH1:00HTL1:00HSCON:00HSBUF:不定PCON:00000B其中号表示无关位,是一个随机数值。12. 怎样改变当前工作寄存器组?答:AT89C51是根据程序状态字寄存器PSW中工作寄存器区选择位RS1、RS0来确定和改变当前工作寄存器区的。可详见2.3节的2 所述。13. AT89C51单片机的省电运行方式有

41、几种?如何进入和退出?答:AT89C51单片机省电运行方式有两种:即待机(空闲)方式和掉电保护方式。进入待机(空闲)状态,只要将PCON中IDL位置1即可。例如执行指令MOV PCON,#01H(设SMOD=0)。退出待机(休闲)状态的方法有两种:一是中断请求被响应;二是硬件复位。要进入掉电保护状态,只要将PCON中的PD位置1即可。退出掉电保护状态唯一的方法是硬件复位。14. AT89C51中XTAL1和XTAL2的功能是什么?采用外部时钟源时如何处理这两个引脚?答:XTAL1、XTAL2是晶体振荡电路反相输入端和输出端,其功能为:使用内部振荡电路时,外接石英晶体和微调电容;而采用外部时钟源

42、时,XTAL1直接接外部振荡脉冲信号,XTAL2端悬空。15. 什么是程序加密?答:所谓程序加密是指用软件对单片机中设置的加密位进行编程,用以防止已写入EPROM中的数据被非法读出的一种保密的方法。16. 什么是振荡周期、时钟周期、机器周期、指令周期?它们之间关系如何?答:振荡周期指由单片机片内或片外产生的,供单片机时钟源信号的周期,T振=1/fosc。时钟周期由单片机内部时钟电路产生,它是振荡周期的二倍。时钟周期又称状态周期。机器周期是单片机工作的基本定时单位,简称机周。一个机周含有6个状态周期,是振荡周期的12倍。指令周期是指CPU执行一条指令占用的时间(用机器周期表示)。AT89C51执

43、行各种指令的时间是不一样的,可分为单机周指令、双机周指令和四机周指令(四机周指令只有乘、除法2条指令)。17. 什么是指令的时序?简述单字节双周期指令的执行过程,并画出时序图。答:所谓指令的时序是指CPU执行指令在时间上的先后顺序。单片机一般按“读取指令 执行指令”的时序进行操作。对于单字节双周期指令的执行时序可见教材P.33图2-16(c)。在两个机周内发生4次读操作码操作。但当CPU第1次取指译码后,知道是单字节双周期指令,它会自动使后3次读操作无效,同时后3次PC不执行加“1”操作,并在第2机周的S6P2时完成指令的执行任务。时序图请参见教材P.33图2-16(c),此处略。18.与MCS-51系列单片机相比,AT89系列有什么特点?答:AT89C51单片机是ATMEL公司开发的8位内含Flash ROM单片机,与MCS-51系列完全兼容,不论是哪种封装形式,均可用相同引脚的芯片直接进行替换。其

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服