单片机作业

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章1、写出下列二进制数的原码、反码和补码(设字长为8位)。(1)001011(2)-0010112、微型计算机由那几部分构成?3、什么叫单片机?它有何特点?1、(1)原码:00001011反码:00001011补码:00001011(2)原码:10001011反码:11110100补码:111101012、微型计算机由微处理器、存储器和I/O接口电路构成。各部分通过地址总线(AB)、数据总线(DB)和控制总线(CB)相连。3、单片机就是在一块硅片上集成了CPU、RAM、ROM、定时器/计数器和多种I/O口(如并行、串行及A/D变换器等)的一个完整的数字处理系统。单片机主要特点有:品种多样,型号繁多;存储容量大;频率高,速度快;控制功能强,集成度高;功耗低;配套应用软件多。第二章2.1说明ROM,EPROM,EEPROM和Flash之间的主要特点和区别?2.3某ROM芯片中有12根地址输入端和8个数据输入端,该芯片的存储容量是多少位?2.4说明动态RAM和静态的主要区别,使用时应该如何选用。2.6现有若干片2K*8位的RAM芯片,主控制器的地址线为20根,若用线选法组成片外存储器,有效的寻址范围最大是多少?若用3-8译码器来产生片选信号,则有效的寻址范围最大有是多少?若要将寻址范围扩展到64KB,应选用什么样的译码器来产生片选信号?2.8如图2.22所示,若用1K*8位的芯片来扩展3K*8位RAM,试计算各片的地址范围。2.1.)1.掩模工艺ROM(固定式ROM):用来存储计算机用的某些标准程序和固定的数据表格,因为制造出来已经被固定了,所以只能读,不能写。2.可擦除可编程存储器EPROM:具有可擦除功能,擦除后可进行再编程,但是擦除需要紫外线照射,平时保存要避免阳光直射。3.可电擦除可编程只读存储器EEPOM:用电信号进行擦除,具有ROM的非易失性,又有RAM的随机读写,但是写入速度比较慢,重编程时间较长,有效重编程次数较低。4.快闪存储器ROM(FlashROM):既可读又可写,但写入速度较慢,而且又可擦除又可改写,但是必须按块擦除且不能按字节改写。2.3)4k*82.4)动态RAM与静态RAM的区别:(1)静态RAM主要是以多管触发器作为基础存储电路,动态RAM则是由单管线路组成。(2)静态RAM的集成度低于动态RAM(3)静态RAM不需要刷新电路,而动态RAM则是靠电容存储信息,存在泄漏电流,需定时刷新(4)动态RAM的功耗比静态RAM低(5)动态RAM价格比动态RAM便宜2.6)因为4K=2^11,所以用11根地址线,留下剩下9根做线选,即可以并联9个芯片,故最大选址范围是2*9KB。若用3-8译码器来产生片选信号,9条地址线可以控制3个3-8译码器这样就可以控制24个芯片最大范围是2*24KB.若要将寻址范围扩展到64KB可选用4-16地址译码器来产生片选信号。2.8A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0#11010000000000000A000H1010001111111111A3FFH#21011000000000000B000H1011001111111111B3FFH#31011010000000000B400H1011011111111111B7FFH所以易得3片各自的地址范围为:片1:A000H-A3FFH,片2:B000H-B3FFH,片3:B400H-B7FFH.第三章3.4简述程序状态寄存器PSW中各位的含义?3.9堆栈有哪些功能?堆栈指示器(SP)的作用是什么?在程序设计时,为什么要对SP重新赋值?3.10内部RAM低128单元划分为哪3个主要部分?说明各部分的使用特点。3.14已知一个MCS-51单片机系统使用6MHz的外部晶体振荡器,该单片机系统的状态周期与机器周期各位多少?答:3.4PSW中是八位寄存器,是由位序D7-D0组成,D7是CY(进/借位标志位)、D6是AC(辅助进/借位标志位)、D5是F0(用户标志位)、D4和D3分别是RS1,RS0(寄存器组选择位)、D2是OV(溢出标志位)、D1无含义还有D0是奇偶标志位。3.9(1)堆栈的主要功能是保护断点以便正确返回和保护现场即保护一些寄存器。(2)堆栈指示器SP是堆栈“栈顶”的存储单位地址。(3)重新赋值是为了避免数据冲突现象的发生。3.10内部RAM主要划分为工作寄存器区(00H—1FH)、位寻址区(20H-2FH)、用户RAM区(30H-7FH)。工作寄存器区称为通用寄存器,有四组寄存器,每组由八个单位组成,总共有32个单位,采用直/间接寻址的方式给CPU提供就近存取数据的便利,提高工作速度。位寻址区有16个单位,可作为一般的RAM区进行字节操作,又可对单位的每一位进行位操作。用户RAM区共80个单位,一般把堆栈设置在此区域里。3.146MHz的晶体振荡器的振荡周期为1/6μs,时钟周期为振荡周期的2倍,为1/3μs,一个机器周期是由6个状态组成,所以一个机器周期为2μs.第四章4.6试写出完成以下每种操作的指令:(1)内部RAM30H的内容传送到外部RAM单元2000H(2)外部ROM单元2000H的内容传送到R5(3)外部RAM单元2000H的内容传送到外部RAM单元2001H4.9编写指令实现以下位操作(1)使累加器的最高2位清0,其余位不变(2)将P0的低2位置1,其余位不变(3)将A的低3位取反,其余位不变4.7设内部RAM(30H)=60H,(60H)=10H。(R1)=22H,(P1)=0AH,分析以下程序执行后(30H)=,(60H)=,(10H)=,(A)=,(B)=,(P2)=MOVR0,#30HMOVA,@R0MOVR1,AMOVB,@R1MOV@R1,P1MOVP2,P1MOV10H,#90H4.14设计双字节无符号数加法程序实现(R0R1)+(R2R3)→(R4R5),R0、R2、R4存放16位数的高字节,R1、R3、R5存放低字节,假设其和不超过16位。答:4.6(1)MOVA,30HMOVDPTR,#2000HMOV@DPTR,A(2)MOVDPRT,#2000HMOVA,#00HMOVCA,@A+DPTRMOVR5,A(3)MOVDPTR,#2000HMOVXA,@DPTRINCDPTRMOVX@DPTR,A4.9(1)CLRACC.7CLRACC.6(2)ORLP0,#03H(3)XRLA,#07H4.7MOVR0,#30H;(R0)=30HMOVA,@R0;(A)=60HMOVR1,A;(R1)=60HMOVB,@R1;(B)=10HMOV@R1,P1;(60H)=0AHMOVP2,P1;(P2)=0AHMOV10H,#90H;(10H)=90H则(30H)=60H,(60H)=10H,(10H)=90H,(A)=60H,(B)=10H,(P2)=0AH4.14MOVA,R1CLRCADDA,R3MOVR5,AMOVA,R0ADDCA,R2MOVR4,A第五章5.4子程序调用时,参数的传递方法有哪几种?5.6把外部RAM的2000—20FFHRAM空间置零5.9编写一段程序,把外部RAM中1000H-1030H单元的内容传送到内部RAM的30-60H单元5.12在内部RAM的21H单元开始存储有一组单字节不带符号数,数据长度为30H(最后一个字节数据存放在50H单元),要求使用沉底法把最大值存放到RAM50H单元。答:5.4子程序调用时,有三种方式:利用累加器或寄存器、利用存储器、利用堆栈.5.6ORG0000HLJMPMAINORG1000HMAIN:MOVDPTR,#2000HMOVR1,#256LOOP:CLRAMOVX@DPTR,AINCDPTRDJNZR1,LOOPSJMP$END5.9ORG0000HLJMPMAINORG0100HMAIN:MOVDPTR,#1000HMOVR1,#30HMOVR3,#49LOOP:MOVXA,@DPTRMOV@R1,AINCR1INCDPTRDJNZR3,LOOPSJMP$END5.12ORG0000HLJMPMAINORG1000HMAIN:MOVR1,#21HMOVR3,#2FHMOVA,@R1LOOP:INCR1CLRCSUBBA,@R1JNCLOOP1MOVA,@R1LOOP1:DJNZR3,LOOPMOV50H,ASJMP$END第六章6.580C51单片机有五个中断源,分别是什么?它们各自的中断入口地址是什么?6.1080C51单片机有多少个定时/计数器,定时/计数器0有多少种工作方式?定时/计数器1有多少种工作方式?6.16设置单片机的定时器1工作在中断模式,方式1,计数器模式,软件启动,定时器0未使用,使用外部中断0,下降沿触发中断,外部中断1闲置,串口关闭。要求设置定时器1的中断优先级最高。那么IE=,IP=,TMOD=IT0=6.17执行以下代码的作用是ANLTMOD,#0F0HORLTMOD,#02H6.18某单片机系统的晶振为12MHz。使用定时/计数器0,使用中断模式和方式1,使得P1.0输出频率为500HZ的方波。写出其初始化程序。答:6.5答:5个中断源分别是外部中断0、外部中断1、定时/计数器0、定时/计数器1、串行通信接口中断。的中断入口地址是0003H,定时/计数器0的中断入口地址是:000BH;定时/计数器1的中断入口地址是:001BH;串行通信接口的中断入口地址是:0023H;外部中断0的中断入口地址是:0003H;外部中断1的中断入口地址是:0013H.6.10答:2,4,36.16答:89H或10001001B,08H或00001000B,50H或01010000B,16.17答:设置定时/计数器0工作在方式2,定时器模式,仅由软件启动。6.18晶振频率为12MHz,则计数器周期为1us,方波的周期为1/500=0.002s=2000us,则高低电平时间各为1000us,定时时间为1000us。使用定时器/计数器0,方式1,中断模式。T0初值=216-(12*106Hz*1000*10-6s)/12=64536=FC18H程序代码如下:ORG0000HAJMPMAIN_STARTORG000BHAJMPINT_T0_HANDLEORG0030HINT_T0_HANDLE:MOVTH0,#0FCHMOVTL0,#18HCPLP1.0RETIORG0100HMAIN_START:MOVTMOD,#01HSETBET0MOVTH0,#0FCHMOVTL0,#18HCLRP1.0SETBEASETBTR0WAIT:AJMP$END第七章7.3若晶体的振荡频率为11.0592MHz,串行口工作于方式1,波特率为4800bps.写出其初始化程序。7.5用8031串行口连接2片74LS165,扩展1个16位的并行输入口,填空实现从16位并行口输入10次数据(20次8位数据),存入内部RAM区50H开始的单元中。MOVR7,#14HMOVR0,SETBF0RCV0:CLRP1.0SETBP1.0RCV1:MOVSCON,JNBRI,$CLRRIMOVA,SBUFMOV@R0,AINCR0JBF0,RCV2DECR7SJMPRCV1RCV2:7.6用8051串行口外加移位寄存器扩展16位输出口,输出2位7段显示码,在LED上显示。下面程序采用查询法编程,设2位显示码存放在RAM20H,21H,通过查表法找到7段显示码,从串口输出,由7段显示器来显示,填空完成以上功能。MOVR7,#02HMOVR0,#20HMOVSCON,DISP1:MOVA,@R0MOVDPTR,#TABMOVSBUF,ACLRTIINCR0DJNZR7,DISP1RETTAB:DB3FH,06H,5BH,4FH,66HDB6DH,7DH,07H,7FH,6FH答:7.3MOVTMOD,#20HMOVSCON,#50HMOVTH1,#0FAHMOVTH1,#0FAHMOVTL1,#0FAHMOV

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功