




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
./绪论1.第一台计算机的问世有何意义?答:第一台电子数字计算机ENIAC问世,标志着计算机时代的到来.与现代的计算机相比,ENIAC有许多不足,但它的问世开创了计算机科学技术的新纪元,对人类的生产和生活方式产生了巨大的影响.2.计算机由哪几部分组成?答:由运算器、控制器、存储器、输入设备和输出设备组成,运算器与控制器合称为CPU.3.微型计算机由哪几部分构成?答:微型计算机由微处理器、存储器和I/O接口电路构成.各部分通过地址总线〔AB、数据总线〔DB和控制总线〔CB相连.4.微处理器与微型计算机有何区别?答:微处理器集成了运算器和控制器〔即CPU;而微型计算机包含微处理器、存储器和I/O接口电路等.5.什么叫单片机?其主要特点有哪些?答:在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机.单片机主要特点有:控制性能和可靠性高;体积小、价格低、易于产品化;具有良好的性能价格比..6.微型计算机有哪些应用形式?各适于什么场合?答:微型计算机有三种应用形式:多板机〔系统机、单板机和单片机.多板机,通常作为办公或家庭的事务处理及科学计算,属于通用计算机.单板机,I/O设备简单,软件资源少,使用不方便.早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用.单片机,单片机体积小、价格低、可靠性高,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势.目前,单片机应用技术已经成为电子应用系统设计的最为常用技术手段.7.当前单片机的主要产品有哪些?各有何特点?答:多年来的应用实践已经证明,80C51的系统结构合理、技术成熟.因此,许多单片机芯片生产厂商倾力于提高80C51单片机产品的综合功能,从而形成了80C51的主流产品地位,近年来推出的与80C51兼容的主要产品有:ATMEL公司融入Flash存储器技术推出的AT89系列单片机;Philips公司推出的80C51、80C552系列高性能单片机;华邦公司推出的 W78C51、W77C51系列高速低价单片机;ADI公司推出的ADμC8xx系列高精度ADC单片机;LG公司推出的GMS90/97系列低压高速单片机;Maxim公司推出的DS89C420高速〔50MIPS单片机;Cygnal公司推出的C8051F系列高速SOC单片机等.8.简述单片机的开发过程.答:系统需求分析,硬件方案设计,软件编程,仿真调试,实际运行.9.单片机应用系统开发方法有哪些新方法?答:在系统编程〔ISP技术,在应用编程〔IAP技术.章280C51的结构和原理1.80C51单片机在功能上、工艺上、程序存储器的配置上有哪些种类?答:功能上分为基本型和增强型;工艺上分为HMOS工艺和CHMOS工艺;在片内程序存储器的配置上有掩膜ROM、EPROM和Flash、无片内程序存储器形式.2.80C51单片机的存储器的组织采用何种结构?存储器地址空间如何划分?各地址空间的地址范围和容量如何?在使用上有何特点?答:采用哈佛结构,在物理上设计成程序存储器和数据存储器两个独立的空间;80C51基本型单片机片内程序存储器为4KB,地址范围是0000H-0FFFH,用于存放程序或常数;片内数据存储器为128字节RAM,地址范围是00H-7FH,用于存放运算的中间结果、暂存数据和数据缓冲;另外在80H-FFH3.80C51单片机的P0~P3口在结构上有何不同?在使用上有何特点?答:作为通用I/O口时,P0、P1、P2和P3都是准双向口.P0可以作为地址/数据总线,此时是一个真正的双向口;P2口可以作为地址线的高8位;P3口是双功能口,每条口线还具有不同的第二功能.另外,P0口的驱动能力为8个TTL负载,而其它口仅可驱动4个TTL负载.4.如果80C51单片机晶振频率分别为6MHz、11.0592MHz、12MHz时,机器周期分别为多少?答:机器周期分别为2μs,1.085μs,1μs.5.80C51单片机复位后的状态如何?复位方法有几种?答:复位后,PC内容为0000H,P0口~P3口内容为FFH,SP内容为07H,SBUF内容不定,IP、IE和PCON的有效位为0,其余的特殊功能寄存器的状态均为00H.复位方法一种是上电复位,另一种是上电与按键均有效的复位.6.80C51单片机的片内、片外存储器如何选择?答:80C51的引脚为访问片内、片外程序存储器的选择端.访问片内、片外数据存储器需要采用不同的指令加以区分.7.80C51单片机的PSW寄存器各位标志的意义如何?答:CY:进位、借位标志.有进位、借位时CY=1,否则CY=0;AC:辅助进位、借位标志〔高半字节与低半字节间的进位或借位;F0:用户标志位,由用户自己定义;RS1、RS0:当前工作寄存器组选择位;OV:溢出标志位.有溢出时OV=1,否则OV=0;P:奇偶标志位.存于ACC中的运算结果有奇数个1时P=1,否则P=0.8.80C51单片机的当前工作寄存器组如何选择?答:当前工作寄存器组的选择由特殊功能寄存器中的程序状态字寄存器PSW的RS1、RS0来决定.9.80C51单片机的控制总线信号有哪些?各信号的作用如何?答:RST/VPD:复位信号输入引脚/备用电源输入引脚;ALE/:地址锁存允许信号输出引脚/编程脉冲输入引脚;/VPP:内外存储器选择引脚/片内EPROM〔或FlashROM编程电压输入引脚;:外部程序存储器选通信号输出引脚.10.80C51单片机的程序存储器低端的几个特殊单元的用途如何?答:0000H:单片机复位入口地址;0003H:外部中断0的中断服务程序入口地址;000BH:定时/计数器0溢出中断服务程序入口地址;0013H:外部中断1的中断服务程序入口地址;001BH:定时/计数器1溢出中断服务程序入口地址;0023H:串行口的中断服务程序入口地址.章380C511.80C51系列单片机的指令系统有何特点?答:执行时间短.1个机器周期指令有64条,2个机器周期指令有45条,而4个机器周期指令仅有2条〔即乘法和除法指令;指令编码字节少.单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;位操作指令丰富.这是80C51单片机面向控制特点的重要保证.2.80C51单片机有哪几种寻址方式?各寻址答:80C51单片机的寻址方式有七种.即:寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址寄存器加变址寄存器变址寻址、相对寻址和位寻址.这些寻址方式所对应的寄存器和存储空间如下表所示.序号寻址方式寄存器或存储空间1寄存器寻址寄存器R0~R7,A、AB、DPTR和C〔布尔累加器2直接寻址片内RAM低128字节、SFR3寄存器间接寻址片内RAM〔@R0,@R1,SP片外RAM〔@R0,@R1,@DPTR4立即寻址ROM5变址寻址ROM〔@A+DPTR,@A+PC6相对寻址ROM〔PC当前值的+127~-128字节7位寻址可寻址位〔内部RAM20H~2FH单元的位和部分SFR的位3.访问特殊功能寄存器SFR可以采用哪些寻址方式?答:直接寻址和位寻址方式.4.访问内部RAM单元可以采用哪些寻址方式?答:直接寻址、寄存器间接寻址和位寻址方式.5.访问外部RAM单元可以采用哪些寻址方式?答:寄存器间接寻址.6.访问外部程序存储器可以采用哪些寻址方式?答:立即寻址、变址寻址和相对寻址方式.7.为什么说布尔处理功能是80C答:单片机指令系统中的布尔指令集、存储器中的位地址空间与CPU中的位操作构成了片内的布尔功能系统,它可对位〔bit变量进行布尔处理,如置位、清零、求补、测试转移及逻辑"与"、"或"等操作.在实现位操作时,借用了程序状态标志器〔PSW中的进位标志Cy作为位操作的"累加器".8.对于80C答:寄存器间接寻址方式.9.试根据指令编码表写出下列指令的机器码.〔1MOVA,#88H74H,88H〔2MOVR3,50HABH,50H〔3MOVP1,#55H75H,90H,55H〔4ADDA,@R127H〔5SETB12HD2H,12H10.完成某种操作可以采用几条指令构成的指令序列实现,试写出完成以下每种操作的指令序列.〔1将R0的内容传送到R1;〔2内部RAM单元60H的内容传送到寄存器R2;〔3外部RAM单元1000H的内容传送到内部RAM单元60H;〔4外部RAM单元1000H的内容传送到寄存器R2;〔5外部RAM单元1000H的内容传送到外部RAM单元2000H.答:〔1MOVA,R0MOVR1,A〔2MOVR2,60H〔3MOVDPTR,#1000HMOVXA,@DPTRMOV60H,A〔4MOVDPTR,#1000HMOVXA,@DPTRMOVR2,A〔5MOVDPTR,#1000HMOVXA,@DPTRMOVDPTR,#2000HMOVX@DPTR,A11.若〔R1=30H,〔A=40H,〔30H=60H,〔40H=08H.试分析执行下列程序段后上述各单元内容的变化.MOVA,@R1MOV@R1,40HMOV40H,AMOVR1,#7FH答:〔R1=7FH〔A=60H〔30H=08H〔40H=60H12.若〔A=E8H,〔R0=40H,〔R1=20H,〔R4=3AH,〔40H=2CH,〔20H=0FH,试写出下列各指令独立执行后有关寄存器和存储单元的内容?若该指令影响标志位,试指出CY、AC、和OV的值.〔1MOVA,@R0〔2ANL40H,#0FH〔3ADDA,R4〔4SWAPA〔5DEC@R1〔6XCHDA,@R1答:〔1〔A=2CH〔2〔40H=0CH〔3〔A=22H,〔CY=1,〔AC=1,〔OV=0〔4〔A=8EH〔5〔20H=0EH,P=1〔6〔A=EFH,〔20=08H13.若〔50H=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?MOVA,50HMOVR0,AMOVA,#00HMOV@R0,AMOVA,#3BHMOV41H,AMOV42H,41H答:〔A=3BH,〔R0=40H,〔40H=00H,〔41H=3BH,〔42H=3BH.14.试用位操作指令实现下列逻辑操作.要求不得改变未涉及的位的内容.〔1使ACC.0置位;〔2清除累加器高4位;〔3清除ACC.3,ACC.4,ACC.5,ACC.6.答:〔1SETBACC.0〔2ANLA,#0FH〔3ANLA,#87H15.试编写程序,将内部RAM的20H、21H、22H三个连续单元的内容依次存入2FH、2EH和2DH单元.答:MOV2FH,20HMOV2EH,21HMOV2DH,22H16.试编写程序,完成两个16位数的减法:7F4DH-2B4EH,结果存入内部RAM的30H和31H单元,30H单元存差的高8位,31H单元存差的低8位.答:CLRCYMOV30H,#7FHMOV31H,#4DHMOVR0,#31HMOVA,@R0SUBBA,#4EMOV@R0,A;保存低字节相减结果DECR0MOVA,@R0SUBBA,#2BHMOV@R0,A;保存高字节相减结果17.试编写程序,将R1中的低4位数与R2中的高4位数合并成一个8位数,并将其存放在R1中.答:MOVA,R2ANLA,#0F0HORLR1,A18.试编写程序,将内部RAM的20H、21H单元的两个无符号数相乘,结果存放在R2、R3中,R2中存放高8位,R3中存放低8位.答:MOVA,20HMOVB,21HMULABMOVR3,AMOVR2,B19.若〔CY=1,〔P1=10100011B,〔P3=01101100B.试指出执行下列程序段后,CY、P1口及P3口内容的变化情况.MOVP1.3,CMOVP1.4,CMOVC,P1.6MOVP3.6,CMOVC,P1.0MOVP3.4,C答:〔CY=1,〔P1=10111011B,〔P3=00111100B章480C51的汇编语言程序设计1.80C答:汇编语言结构紧凑、灵活,汇编成的目标程序效率高,具有占存储空间少、运行速度快、实时性强等优点.它是面向机器的语言,对于单片机硬件的操作直接、方便,有利于初学者对单片机结构的认知.但它与高级语言相比移植性不好、编程复杂、对编程人员的基础要求高.2.利用80C答:一、任务分析首先,要对单片机应用系统的设计目标进行深入分析,明确系统设计任务:功能要求和技术指标.然后对系统的运行环境进行调研.这是应用系统程序设计的基础和条件.二、算法设计经过任务分析和环境调研后,已经明确的功能要求和技术指标可以用数学方法〔或模型来描述,进而把一个实际的系统要求转化成由计算机进行处理的算法.并对各种算法进行分析比较,并进行合理的优化.三、流程描述程序的总体构建.先要确定程序结构和数据形式,资源分配和参数计算等.然后根据程序运行的过程,规划程序执行的逻辑顺序,用图形符号将程序流程绘制在平面图上.应用程序的功能通常可以分为若干部分,用流程图将具有一定功能的各部分有机地联系起来.流程图可以分为总流程图和局部流程图.总流程图侧重反映程序的逻辑结构和各程序模块之间的相互关系;局部流程图反映程序模块的具体实施细节.3.常用的程序结构有哪几种?特点如何?答:顺序程序:无分支、无循环结构的程序,其执行流程是依指令在存储器中的存放顺序进行的;分支程序:可以改变程序的执行顺序;循环程序:按某种控制规律重复执行的程序,控制一部分指令重复执行若干次,以便用简短的程序完成大量的处理任务.4.子程序调用时,参数的传递方法有哪几种?答:利用累加器或寄存器;利用存储器;利用堆栈.5.什么是伪指令?常用的伪指令功能如何?答:伪指令是汇编程序能够识别并对汇编过程进行某种控制的汇编命令.常用的伪指令包括:ORG,功能是向汇编程序说明下面紧接的程序段或数据段存放的起始地址;END,功能是结束汇编;DB,功能是从标号指定的地址单元开始,在程序存储器中定义字节数据;DW,功能是从标号指定的地址单元开始,在程序存储器中定义字数据空间;EQU,功能是将表达式的值或特定的某个汇编符号定义为一个指定的符号名;BIT,功能是将位地址赋给指定的符号名.6.设被加数存放在内部RAM的20H、21H单元,加数存放在22H、23H单元,若要求和存放在24H、25H中,试编写出16位无符号数相加的程序〔采用大端模式存储.答:程序如下:ORG0000HMOVR0,#21HMOVR1,#23HMOVA,@R0ADDA,@R1MOV25H,ADECR0DECR1MOVA,@R0ADDCA,@R1MOV24H,ASJMP$END7.编写程序,把外部RAM中1000H~101FH的内容传送到内部RAM的30H~4FH中.答:ORG0000HMOVDPTR,#1000HMOVR0,#30HMOVR7,#32LOOP:MOVXA,@DPTRMOV@R0,AINCR0INCDPTRDJNZR7,LOOPRET8.编写程序,实现双字节无符号数加法运算,要求〔R0R1+〔R6R7→〔60H61H.答:ORG0000HMOVA,R1ADDA,R7MOV61H,AMOVA,R0ADDCA,R6MOV60H,ASJMP$END9.若80CDELAY:MOVR7,#0F6HLP:MOVR6,#0FAHDJNZR6,$DJNZR7,LPRET答:延时时间:2µs*{[1+<〔1+2*250+2*246>+2]+2}=0.247486秒〔含调用指令2个机器周期10.在内部RAM的30H~37H单元存有一组单字节无符号数.要求找出最大数存入BIG单元.试编写程序实现.答:ORG0000HBIGDATA2FHONEDATA2AHTWODATA2BHSTART:MOVR7,#7;比较次数MOVR0,#30HLOOP:MOVA,@R0MOVONE,AINCR0MOVTWO,@R0CLRCSUBBA,@R0JCNEXT;ONE小,TWO大继续比下一对数MOV@R0,ONE;ONE大放后面〔交换DECR0 MOV@R0,TWO;TWO小放前面INCR0;NEXT:DJNZR7,LOOPMOVBIG,37HSJMP$END11.编写程序,把累加器A中的二进制数变换成3位BCD码,并将百、十、个位数分别存放在内部RAM的50H、51H、52H中.答:单字节二进制数转换为压缩的BCD码仅需要2个字节;在将压缩的BCD码拆分存于3个单元.org0MOV52H,#0MOV51H,#0MOV50H,#0MOVA,#0FDhLCALLDCDTHSJMP$DCDTH:MOVR7,#8MOVR0,A;暂存于R0LOOP:CLRCMOVA,R0RLCAMOVR0,AMOVR1,#51H;MOVA,@R1;ADDCA,@R1;DAA;MOV@R1,A;DECR1MOVA,@R1ADDCA,@R1DAAMOV@R1,A DJNZR7,LOOP INCR1;50H已是结果,R1指向51H,51H单元需拆分MOVA,#00HXCHDA,@R1MOV52H,AMOVA,@R1SWAPAMOV@R1,A RETEND12.编写子程序,将R1中的2个十六进制数转换为ASCII码后存放在R3和R4中.答:ORG0MOVR1,#5BH MOVA,R1ANLA,#0F0HSWAPAACALLASCIIMOVR3,A MOVA,R1ANLA,#0FHACALLASCIIMOVR4,ASJMP$ASCII:PUSHACCCLRCSUBBA,#0AHPOPACCJCLOOPADDA,#07HLOOP:ADDA,#30HRETEND13.编写程序,求内部RAM中50H~59H十个单元内容的平均值,并存放在5AH单元.答:ORG0000HMOVR7,#10MOVR0,#50HMOVB,#10CLRCCLRALOOP:ADDCA,@R0INCR0DJNZR7,LOOPDIVABMOV5AH,ASJMP$END14.如图4.10所示,编制程序实现:上电后显示"P",有键按下时显示相应的键号"0”~"7答:实现程序如下:TEMPEQU30HORG0000HJMPSTARTORG0100HSTART:MOVSP,#5FHMOVP0,#8CH;正序显示"P"MOVP3,#0FFH;输入方式CLRCYNOKEY:MOVA,P3CPLAJZNOKEY;无键按下MOVTEMP,P3;有键按下CALLD10msMOVA,P3CJNEA,TEMP,NOKEY ;去抖动MOVR2,#0;键号计数器复位MOVA,TEMPLP:RRCAJNCDONEINCR2SJMPLPDONE:MOVA,R2MOVDPTR,#CODE_P0MOVCA,@A+DPTRMOVP0,A JMPNOKEYD10ms:MOVR5,#10;10MSD1ms:MOVR4,#249DL:NOPNOPDJNZR4,DLDJNZR5,D1msRETCODE_P0:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB80H,90H,88H,83H,0C6H,0A1H,86H,8EHEND 章580C51的中断系统及定时/计数器1.80C答:5个中断源,分别为外中断和、T0和T1溢出中断、串口中断.电平方式触发的外中断标志与引脚信号一致;边沿方式触发的外中断响应中断后由硬件自动复位.T0和T1,CPU响应中断时,由硬件自动复位.RI和TI,由硬件置位.必须由软件复位.另外,所有能产生中断的标志位均可由软件置位或复位.各中断入口地址:―0003H,T0—000BH,—0013H,T1—001BH,RI和TI—0023H.2.某系统有三个外部中断源1、2、3,当某一中断源变低电平时便要求CPU处理,它们的优先处理次序由高到低为3、2、1,处理程序的入口地址分别为2000H、2100H、2200H.试编写主程序及中断服务程序〔转至相应的入口即可.答:将3个中断信号经电阻线或,接.ORG0000HLJMPMAINORG00013HLJMPZDFZORG0040HMAIN:SETBEASETBEX1SJMP$0RG0200HZDFZ:PUSHPSWPUSHACCJBP1.0,DV0JBP1.1,DV1JBP1.2,DV2INRET:POPACCPOPPSWRETIORG2000HDV0:JMPINRETORG2100HDV1:JMPINRETORG2200HDV2:JMPINRET3.外部中断源有电平触发和边沿触发两种触发方式,这两种触发方式所产生的中断过程有何不同?怎样设定?答:当IT0=0时,为电平触发方式.电平触发方式时,CPU在每个机器周期的S5P2采样引脚电平,当采样到低电平时,置IE0=1向CPU请求中断;采样到高电平时,将IE0清0.在电平触发方式下,CPU响应中断时,不能自动清除IE0标志.电平触发方式时,外部中断源的有效低电平必须保持到请求获得响应时为止,不然就会漏掉;在中断服务结束之前,中断源的有效的低电平必须撤除,否则中断返回之后将再次产生中断.该方式适合于外部中断输入为低电平,且在中断服务程序中能清除外部中断请求源的情况.当IT0=1时,为边沿触发方式.边沿触发方式时,CPU在每个机器周期的S5P2采样引脚电平,如果在连续的两个机器周期检测到引脚由高电平变为低电平,即第一个周期采样到=1,第二个周期采样到=0,则置IE0=1,产生中断请求.在边沿触发方式下,CPU响应中断时,能由硬件自动清除IE0标志.边沿触发方式时,在相继两次采样中,先采样到外部中断输入为高电平,下一个周期采样到为低电平,则在IE0或IE1中将锁存一个逻辑1.若CPU暂时不能响应,中断申请标志也不会丢失,直到CPU响应此中断时才清0.另外,为了保证下降沿能够被可靠地采样到,和引脚上的负脉冲宽度至少要保持一个机器周期〔若晶振频率为12MHz,为1微秒.边沿触发方式适合于以负脉冲形式输入的外部中断请求.4.定时/计数器工作于定时和计数方式时有何异同点?答:定时/计数器实质是加1计数器.不同点:设置为定时器模式时,加1计数器是对内部机器周期计数〔1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12.计数值乘以机器周期就是定时时间.设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器.在每个机器周期的S5P2期间采样T0、T1引脚电平.当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器.相同点:它们的工作原理相同,它们都有4种工作方式,由TMOD中的M1M0设定,即方式0:13位计数器;方式1:16位计数器;方式2:具有自动重装初值功能的8位计数器;方式3:T0分为两个独立的8位计数器,T1停止工作.5.定时/计数器的4种工作方式各有何特点?答:方式0位13位计数器,由TL0的低5位〔高3位未用和TH0的8位组成.TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU发出中断请求.计数初值计算的公式为:X=213-N方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器.计数个数与计数初值的关系为:X=216-N方式2为自动重装初值的8位计数方式.TH0为8位初值寄存器.当TL0计满溢出时,由硬件使TF0置1,向CPU发出中断请求,并将TH0中的计数初值自动送入TL0.TL0从初值重新进行加1计数.周而复始,直至TR0=0才会停止.计数个数与计数初值的关系为:X=28-N方式3只适用于定时/计数器T0,定时器T1处于方式3时相当于TR1=0,停止计数.方式3时,T0分成为两个独立的8位计数器TL0和TH0,TL0使用T0的所有控制位.当TL0计数溢出时,由硬件使TF0置1,向CPU发出中断请求.而TH0固定为定时方式〔不能进行外部计数,并且借用了T1的控制位TR1、TF1.因此,TH0的启、停受TR1控制,TH0的溢出将置位TF1.6.要求定时/计数器的运行控制完全由TR1、TR0确定和完全由、高低电平控制时,其初始化编程应作何处理?答:TMOD中GATE的值不同:完全由TR1、TR0确定时GATE为0;完全由、高低电平控制时GATE为1.7.当定时/计数器T0用作方式3时,定时/计数器T1可以工作在何种方式下?如何控制T1的开启和关闭?答:T0用作方式3时,T1可以工作在方式0、1和2.T1的开启由TR1控制,即TR1=1时,T1开始工作;TR1=0时或者定时/计数器工作在方式3时,T1停止工作.8.利用定时/计数器T0从P1.0输出周期为1s,脉宽为20ms的正脉冲信号,晶振频率为12MHz.试设计程序.答:采用定时20ms,然后再计数1、49次的方法实现.a、T0工作在定时方式1时,控制字TMOD配置:M1M0=01,GATE=0,C/=0,可取方式控制字为01H;b、计算计数初值X:晶振为12MHz,所以机器周期Tcy为1.N=t/Tcy=20×10-3/1×10-6=20000X=216-N=65536-20000=45536=4E20H即应将4EH送入TH1中,20H送入TL1中.c、实现程序如下:ORG0000HAJMPMAIN;跳转到主程序ORG0030HMAIN:MOVTMOD,#01H;设T1工作于方式2MOVTH0,#4EH;装入循环计数初值MOVTL0,#20H;首次计数值LP0:SETBP1.0ACALLNT0CLRP1.0MOVR7,#49;计数49次LP1:ACALLNT0DJNZR7,LP1AJMPLP0NT0:MOVTH0,#4EHMOVTL0,#20HSETBTR0 JNBTF0,$ CLRTR0 CLRTF0RETEND9.要求从P1.1引脚输出1000Hz方波,晶振频率为12MHz.试设计程序.答:采用T0实现a、T0工作在定时方式1时,控制字TMOD配置:M1M0=01,GATE=0,C/=0,可取方式控制字为01H;b、计算计数初值X:晶振为12MHz,所以机器周期Tcy为1.1/1000=1×10-3N=t/Tcy=0.5×10-3/1×10-6=500X=216-N=65536-500=65036=FE0CH即应将FEH送入TH0中,0CH送入TL0中.c、实现程序如下:ORG0000HAJMPMAIN;跳转到主程序ORG000BH;T0的中断入口地址LJMPDVT0ORG0030HMAIN:MOVTMOD,#01H;设T0工作于方式2MOVTH0,#0FEH;装入循环计数初值MOVTL0,#0CH;首次计数值SETBET0;T0开中断SETBEA;CPU开中断SETBTR0;启动T0SJMP$;等待中断DVT0:CPLP1.1MOVTH0,#0FEHMOVTL0,#0CHSETBTR0RETIEND10.试用定时/计数器T1对外部事件计数.要求每计数100,就将T1改成定时方式,控制P1.7输出一个脉宽为10ms的正脉冲,然后又转为计数方式,如此反复循环.设晶振频率为12MHz.答:a、T1工作在计数方式2时,控制字TMOD配置:M1M0=10,GATE=0,C/=1,可取方式控制字为60H;T1工作在定时方式1时,控制字TMOD配置:M1M0=01,GATE=0,C/=0,可取方式控制字为10H;b、计算初值X:定时10ms时:晶振为12MHz,所以机器周期Tcy为1.N=t/Tcy=10×10-3/1×10-6=10000X=216-N=65536-10000=55536=D8F0H即应将D8H送入TH1中,F0H送入TL1中.计数100时:N=100X=28-N=256-100=156=9CHc、实现程序如下:ORG0000HAJMPMAIN;跳转到主程序ORG001BH;T1的中断入口地址LJMPDVT1ORG0030HMAIN:MOVTMOD,#60H;T1工作于计数方式2MOVTH1,#9CH;装入计数初值MOVTL1,#9CH;CLRP1.7SETBET1;T1开中断SETBEA;CPU开中断SETBTR1;启动T1SJMP$;等待中断DVT1:SETBP1.7CLRET1CLRTR1 MOVTMOD,#10H;T1工作于定时方式1MOVTH1,#0D8H;装初值MOVTL1,#0F0HSETBTR1 JNBTF1,$;查询等待10msCLRTF1CLRTR1CLRP1.7MOVTMOD,#60H;T1工作于计数方式2MOVTH1,#9CH;装初值MOVTL1,#9CH;SETBET1;T1开中断SETBTR1;启动T1RETIEND11.利用定时/计数器T0产生定时时钟,由P1口控制8个指示灯.编一个程序,使8个指示灯依次闪动,闪动频率为1次/秒〔即,亮1秒后熄灭并点亮下一个,.答:采用定时20ms,计数50次实现1秒定时.编制1秒延时子程序,由主程序调用.a、T0工作在定时方式1时,控制字TMOD配置:M1M0=01,GATE=0,C/=0,可取方式控制字为01H;b、计算计数初值X:晶振为12MHz,所以机器周期Tcy为1.N=t/Tcy=20×10-3/1×10-6=20000X=216-N=65536-20000=45536=4E20H即应将4EH送入TH1中,20H送入TL1中.c、实现程序如下:ORG0000HAJMPMAIN;跳转到主程序ORG0030HMAIN:CLRCYMOVA,#01HLP0:MOVP1,ACALLD1SECRLAAJMPLP0D1SEC:MOVR7,#50;计数50次MOVTMOD,#01HDL:MOVTH0,#4EHMOVTL0,#20HSETBTR0 JNBTF0,$ CLRTR0 CLRTF0DJNZR7,DLRETEND章680C51的串行口1.80C答:四种工作方式,由SCON中的SM0、SM1进行定义:方式0:同步移位寄存器的输入输出方式,主要用于扩展并行输入或输出口,波特率固定.方式1:10位数据的异步通信口,波特率可变.方式2:11位数据的异步通信口,波特率固定.方式3:11位数据的异步通信口,波特率可变.2.串行通信的接口标准有那几种?答:RS-232C接口、RS-422A接口、RS-485接口3.在串行通信中通信速率与传输距离之间的关系如何?答:最大距离与传输速率及传输线的电气特性有关.当传输线使用每0.3m〔约1ft有50PF电容的非平衡屏蔽双绞线时,传输距离随传输速率的增加而减小.当波特率超过1000bps时,最大传输距离将迅速下降4.在利用RS-422/RS-485通信的过程如果通信距离〔波特率固定过长,应如何处理?答:在波特率一定的情况下,带负载数的多少,与信号能传输的最大距离是直接相关的.在总线允许的范围内,带负载数越多,信号能传输的距离就越小;带负载数越少,信号能传输的距离就越远.故应减小通信距离或减少负载数量.5.利用单片机串行口扩展并行输入接口电路如图所示.试编写程序完成将SW1~SW8的状态反应在P0口所接的LED上〔如SW1闭合时L7应点亮.答:电路图如下:ORG0000HMOVSCON,#10HLOOP:CLRP1.7NOPNOPNOPSETBP1.7CLRRIJNBRI,$MOVA,SUBFSJMPLOOPEND6.利用单片机串行口扩展并行输出接口电路如图所示.试编写程序完成将SW1~SW8的状态反应在移位寄存器74LS164所接的LED上〔如SW1闭合时L0应点亮.答:电路图如下:ORG0000HMOVSCON,#00HMOVP1,#0FFHLOOP:MOVA,P1MOVSUBF,AJNBTI,$CLRTISJMPLOOPEND章880C51的串行总线扩展1.I2C总线的特答:a、二线制传输.器件引脚少,器件间连接简单,电路板体积减小,可靠性提高.b、传输速率高标准模式传输速率为100Kb/s,快速模式为400Kb/s,高速模式为3.4Mb/s.c、支持主/从和多主两种工作方式2、I2C答:SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号.起始和终止信号如图所示.3、I2C答:在主机发出起始信号后要再传输1个控制字节:7位从器件地址,1位传输方向控制位〔用"0”表示主机发送数据,"14、具备I2C总线接口的E2答:典型产品如ATMEL公司的AT24C系列:型号容量AT24C01AAT24C02 256AT24C04 512AT24C08AAT24C16AAT24C32AAT24C64AAT24C128B 16KAT24C256B 32KAT24C512B 64K5、AT24C系列芯片的读写格式如何?答:a、写操作过程对AT24C02写入时,单片机发出起始信号之后再发送的是控制字节,然后释放SDA线并在SCL线上产生第9个时钟信号.被选中的存储器器件在确认是自己的地址后,在SDA线上产生一个应答信号,单片机收到应答后就可以传送数据了.传送数据时,单片机首先发送一个字节的预写入存储单元的首地址,收到正确的应答后,单片机就逐个发送各数据字节,但每发送一个字节后都要等待应答.单片机发出停止信号P后,启动AT24C02的内部写周期,完成数据写入工作〔约10ms内结束.AT24C02片内地址指针在接收到每一个数据字节后自动加1,在芯片的"一次装载字节数"〔页面字节数限度内,只需输入首地址.装载字节数超过芯片的"一次装载字节数"时,数据地址将"上卷",前面的数据将被覆盖.要写入的数据传送完后,单片机应发出终止信号以结束写入操作.写入n个字节数据格式如下:b、读操作过程对AT24C02读出时,单片机也要发送该器件的控制字节〔"伪写",发送完后释放SDA线并在SCL线上产生第9个时钟信号,被选中的存储器在确认是自己的地址后,在SDA线上产生一个应答信号作为响应.然后,单片机再发送一个字节的要读出器件的存储区的首地址,收到器件的应答后,单片机要重复一次起始信号并发出器件地址和读方向位〔"1",收到器件应答后就可以读出数据字节,每读出一个字节,单片机都要回复应答信号.当最后一个字节数据读完后,单片机应返回以"非应答"〔高电平,并发出终止信号以结束读出操作.读出n个字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全施工培训考核课件
- 改造提升整治工程方案(3篇)
- 安全文明驾驶学习培训课件
- 安全文明礼貌培训课件
- 猫眼部疾病知识培训内容课件
- 安全教育自评课件
- “周总理你在哪里”的呼唤声为何经久不绝
- 废物油桶改造工程方案(3篇)
- 安全教育民营企业培训课件
- 狂野大数据课件
- NEDD4在非小细胞肺癌EGFR-TKIs继发耐药中的作用机制与临床启示
- 车辆按揭押金合同协议
- 耳穴压豆法在临床中的应用
- 2024心肺复苏操作考核评分标准
- 2025春季学期国开电大专科《政治学原理》一平台在线形考(形考任务二)试题及答案
- 内镜标本规范处理
- 汽车电工电子基础电子教案2电流、电压和电位
- 2025年通力扶梯e1试题及答案
- 老年临床营养支持
- 发电厂继电保护培训课件
- 《李白的诗歌》课件
评论
0/150
提交评论