单片机原理和接口技术_西南大学2017作业

合集下载

单片机原理及接口技术课后习题 答案

单片机原理及接口技术课后习题 答案

第九章复习思考题1. 计算机系统中为什么要设置输入输出接口输入/输出接口电路是CPU与外设进行数据传输的桥梁..外设输入给CPU的数据;首先由外设传递到输入接口电路;再由CPU从接口获取;而CPU输出到外设的数据;先由CPU输出到接口电路;然后与接口相接的外设获得数据..CPU与外设之间的信息交换;实际上是与I/O 接口电路之间的信息交换..2. 简述输入输出接口的作用..I/O接口电路的作用主要体现在以下几个方面:1实现单片机与外设之间的速度匹配;2实现输出数据锁存;3实现输入数据三态缓冲;4实现数据格式转换..3. 在计算机系统中;CPU与输入输出接口之间传输数据的控制方式有哪几种各有什么特点在计算机系统中;CPU与I/O接口之间传输数据有3种控制方式:无条件方式;条件方式;中断方式;直接存储器存取方式..在无条件方式下;只要CPU执行输入/输出指令;I/O接口就已经为数据交换做好了准备;也就是在输入数据时;外设传输的数据已经传送至输入接口;数据已经在输入接口端准备好;输出数据时;外设已经把上一次输出的数据取走;输出接口已经准备好接收新的数据..条件控制方式也称为查询方式..CPU进行数据传输时;先读接口的状态信息;根据状态信息判断接口是否准备好;如果没有准备就绪;CPU将继续查询接口状态;直到其准备好后才进行数据传输..在中断控制方式下;当接口准备好数据传输时向CPU提出中断请求;如果满足中断响应条件;CPU则响应;这时CPU才暂时停止执行正在执行的程序;转去执行中断处理程序进行数据传输..传输完数据后;返回原来的程序继续执行..直接存储器存取方式即DMA方式;它由硬件完成数据交换;不需要CPU的介入;由DMA 控制器控制;使数据在存储器与外设之间直接传送..4. 采用74LS273和74LS244为8051单片机扩展8路输入和8路输出接口;设外设8个按钮开关和8个LED;每个按钮控制1个LED;设计接口电路并编制检测控制程序..80C51图9.1题3接口电路原理图接口电路原理图如图9.1 源程序:MOV D PTR;#BFFFH ;设置输入/输出口地址COMT:MOVX A;@DPTR ;读取开关状态 NOP ;延时;总线稳定 MOVX @DPTR;A ;输出;驱动LED 显示 NOP;延时;总线稳定AJMP CONT5. 74LS377是8D 触发器;其功能表见表9.17;其中Di 为触发器的数据输入端;Qi 为触发器的数据输出端;G 是使能控制端;CLK 是时钟输入端;Q0为建立稳态输入条件之前;锁存器输出Q 的状态..采用它为8051单片机扩展1个8位的并行输出口..图9.2 题5接口电路原理图用74LS377扩展的输出口电路如图9-2所示..用P2.7与74LS377的使能控制端G 相连;当P2.7为0时;74LS377被选中;如果默认其他未用的地址线为1;则扩展的输出口地址为7FFFH..由于MCS-51单片机的WR 接到74LS377的时钟输入端CLK;当CPU 执行写外部输出口指令MOVX 时;把数据输出到数据总线上;在WR 信号由低变高时;写出的数据被打入74LS377并锁存..程序如下: MOV DPTR; #7FFFH ;输出口地址 MOV A; R6 ;取数据MOVX @DPTR; A ;输出;6. 74LS245是一种具有双向驱动的8位三态输出缓冲器;它的功能表见表9.18;其中G 为使能端;DIR 为方向控制端;A1~A8为A 端的数据输入/输出;B1~B8为B 端的数据输入/输出..当G 为低电平时;DIR 为高电平把A 端数据传送至B 端;DIR 为低电平;把B 端数据传送至A 端..在其他情况下不传送数据;并输出呈高阻态..采用它为8051单片机扩展1个8位的输入口..80C5180C511 2 图9-3 题6采用74LS245扩展输入口的2种电路图9-3为采用74LS245扩展输人接口电路..电路1中;DIR 上拉为高电平;74LS245数据传送方向强制为B 端到A 端;当P2.0为0时;且RD 为低电平时;使能端G 为低电平;74LS245三态门打开;单片机CPU 读取外设输入的数据..其他情况下;74LS245的三态门呈高阻状态..电路2中;只有单片机读取外设数据时;P2.0=0使74LS245的使能端G 有效;如果RD 为低电平;把74LS245数据传送方向置为A 端到B 端;其A→B 方向的三态门打开;单片机CPU 读取外设输入的数据..P2.0=1时;使能端G 无效;A 端和B 端处于隔离状态.. 图9-3的2个电路都采用P2.0为片选;其输入口地址为0FEFFH 默认未用地址线为1.. 7. 采用8155芯片为8051单片机系统扩展接口;外设为开关组8个开关组成和8个LED;每个开关控制1个LED..现需要读取开关组的状态;并把其状态存储到8155芯片RAM 中;若开关组的开关全部断开;则不记录..设计接口电路并编制检测程序..815MCS-图9.4 题7接口电路接口电路如图9.4所示; 8155的PB 口用作读取开关组状态;PA 口用作控制LED 组;分配地址如下:命令/状态寄存器:0100H ;PA 口:0101H ;PB 口:0102H ; PA 和PB 口为基本输入输出方式..K0控制LED0;K1控制LED1;以此类推..设存储开关状态的单元为STA TE..程序如下:CMMD EQU 0100H PORTA EQU 0101H PORTB EQU 0102H PORTC EQU 0103HSTATE EQU 20HMOV A;#02H ;初始化;工作方式控制字 MOV DPTR;# 0100H ;控制寄存器地址MOVX @DPTR; A;设置工作方式;初始化完成MOV A;#0FFH MOV DPTR;#0101H MOVX @DPTR;A ;上电后;熄灭LEDNOPMOV STATE;#0FFH ;没有开关闭合 DETECT: MOV DPTR;#0102H;PB 口地址MOVX A;@DPTR;从PB 口读开关状态MOVX @DPTR;A;从PA 口输出控制LED 指示灯NOPCJNE A;#0FFH;VALID SJMP DETECTVALID: MOV STATE;A;;记录开关状态AJMP DETECT8. 采用8255芯片为8051单片机系统扩展接口;外设为开关组8个开关组成和8个LED;每个开关对应1个LED..现需要每隔50ms 读取一次开关组的状态;并把其状态存储到内部RAM 中..设计接口电路并编制检测程序..假设系统晶振频率为12MHz..图9.5 单片机与8255接口电路图9.5为接口电路; PA 、PB 、PC 和控制寄存器地址分别为:0000H 、0001H 、0002H 和0003H..根据开关K0~K7状态控制LED0~LED7的显示状态;K0控制LED0;依此类推..设置8255的工作方式;PA 口外接开关;为方式0的输入;PB 口外接LED;为方式0的输出;则工作方式控制字的标志位D7为1;D6~D3A 组:0000; D2~D0B 组:010;组合后的控制字为:10000010;即82H..设存储开关状态的单元为STATE;用定时器/计数器T0定时50ms;工作方式为方式1;初始值为:1553650216=-M T ms;即3CB0HPORTA EQU 0100H PORTB EQU 0101H PORTC EQU 0102H CMMD EQU 0103H STATE EQU 20H //mian programACALL Ini8255; ACLL IniTimer0 WAIT:JBC TF0;DETECT SJMP WAIT DETECT: MOV TH0;#3CHMOV TL0;#0B0HMOVX A;@DPTR ;从PB口读开关状态MOV DPTR; #PortA ;PA口地址MOVX @DPTR;A ;从PA口输出控制LED指示灯NOPMOV STATE;AAJMP WAITIni8255: MOV A;#82H ;初始化;工作方式控制字MOV DPTR;#CMMD ;控制寄存器地址MOVX @DPTR; A ;设置工作方式;初始化完成MOV A;#0FFHMOV DPTR;#PORTAMOVX @DPTR;A ;上电后;熄灭LEDNOPRETIniTimer0: MOV TMOD;#01HMOV TH0;#3CHMOV TL0;#0B0HSETB TR0RET9. 简述矩阵键盘的行列扫描和线反转法原理..1行列扫描法:在按键识别过程时;依次使行线输出电平;然后检查列线的输入电平;如果所有列线的输入全为高电平;则该行无按键按下;如果不全为高电平;则被按下的按键在本行;且在输入电平变为低电平的列的交叉点上..2线反转法:第一步;首先使行线为输入;列线为输出..列线全部输出低电平;那么;行线中变为低电平的行线为按键所在的行..第二步;使行线变为输出;列线变为输入..行线输出全部为低电平;那么;列线中变为低电平的列线为按键所在的列..10. 一个简单计数器的电路原理图如图所示..要求每按一次S键;计数器计数一次;计数值送P1口显示;采用单只数码管显示;计16次后从0开始..图9.6 题10原理图1 BIT P3.3VALUE EQU 20HORG 0000HLJMP MAINORG 1000HM AIN: SETB P3.3MOV VALUE;#00ACALL DISP ;初始化显示0W AIT0: JB S1;WAIT0;ACALL DEL10MSW AIT1: JB S1;WAIT1 ;判断按下W AIT2: JNB S1;WAIT2;ACALL DEL10MSW AIT3: JNB S1;WAIT3 ;判断释放INC VALUE ;加1ANL VALUE;#00001111B ;仅显示低位ACALL DISP ;显示SJMP WAIT0//显示子程序DISP: MOV A;VALUE ;取显示信息MOV DPTR; #SEG_TAB ;字型码表的首地址MOVC A;@A+DPTR ;通过显示信息查其字型码MOV P1;A ;输出显示NOPRET//延时子程序DEL10MS:MOV R5;#10DELX: MOV R6;#200DEL0: NOPNOPNOPDJNZ R6;DEL0DJNZ R5;DELXRETS EG_TAB: DB 0C0H; 0F9H; 0A4H; 0B0H; 99H; 92H; 82H; 0F8H; 80H; 90HDB 88H; 83H; 0C6H; 0A1H; 86H; 8EH ;以下为显示字型码表;0~9;A~FEND11. 简述LED数码管的静态显示和动态显示原理..1静态显示:在多位静态显示时;各个LED数码管相互独立;公共端COM接地共阴极或接正电源共阳极..每个数码管的8个显示字段控制端分别与一个8位并行输出口相连;只要输出口输出字型码;LED数码管就立即显示出相应的字符;并保持到输出口输出新的字型码..2动态显示:多位LED数码管动态显示方式是各个LED数码管一位一位地轮流显示..在硬件电路上;各个数码管的显示字段控制端并联在一起;由一个8位并行输出口控制;各个的LED数码管的公共端作为显示位的位选线;由另外的输出口控制..动态显示时;各个数码管分时轮流地被选通;即在某一时刻只选通一个数码管;并送出相应的字型码;并让该数码管稳定地显示一段短暂的时间;在下一时刻选通另一位数码管;并送出相应的字型码显示;并保持显示一段时间;如此循环;即可以在各个数码管上显示需要显示的字符..图9.7 LED数码管静态显示原理图9.8 LED数码管动态显示原理12. 用P1和P3口作为输出口;设计一个5位的LED数码管显示系统;并在显示器上显示“HELLO”..+5V图 9.9 题12接口电路图接口电路图如图9.9所示;用2片74LS245提高接口的驱动能力;LED数码管为共阴型..程序如下:SEG_OUT EQU P3BIT_OUT EQU P1//====================================ORG 0000HLJMP STARTORG 0030HSTART: MOV SP;#60HMOV 20H;#40H //显示" HELLO" 对应字型表序号编码:40 12 23MOV 21H;#12HMOV 22H;#23HMOV R1;#30HMOV R0;#20HCALL SPLITINC R0INC R1CALL SPLITINC R0INC R1CALL SPLITRED: ACALL DSPLY1SJMP RED//===================================SPLIT: MOV A;@R0ANL A;#0F0HSWAP AMOV @R1;AINC R1MOV A;@R0ANL A;#0FHMOV @R1;ARET//===========================================//6位显示DSPLY1: MOV R0; #30H ;显示缓冲区地址MOV R2; #11111110B ;显示起始位置REDO: ACALL DISP ;显示1位MOV A; R2 ;计算下一个显示位置 RL AMOV R2; AINC R0 ;修改显示缓冲区地址指针 XRL A; #10111111B ;6位显示完否JNZ REDO ;未完;继续显示RET ;返回//==========================================;显示一位子程序DISP: MOV D PTR; #LED_SEG ;字型码表首地址MOV A; @R0 ;取显示数据MOVC A; @A+DPTR ;求显示数据的字型码MOV S EG_OUT; A ;输出字型码MOV A; R2 ;取显示位置MOV BIT_OUT; A ;显示ACALL DL1MSMOV A;#0FFH ;稳定显示1msMOV BIT_OUT;ARET;字型码表LED_SEG: DB 76H ; H 序号:00DB 79H ; E 序号:01DB 38H ; L 序号:02DB 3FH ; 0 序号:03DB 00H ; BLANK 序号:04DL1MS: MOV R5;#200; 12M时延时1msDEL: NOPNOPNOPDJNZ R5;DELRETEND13. 一个显示电路如图9.60所示..请采用串行口方式0实现LED数码管的动态显示;在显示器上自左向右动态显示“654321”;每个字符保持时间为0.1s..图9.10 习题13原题电路图ORG 0000HLJMP STARTORG 0030HSTART: MOV SP;#60HMOV 20H;#12H //显示数据MOV 21H;#34HMOV 22H;#56HMOV R1;#30HMOV R0;#20HCALL SPLIT //分离BCD码INC R0INC R1CALL SPLITINC R0INC R1CALL SPLITRED: ACALL DISPLYSJMP RED//===================================SPLIT: MOV A;@R0ANL A;#0F0HSWAP AMOV @R1;AINC R1MOV A;@R0ANL A;#0FHMOV @R1;ARET//================================DISPLY: MOV R0; #30H ;显示缓冲区首地址MOV R2; #05H ;显示位置;最右端1位NEXT: ACALL DISP11 ;显示INC R0 ;修改显示缓冲区地址指针DEC R2 ;计算下一位显示位置CJNE R2; #0FFH; NEXT ;6位显示完否RET ;显示完返回;显示1位子程序DISP11: MOV A; @R0 ;取显示数据MOV DPTR; #SEG_TABMOVC A; @A+DPTR ;取显示数据的字型码MOV SBUF; A ;输出字型码GOON: JBC TI; DPLYAJMP GOONDPLY: MOV A; R2MOV P1; A ;输出显示位置ACALL DL100MS ;延时MOV P1;#07HRET;字型码表SEG_TAB:DB 0C0H; 0F9H; 0A4H; 0B0H; 99H; 92H; 82H; 0F8H; 80H; 90H DB 88H; 83H; 0C6H; 0A1H; 86H; 8EH//====================================DL1MS: MOV R5;#200; 12M时延时1msDEL: NOPNOPNOPDJNZ R5;DELRETDL100MS:MOV R6;#100DELX0: ACALL DL1MSDJNZ R6;DELX0RETEND14. 采用8155或8255扩展I/O口;设计一个显示电路显示“654321”..图9.11 采用8255扩展的LED数码管动态显示接口电路图9.11为采用8255扩展的LED数码管动态显示接口电路..图中PA口用于输出字型码;PB口用于输出显示位置;LED数码管为共阴型;显示位置采用译码器译码的方式实现..在电路中采用同相缓冲器74LS07提高PA口的驱动能力;同相驱动器SN75451用于驱动显示器的公共端..电路中8255的PA和PB口处于基本输入/输出方式的输出模式;PA口地址为0000H;PB口为0001H;命令寄存器地址为0003H..定义SEG_OUT为PA口地址;BIT_OUT为PB口地址..程序如下://定义区SEG_OUT EQU 0000H //PortA 输出字型码BIT_OUT EQU 0001H //PortB输出位控码PortC EQU 0002H//CMMD EQU 0003H//命令寄存器地址//========================ORG 0000HLJMP STARTORG 0030HSTART: MOV SP;#60HMOV DPTR;#CMMD //8255初始化MOV A;#10000000B //方式0;A/B/C口为输出MOVX @DPTR;ANOPNOPMOV 20H;#12H //显示数据MOV 21H;#24HMOV 22H;#56HMOV R1;#30HMOV R0;#20HCALL SPLITINC R0INC R1CALL SPLITINC R0INC R1CALL SPLITRED: ACALL DSPLY2SJMP RED//===================================SPLIT: MOV A;@R0ANL A;#0F0HSWAP AMOV @R1;AINC R1MOV A;@R0ANL A;#0FHMOV @R1;ARET//===========================================//6位显示DSPLY2: MOV R0; #30H ;显示缓冲区首地址MOV R2; #00000000B ;显示起始位置REDO: ACALL DISP ;显示1位INC R2 ;计算下一次的显示位置INC R0 ;修改显示缓冲区指针CJNE R2; #06H; REDO ;6位显示完否RET ;显示结束返回//==========================================;显示一位子程序DISP: MOV D PTR; #LED_SEG ;字型码表首地址MOV A; @R0 ;取显示数据MOVC A; @A+DPTR ;求显示数据的字型码MOV D PTR; #SEG_OUT ;字型码输出口地址MOVX @DPTR; A ;输出字型码MOV A; R2 ;取显示位置MOV D PTR; #BIT_OUT ;显示位置输出口地址MOVX @DPTR; A ;显示ACALL DL1MSMOV A;#0FFH ;稳定显示1msMOVX @DPTR; ARET;字型码表LED_SEG: DB 3FH;06H;5BH;4FH;66H;6DH;7DH;07H ;'0;1;2;3;4;5;6;7' DB 7FH;6FH;77H;7CH;39H;5EH;79H;71H ;'8;9;A;B;C;D;E;F' DB 3EH; 50H; 40H; 08H; 00H ;'U; r; -; _; BLANK//======================================DL1MS: MOV R5;#200; 12M时延时1msDEL: NOPNOPNOPDJNZ R5;DELRETEND15. 一个单片机的键盘显示系统采用3×4矩阵式键盘、8位LED数码管显示器..12个按键定义为数字键0~9、功能键ENTER和STOP..系统工作时;键入一组数值;按下ENTER键后;新数值替换原来的显示值在显示器上循环显示;按下STOP键;循环显示终止;显示数据被清除..设计硬件电路和编写相应的程序..+5V图9.12 题15原理图//definationSEG_OUT EQU P2 //字型输出BIT_OUT EQU P3 //位控输出DISPBUF EQU 40H //显示缓冲区40H~47HSETPTR EQU 38H //设定数据时的存指针的单元HOLDTIME EQU 39H //ENTER时;存储每位稳定时间的单元DLETIME EQU 255 //enter稳定时间BIT_CODE EQU 3AH //ENTER时存字型的单元BIT_LOC EQU 3BH //ENTER时存位控的单元ETR_FLAG BIT 28H.0 //ENTER按下标志STP_FLAG BIT 28H.1 //STOP按下标志//============================ORG 0000HLJMP STARTORG 0030HSTART: MOV SP;#60H//======================ENTER按下的初始化=================CLR ETR_FLAGCLR STP_FLAGMOV HOLDTIME;#DLETIME //ENTER按下时;每位的保持时间MOV BIT_CODE;#DISPBUFMOV BIT_LOC;#01111111B//===========清显示缓冲区=========MOV R0;#DISPBUFMOV R3;#8ACALL CLRRAM;MOV SETPTR;#DISPBUF //设定指针初始化;未键入数据时;显示“-”MOV DISPBUF;#12HSCANK: MOV P1;#0FH //键盘扫描MOV A;P1ANL A;#00000111BXRL A;#00000111BJZ NON0ACALL DL20MS //消抖MOV P1;#0FHMOV A;P1ANL A;#00000111BXRL A;#00000111BJZ NON0 //键按下//此处判断哪个键按下MOV R3;#11101111BCONTI: MOV P1;R3MOV A;P1 // 逐行扫描ANL A;#00000111BXRL A;#00000111BJNZ FOUNDMOV A;R3RL AMOV R3;AXRL A;#11111110BJNZ CONTINON0: JMP NON //没有键按下FOUND: MOV P1;#00000111BMOV A;P1ANL A;#00001111BMOV R4;A //暂存列编码MOV A;R3ANL A;#11110000B //取行编码ORL A;R4MOV R4;A // 存特征码;等待键释放NO_RLSE:MOV P1;#0FH //键释放MOV A;P1ANL A;#00000111BXRL A;#00000111BJNZ NO_RLSEACALL DL20MS //消抖MOV P1;#0FHMOV A;P1ANL A;#00000111BXRL A;#00000111BJNZ NO_RLSEMOV A;R4CJNE A;#0E6H;NUM2MOV R4;#01HJMP GODISP //1NUM2: CJNE A;#0E5H;NUM3MOV R4;#02H //2JMP GODISPNUM3: CJNE A;#0E3H;NUM4MOV R4;#03H //3JMP GODISPNUM4: CJNE A;#0D6H;NUM5MOV R4;#04H //4JMP GODISPNUM5: CJNE A;#0D5H;NUM6MOV R4;#05H //5JMP GODISPNUM6: CJNE A;#0D3H;NUM7MOV R4;#06HJMP GODISP //6NUM7: CJNE A;#0B6H;NUM8MOV R4;#07HJMP GODISP //7NUM8: CJNE A;#0B5H;NUM9MOV R4;#08HJMP GODISP //8NUM9: CJNE A;#0B3H;ENTERMOV R4;#09HJMP GODISP //9ENTER: CJNE A;#076H;NUM0MOV R4;#0AH //ENTERJMP ETR_DISP //ENTER按下;循环显示NUM0: CJNE A;#075H;STOPMOV R4;#00H //0JMP GODISPSTOP: CJNE A;#073H;NUMXMOV R4;#0BHJMP STP_DISP // STOP按下NUMX: JMP NON //没有按键按下GODISP: CLR ETR_FLAGCLR STP_FLAGMOV R0;SETPTRMOV A;R4MOV @R0;AINC R0MOV SETPTR;R0CJNE R0;#DISPBUF+8;GOONMOV SETPTR;#DISPBUFGOON: JMP REDNON: JB ETR_FLAG;ETR_DISP //无键按下;之前ENTER按下JB STP_FLAG;STP_DISP //无键按下;之前STOP按下//无键按下;之前有数字键按下RED: MOV R0;#DISPBUFACALL DSPLY1 //显示键入的数据JMP SCANKETR_DISP:MOV SETPTR;#DISPBUF //enter件按下;设定数据循环显示SETB ETR_FLAGMOV R0;BIT_CODEMOV R2;BIT_LOC ;显示起始位置ACALL DISP ;显示1位DJNZ HOLDTIME; SKIP0MOV HOLDTIME;#DLETIMEMOV A; BIT_LOC ;计算下一个显示位置RR AMOV BIT_LOC;AINC BIT_CODE ;修改显示缓冲区地址指针XRL A;#01111111B ;8位显示完否JNZ SKIP0MOV BIT_CODE;#DISPBUFMOV BIT_LOC;#01111111BMOV HOLDTIME;#DLETIME ;未完;继续显示SKIP0: J MP SCANK ;返回//STOP处理STP_DISP: MOV SETPTR;#DISPBUFSETB STP_FLAGMOV R0;#DISPBUFMOV R3;#8ACALL CLRRAM; //清显示缓冲区内容MOV DISPBUF;#12HMOV R0;#DISPBUF //最左边显示“-”ACALL DSPLY1JMP SCANK//===========================================//8位显示DSPLY1: MOV R2; #01111111B ;显示起始位置REDO: ACALL DISP ;显示1位MOV A; R2 ;计算下一个显示位置RR AMOV R2; AINC R0 ;修改显示缓冲区地址指针XRL A; #01111111B ;8位显示完否JNZ REDO ;未完;继续显示RET ;返回//==========================================;显示一位子程序DISP: MOV D PTR; #LED_SEG ;字型码表首地址MOV A; @R0 ;取显示数据MOVC A; @A+DPTR ;求显示数据的字型码MOV S EG_OUT; A ;输出字型码MOV A; R2 ;取显示位置MOV BIT_OUT; A ;显示ACALL DL1MSMOV A;#0FFH ;稳定显示1msMOV BIT_OUT;ARET;字型码表LED_SEG: DB 3FH;06H;5BH;4FH;66H;6DH;7DH;07H ;'0;1;2;3;4;5;6;7' DB 7FH;6FH;77H;7CH;39H;5EH;79H;71H ;'8;9;A;B;C;D;E;F' DB 3EH; 50H; 40H; 08H; 00H ;'U; r; -; -; BLANKDL1MS: MOV R5;#200; 12M时延时1msDEL: NOPNOPNOPDJNZ R5;DELRETDL20MS: MOV R7;#20; 12M时延时20msDEL00: ACALL DL1MSDJNZ R7;DEL00RETCLRRAM: MOV @R0;#14H //不显示INC R0DJNZ R3;CLRRAMRETEND16. 简述A/D和的作用..A/D把模拟量变成数字量..D/A把数字量转换成模拟量..17. 在检测系统中;通常采用均值滤波的方法来消除检测数据的随机干扰;即连续采样多次;取平均值作为测量值..采用ADC0809设计一个检测系统;对IN5通道接入的模拟采样8次;把它们的均值存放在30H单元..+R八路模拟量输入图9.12 题17的MCS-51单片机与ADC0809的接口电路18. 采用ADC0809设计一个8路巡回检测系统;每隔50ms对8个回路检测1次;并把采样值存储在40H开始的区域..系统晶振频率为12MHz..接口电路与题17相同..程序流程图见图9.13..程序如下:ORG 0000HLJMP STARTORG 000BHLJMP Timer0InterruptSTART:MOV SP;#60HLCALL InitTimer0MOV R0;#40H ;置数据区首地址指针MOV R6;#00H ;指向模拟量输入通道0;通道地址的低八位LOOP: NOPLJMP LOOPInitTimer0:;定时器0;定时50msMOV TMOD; #01H MOV TH0; #3CH MOV TL0; #0B0H SETB EA SETB ET0 SETB TR0 RETTimer0Interrupt: PUSH DPH PUSH DPLPUSH ACC MOV TH0; #3CH MOV TL0; #0B0H MOV DPH; #0BFH ;P2.6=0;通道地址的高八位 MOV DPL;R6 ;模拟通道0 MOVX @DPTR;A ;启动A/D 转换.. WAITAD: JB P3.3; WAITADMOVX A;@DPTR ;读A/D 转换结果 MOV @R0;A ;存转换结果 INC R0 ;修改数据区指针 INC R6;模拟通道地址加1 CJNE R6;#08;EXIT ;8个通道全采样完了吗MOV R6;#00H ;8路巡检结束;重新采样模拟量输入通道IN0 MOV R0;#40H;重设数据区首地址指针EXIT:POP ACCPOP DPL POP DPH RETIEND19. 采用2片ADC0809为8051单片机扩展16路模拟量输入通道.. 图9.13 地址分析:IC2:P2.7=1;P2.6=0;8个通道地址为: IN0:8000H ; IN1:8001H IN2:8002H ; IN3:8003H IN4:8004H ; IN5:8005H IN6:8006H ;IN7:8007HIC3:P2.7=0;P2.6=1;8个通道地址为:图9.13 题18 程序流程图IN0:4000H;IN1:4001HIN2:4002H;IN3:4003HIN4:4004H;IN5:4005HIN6:4006H;IN7:4007H+R八路模拟量输入八路模拟量输入图9.14 2片ADC0809为8051单片机接口电路图20. 用8051单片机和DAC0832设计一个应用系统;输出连续的三角波..接口电路和程序框图见图9.15..ORG 0020HMOV DPTR;#7FFFH ;指向0832LOOP: MOV R2;#0FFH ;循环次数MOV A;#00H ;赋初值LOOP1:MOVX @DPTR;A ;D/A转换输出INC ADJNZ R2;LOOP1MOV R2;#0FEHLOOP2:DEC AMOVX @DPTR;A DJNZ R2;LOOP2 ALMP LOOP END+5VDAC0832A VoutMCS-51P2.7WRDI7Vcc ILE Vref Rfb Iout1Iout2AGNDDGNDP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0DI6DI5DI4DI3DI2DI1DI0+-CSXFERWR2WR1a 接口电路b 程序流程框图图9.15 题20接口电路和程序流程框图21. 用8051单片机和DAC0832设计一个应用系统;连续输出周期为5.12秒的三角波提示:每10ms 转换1次;三角波的周期等于定时时间×转换次数..接口电路如图9.15..程序框图见图9.16图9.16 题21程序流程图ORG 0000H LJMP START ORG 000BHLJMP Timer0InterruptSTART: MOV SP; #60HLCALL InitTimer0 ;定时初始化MOV R6;#0;三角波DA 转换值;起始值为0MOV R7;#0;三角波上升下降标志;0 = 上升;1 = 下降 LOOP:;主处理程序NOPNOP ALMP LOOPInitTimer0:MOV TMOD;#01H MOV TH0; #0D8H MOV TL0; #0F0H SETB EA SETB ET0 SETB TR0 RETTimer0Interrupt:MOV TH0; #0D8H MOV TL0; #0F0H CJNE R7; #0; LOOP1 INC R6CJNE R6; #0FFH; LOOP01 MOV R7; #1LOOP01: MOV DPTR; #7FFFH;指向0832MOV A; R6 MOVX @DPTR;A;D/A 转换输出SJMP RET0LOOP1: DEC R6CJNE R6; #0; LOOP11 MOV R7; #0LOOP11: MOV DPTR; #7FFFH;指向0832MOV A; R6 MOVX @DPTR;A;D/A 转换输出SJMP RET0RET0: RETIEND22. 用8051单片机和DAC0832设计一个应用系统;输出占空比为50%的双极性方波;幅值在–5~+5V 之间..接口电路见图9.17;程序流程框图见图9.18..根据图9.17接口电路的连接关系;可以推导出下列公式:Vref)(2Vo1Vref)2R 2R Vo1R 2R (Vout +-=+-=程序流程框图见图9.17..程序如下: ORG 1000HSTART: MOV DPTR;#7FFFHLOOP: MOV A;#00H MOVX @DPTR;A CALL DELAY10MS MOV A;#0FFH MOV @DPTR;A CALL DELAY10MSJMP LOOP+5VDAC0832A Vo18051P2.7WRDI7Vcc ILE Vref Rfb Iout1Iout2AGND DGNDP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0DI6DI5DI4DI3DI2DI1DI0+-CS XFERWR2WR1A Vout+-2RR 2R图9.17 接口电路图图9.18 程序流程图。

单片机原理及接口技术课后作业及答案

单片机原理及接口技术课后作业及答案

1.89C51单片机内包括哪些重要逻辑功能部件?答:80C51系列单片机在片内集成了如下重要逻辑功能部件:(l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB(5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定期器/计数器:16位,2个(8)片内时钟电路:1个2.89C51旳EA端有何用途?答:/EA端接高电平时,CPU只访问片内flash Rom 并执行内部程序,存储器。

/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中旳指令。

/EA端保持高电平时,CPU执行内部存储器中旳指令。

3. 89C51旳存储器分哪几种空间?怎样区别不一样空间旳寻址?答:ROM(片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB)片外RAM(MOVX)(16bits地址)(64KB)片内RAM(MOV)(8bits地址)(256B)4. 简述89C51片内RAM旳空间分派。

答:片内RAM有256B低128B是真正旳RAM区高128B是SFR(特殊功能寄存器)区5. 简述布尔处理存储器旳空间分派,片内RAM中包括哪些可位寻址单元。

答:片内RAM区从00H~FFH(256B)其中20H~2FH(字节地址)是位寻址区对应旳位地址是00H~7FH6. 怎样简捷地判断89C51正在工作?答:用示波器观测8051旳XTAL2端与否有脉冲信号输出(判断震荡电路工作与否正常?)ALE(地址锁存容许)(Address Latch Enable)输出是fosc旳6分频用示波器观测ALE与否有脉冲输出(判断8051芯片旳好坏?)观测PSEN(判断8051可以到EPROM 或ROM 中读取指令码?)由于/PSEN接外部EPROM(ROM)旳/OE端子 OE=Output Enable(输出容许)7. 89C51怎样确定和变化目前工作寄存器组? 答:PSW(程序状态字)(Program Status Word)中旳RS1和RS0可以给出4中组合用来从4组工作寄存器组中进行选择PSW属于SFR(Special Function Register)(特殊功能寄存器)8. 89C51 P0口用作通用I/O口输入时,若通过TTL“OC”门输入数据,应注意什么?为何?答:9. 读端口锁存器和“读引脚”有何不一样?各使用哪种指令?答:读锁存器(ANL P0,A)就是相称于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚旳,意思就是把端口p1输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时试验时常常用这些指令于外部通信,判断外部键盘等;字节互换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。

大工17春《单片机原理及应用》大作业参考答案.

大工17春《单片机原理及应用》大作业参考答案.

网络教育学院《单片机原理及应用》大作业题目:单片机电子时钟设计学习中心:陕西延安奥鹏学习中心[3]VIP层次:专升本专业:电气工程及自动化年级: 16 年春季学号: ************学生姓名:**单片机电子时钟设计一、引言单片机技术在计算机中作为独立的分支,有着性价比高、集成度高、体积少、可靠性高、控制功能强大、低功耗、低电压、便于生产、便于携带等特点,越来越广泛的被应用于实际生活中。

单片机全称,单片机微型计算机,从应用领域来看,单片机主要用来控制系统运行,所以又称微控制器或嵌入式控制器,单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机。

二、时钟的基本原理分析利用单片机定时器完成计时功能,定时器0计时中断程序每隔0.01s中断一次并当作一个计数,设定定时1秒的中断计数初值为100,每中断一次中断计数初值减1,当减到0时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。

为了将时间在LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要译码器,数据锁存器等较多硬件,可采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。

由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。

三、时钟设计分析针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。

这样,既能做到经济合理又能实现预期的功能。

在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。

程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案第一题:简述单片机的工作原理单片机是一种集成电路,内部拥有中央处理器、内存、输入/输出端口等多种功能模块。

单片机的工作原理主要分为三个步骤:取指、执行和存储。

在取指阶段,单片机通过地址总线从存储器中获取指令,并将其存储在指令寄存器中。

指令寄存器中的指令会被解码器解码,确定具体的操作。

在执行阶段,CPU根据指令寄存器中的指令执行相应的操作。

这包括运算操作、逻辑操作、移位操作等。

执行的结果会被存储在通用寄存器中。

在存储阶段,CPU将操作结果存储在内存或者其他寄存器中。

同时,如果需要将结果输出到外设,CPU会通过输出端口将数据传输到相应的外设。

通过这些步骤的循环执行,单片机可以完成各种任务,实现各种功能。

第二题:简述单片机的输入/输出接口技术单片机的输入/输出接口技术主要通过引脚、端口和中断实现。

单片机的引脚连接外部电路,用于与外部设备交互。

引脚可以通过软件控制为输入或输出模式,并可以通过特定的寄存器进行读写操作。

单片机的端口是对引脚的集合,通过对端口模式和端口数据的设置,可以实现对多个引脚的控制。

例如,可以将一个端口的多个引脚设置为输出模式,并通过给端口数据赋值来同时控制这些引脚的电平状态。

中断是单片机实现输入/输出的一种重要方式。

当外部事件(例如按键按下、定时器溢出等)发生时,单片机将会中断当前的工作,执行中断服务程序来处理该事件。

中断可以提高系统的响应速度和灵活性。

通过以上的输入/输出接口技术,单片机可以方便地与外部设备进行通信和数据交换,实现各种功能和应用。

第三题:简述单片机的串行通信接口单片机的串行通信接口是一种用于与其他设备进行数据传输的接口。

常见的串行通信接口有SPI和I2C。

SPI(Serial Peripheral Interface)是一种同步的串行接口,使用四根线(时钟线、数据线、选择线和数据传输方向线)进行数据传输。

SPI可以实现高速的全双工通信,并且可以与多个外部设备进行连接,通过选择线来选择通信的目标设备。

单片机原理与接口技术作业参考答案

单片机原理与接口技术作业参考答案

《单片机原理与接口技术》作业参考答案作业一1.(35)10=(100011)2 或 35D=100011B2. (11111010)2=1×27+1×26+1×25+1×24+1×23+0×22+1×22+0×20=128+64+32+16+8+2=(250)10(11111010)2=(0FA)16或11111010B=0FAH10000110B=1×27+1×22+1×21=128+4+2=134D10000110B=86H3. [X]原=10000010, [X]反=11111101,[X]补=11111110,4. [X]补=11001011B,X=-0110101B5.当时钟脉冲未到来时,无论D端是高或低电平,Q端的值保持不变;在时钟脉冲作用期间,Q端的值变为和D端的输入值相同。

作业二1.片内数据存储器,地址范围00---0FFH;片内程序存储器,地址范围0---0FFFH;外部程序存储器,地址范围0---0FFFFH;外部数据存储器,地址范围0---0FFFFH。

2.P0口有两种工作方式:地址/数据分时复用总线方式和通用I/O接口方式。

P1口只有通用I/O接口方式。

P2口有两种工作方式:高8位地址总线方式和通用I/O接口方式。

P3口有两种工作方式:通用I/O 接口方式和位控方式。

3.开机复位后,CPU使用的是第0组工作寄存器;选择哪一组工作寄存器由程序状态字(PSW)寄存器中的RS1、RS0两位的值来确定。

作业三1.①立即寻址②直接寻址③寄存器间接寻址④寄存器寻址2.(A)=0CBH 3.(PC)=1234H,(SP)=23H作业四1.2.(A)=0,(R0)=43H,(43H)=03.ORG 2000HSTART:MOV DPTR,#TABMOV A,E0HMOVC A,@A+DPTRJMP @A+DPTRTAB:DB PRGA-TAB,PRGB-TAB,PRGC-TAB DB PRGD-PAB PRGE-TAB,PRGF-TAB PRGA:……..PRGB…..PRGC….PRGD….PRGE….PRGF…..4. ORG 2000HSTART:MOV R0,#30HMOV R7,#20HMOV R6,#00HLOOP:MOV A,@R0CJNE A,#10,AAINC R6SJMP ENAA:JC ENCJNE A,#20,BBSJMP ENBB:JC CCSJMP ENCC:INC R6EN:DJNZ R7,LOOPMOV 51H,R6END 2100HTWOCMP:MOV A,R5SUBB A,R6JC AAMOV A,R5XCH A,R6MOV R5,AAA:RET作业五1.有外部中断0(INT0),中断服务程序入口地址为0003H,定时器T0中断,中断服务程序入口地址为000BH,有外部中断1(INT1),中断服务程序入口地址为0013H,定时器T1中断,中断服务程序入口地址为001BH,串行口中断,中断服务程序入口地址为0023H。

单片机原理与接口技术答案全解

单片机原理与接口技术答案全解

单片微型计算机原理与接口技术课后答案第一、二章略第三章【3—1】什么是指令及指令系统?【答】控制单片机进行某种操作的命令称为“指令”。

单片机就是根据指令来指挥和控制单片机各部分协调工作。

指令由二进制代码表示,指令通常包括操作码和操作数两部分:操作码规定操作的类型,操作数给出参加操作的数或存放数的地址。

所有指令的集合称为“指令系统”。

80C51单片机的指令系统专用于80C51系列单片机,是一个具有255种操作码(OOH~FFH,除A5H外)的集合。

【3—2】80C51单片机的指令系统具有哪些特点?【答】80C51单片机的指令系统容易理解和阅读。

只要熟记代表33种功能的42种助记即可。

有的功能如数据传送,可以有几种助记符,如MOV、MOVc、MOVX。

而指令功能助记符与操作数各种寻址方式的结合,共构造出111种指令,而同一种指令所对应的操作码可以多至8种(如指令中Rn对应寄存器R0~R7)。

80C51单片机的指令系统具有较强的控制操作类指令,容易实现“面向控制”的功能;具有位操作类指令,有较强的布尔变量处理能力。

【3—3】简述80C51指令的分类和格式。

【答】80C51的指令系统共有111条指令,按其功能可分为5大类:数据传送类指令(28条)、算术运算类指令(24条)、逻辑运算类指令(25条)、控制转移类指令(17条)和布尔操作(位)类指令(17条)。

指令的表示方法称之为“指令格式”,其内容包括指令的长度和指令内部信息的安排等。

在80C51系列的指令系统中,有单字节、双字节和三字节等不同长度的指令。

·单字节指令:指令只有一个字节,操作码和操作数同在一个字节中。

·双字节指令:包括两个字节。

其中一个字节为操作码,另一个字节是操作数。

·三字节指令:操作码占一个字节,操作数占两个字节。

其中操作数既可能是数据,也可能是地址。

【3—4】简述80C51的指令寻址方式,并举例说明。

【答】执行任何一条指令都需要使用操作数,寻址方式就是在指令中给出的寻找操作数或操作数所在地址的方法。

单片机原理与接口技术课后答案

单片机原理与接口技术课后答案

单片机原理与接口技术课后答案以下为单片机原理与接口技术课后答案:1. 什么是单片机?单片机是一种高度集成的计算机内核,具有处理器、内存、输入/输出接口等元件,可以用于控制、处理和操作外部设备。

2. 单片机的工作原理是什么?单片机的工作原理是通过执行存储在其内部存储器中的指令,来控制外围设备的操作。

它具有时钟、ALU、寄存器和一个指令集,通过时钟信号的控制,按照程序指令的顺序进行执行。

3. 单片机与外部设备的连接方式有哪些?单片机与外部设备的连接方式有并行接口、串行接口、通信总线接口等。

4. 并行接口是如何工作的?并行接口是使用多个传输线同时传输数据的接口。

单片机通过并行接口的数据总线,向外部设备发送数据或接收数据,同时通过控制线发送控制信号。

5. 串行接口是如何工作的?串行接口是使用单个传输线逐位传输数据的接口。

单片机通过串行接口的发送线发送数据,通过接收线接收数据,并且通过控制线发送控制信号。

6. 通信总线接口是如何工作的?通信总线接口通过将单片机与外部设备连接到同一总线上,实现它们之间的通信。

单片机可以通过总线向外部设备发送数据或接收数据。

7. 单片机的输入接口如何实现?单片机的输入接口可以通过输入寄存器、输入缓冲器和输入/输出控制电路等,将外部设备的信号输入到单片机中。

8. 单片机的输出接口如何实现?单片机的输出接口可以通过输出寄存器、输出缓冲器和输出/输入控制电路等,将单片机中的数据发送到外部设备。

9. 单片机的中断技术是什么?单片机的中断技术是在执行程序的过程中,根据一定的条件发生中断,暂停当前的程序执行,转而处理中断服务程序,然后再返回到原来的程序继续执行。

10. 单片机的定时器/计数器是什么?单片机的定时器/计数器是一种可编程的设备,可用于产生定时延迟、计数外设事件等。

它可以通过编程设置计数范围和工作方式,在给定的时钟信号下进行计数操作。

以上为单片机原理与接口技术课后答案。

单片机原理与接口技术习题答案

单片机原理与接口技术习题答案

单片机原理与接口技术习题答案单片机原理与接口技术习题集答案第1部分答案1-1简要介绍冯·诺依曼计算机的主要特点。

1、采用二进制代替十进制运算2、存储程序工作方法3、计算机硬件系统的构成1-2计算机硬件系统由哪些组件组成?计算机硬件系统由运算器、控制器、存储器、输入设备和输出设备五个部分。

1-3填空:(1)100d=01100100=64h(2)03ch=00111100b=60d1-4写出下列数字(用二进制数表示)的原码、反码和补码。

21-2159-59127-1271-121原码:00010101反码:00010101补码:00010101-21原码:10010101反码:11101010补码:11111 01159原码:00111011反码:00111011补码:00111011-59原码:10111011反码:11000100补码:11000101127原码:01111111反码:01111111原码:01111111-127原码:11111111反码:10000000补码:100000011原码:00000001反码:00000001补码:00000001-1原码:1000001反码:11111110补码:111111111-5用十进制数写出下列补码的真值:1fh69h89hfch97hcdhb3h10h1fh的真值:31d69h的真值:105d89h的真值:-119dfch的真值:-4d97h的真值:-105dcdh的真值:-51db3h的真值:-77d10h的真值:16d1-6已知的X和y,找到(X+y)补码。

(1)x=31d,y=55d(x+y)补=01010000b(2)x=46d,y=-81d(x+y)补=11010001b (3)x=-54d,y=93d(x+y)补=00100111b(4)x=-23d,y=-67d(x+y)补=10100110b(5)x=75d,y=89d(x+y)补=10100100b1-7写出以下数字的8421BCD代码。

单片机原理及接口技术-习题答案汇总.doc

单片机原理及接口技术-习题答案汇总.doc

单片机答案第 1 章思考题及习题 1 参考答案一、填空1.除了单片机这一名称之外,单片机还可称为或。

答:微控制器,嵌入式控制器 .2. 单片机与普通微型计算机的不同之处在于其将、、和三部分,通过内部连接在一起,集成于一块芯片上。

答:CPU、存储器、I/O口、总线3. AT89S51 单片机工作频率上限为MHz。

答:24MHz。

4.专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低和提高。

答:成本,可靠性。

二、单选1.单片机内部数据之所以用二进制形式表示,主要是A.为了编程方便B.受器件的物理性能限制C.为了通用性D.为了提高运算速度答: B2.在家用电器中使用单片机应属于微计算机的。

A.辅助设计应用B.测量、控制应用C.数值计算应用D.数据处理应用答: B3.下面的哪一项应用,不属于单片机的应用范围。

A.工业控制 B .家用电器的控制 C .数据库管理 D .汽车电子设备答: C三、判断对错1. STC 系列单片机是8051 内核的单片机。

对2.AT89S52 与 AT89S51相比,片内多出了 4KB的 Flash 程序存储器、 128B 的 RAM、 1个中断源、 1 个定时器(且具有捕捉功能)。

对3.单片机是一种 CPU。

错4.AT89S52 单片机是微处理器。

错5.AT89S51 片内的 Flash 程序存储器可在线写入( ISP),而 AT89C52则不能。

对6. 为 AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片 AT89S51替换。

对7. 为 AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片 AT89S52替换。

对8.单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能则是 DSP的长处。

对第 2 章思考题及习题 2 参考答案一、填空1.在AT89S51单片机中,如果采用6MHz晶振,一个机器周期为。

答:2μ s2. AT89S51 单片机的机器周期等于个时钟振荡周期。

《单片机原理及接口技术》试题及答案

《单片机原理及接口技术》试题及答案

《单片机原理及接口技术》试题及答案一、填空题1.AT89S51单片机是()位的单片机。

2.AT89S51单片机有()个中断源,()级优先级中断。

3.串行口方式3发送的第9位数据要事先写入()寄存器的()位。

4.串行口的方式0的波特率为 ()。

5.AT89S51内部数据存储器的地址范围是(),位地址空间的字节地址范围是(),对应的位地址范围是()外部数据存储器的最大可扩展容量是()。

6.在内部RAM中可位寻址区中,位地址为40H的位,该位所在字节的字节地址为()。

7.如果(A)=58H,(R1)= 49H,(49H)= 79H,执行指令XCH A, @R1后;结果(A)=( ) ,(49H)=( )。

8.利用81C55可以扩展()个并行口,()个RAM单元。

9.当单片机复位时PSW=()H,SP=(),P0~P3口均为()电平。

10.若A中的内容为88H,那么,P标志位为()。

11.当AT89S51执行MOVC A,@A+ DPTR指令时,伴随着()控制信号有效。

12.AT89S51访问片外存储器时,利用()信号锁存来自()发出的低8位地址信号。

13.已知fosc=12MHz, T0作为定时器使用时,其定时时间间隔为()。

14.若AT89S51外扩8KB 程序存储器的首地址若为1000H,则末地址为()H。

二、判断对错,如对则在()中写“√”,如错则在()中写“×”。

1.AT89S51单片机可执行指令:MOV 35H,@R3。

()2.8031与8751的区别在于内部是否有程序存储器。

()3.当向堆栈压入一个字节的数据后,SP中的内容减1。

()4.程序计数器PC中装的内容是当前正在执行指令的地址。

()5.某特殊功能寄存器的字节地址为80H,它即能字节寻址,也能位寻址。

()6.AT89S51单片机中的PC是不可寻址的。

()7.当AT89S51执行MOVX @DPTR,A指令时,伴随着WR*信号有效。

单片机原理与接口技术

单片机原理与接口技术

单片机原理与接口技术单片机(Microcontroller)是一种集成了微处理器、存储器和各种输入输出设备的微型计算机系统,广泛应用于各种电子设备中。

单片机原理与接口技术是单片机领域中的重要知识,对于理解单片机工作原理、设计单片机系统以及进行单片机编程具有重要意义。

首先,我们来了解一下单片机的基本原理。

单片机通常由中央处理单元(CPU)、存储器、输入输出设备和定时计数器等组成。

其中,CPU是单片机的核心部分,负责执行指令和控制系统的运行;存储器用于存储程序和数据;输入输出设备用于与外部环境进行信息交换;定时计数器用于产生各种定时信号。

这些部件相互配合,共同完成单片机的各项功能。

在单片机系统中,各种外部设备需要通过接口与单片机进行连接。

接口技术是单片机应用中的关键环节,它涉及到单片机与外部设备之间的通信和数据交换。

常见的接口技术包括并行接口、串行接口、模拟接口和数字接口等。

通过这些接口,单片机可以与各种传感器、执行器、显示器、存储器等设备进行连接,实现对外部环境的监测和控制。

在单片机编程中,了解单片机的原理和接口技术是至关重要的。

通过对单片机的原理进行深入理解,可以更好地把握单片机的工作方式和特性,为编写高效的程序奠定基础。

同时,掌握各种接口技术可以帮助我们设计出更加灵活、可靠的单片机系统,满足不同应用场景的需求。

总之,单片机原理与接口技术是单片机领域中的重要知识,对于从事单片机开发和应用的工程师和技术人员来说,掌握这些知识至关重要。

通过深入学习和实践,我们可以更好地理解单片机的工作原理,设计出更加优秀的单片机系统,并编写出高效可靠的单片机程序,为各种电子设备的开发和应用提供强有力的支持。

希望本文对大家有所帮助,谢谢阅读!。

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案单片机(Microcontroller)是一种集成了微处理器、存储器和各种输入输出接口的单个集成电路芯片,它广泛应用于各种电子设备中。

在学习单片机原理及接口技术课程中,我们需要掌握单片机的基本原理和各种接口技术,下面是课后习题的答案,希望对大家的学习有所帮助。

1. 请简要说明单片机的工作原理。

单片机是一种集成了微处理器、存储器和各种输入输出接口的单个集成电路芯片,它通过内部的时钟系统控制各种操作,包括数据的输入输出、存储器的读写等。

单片机通过外部的引脚与外部电路连接,实现与外部设备的通讯和控制。

2. 什么是单片机的接口技术?请列举几种常见的接口技术。

单片机的接口技术是指单片机与外部设备进行通讯和控制的技术,包括数字接口技术、模拟接口技术和通讯接口技术。

常见的接口技术包括并行接口、串行接口、模数转换接口、数模转换接口等。

3. 请简要说明并行接口的工作原理。

并行接口是单片机与外部设备进行数据传输的一种接口技术,它通过多根数据线同时传输数据,速度快,但对于线路长度和干扰抗性要求较高。

在工作时,单片机通过控制地址线和数据线与外部设备进行通讯,实现数据的输入输出。

4. 请简要说明串行接口的工作原理。

串行接口是单片机与外部设备进行数据传输的一种接口技术,它通过一根数据线按位传输数据,速度相对较慢,但对于线路长度和干扰抗性要求较低。

在工作时,单片机通过控制时钟信号和数据线与外部设备进行通讯,实现数据的输入输出。

5. 请简要说明模数转换接口的工作原理。

模数转换接口是单片机将模拟信号转换为数字信号的一种接口技术,它通过模数转换器将模拟信号转换为数字信号,然后由单片机进行处理。

在工作时,单片机通过控制模数转换器的输入输出端口,实现模拟信号的采集和处理。

6. 请简要说明数模转换接口的工作原理。

数模转换接口是单片机将数字信号转换为模拟信号的一种接口技术,它通过数模转换器将数字信号转换为模拟信号,然后输出到外部设备。

(完整版)单片机原理和接口技术试题和答案解析

(完整版)单片机原理和接口技术试题和答案解析

复习题及答案(一)选择题(在每个小题四个备选答案中选出一个正确答案,填在题的括号中)1、80C51基本型单片机内部程序存储器容量为(C)。

(A)16K (B)8K (C)4K (D)2K2、在80C51单片机应用系统中,可以作为时钟输出的是(C)引脚。

(A) (B)RST (C)ALE (D)3、在80C51的4个并行口中,能作为通用I/O口和高8位地址总线的是(C).(A)P0 (B)P1 (C)P2 (D)P34、当优先级的设置相同时,若以下几个中断同时发生,(D)中断优先响应。

(A) (B)T1 (C)串口(D)T05、在80C51中,要访问SFR使用的寻址方式为(A)。

(A)直接寻址(B)寄存器寻址(C)变址寻址(D)寄存器间接寻址6、以下的4条指令中,不合法的指令为(D)。

(A)INC A (B)DEC A (C)I NC DPTR (D)SWAP ACC7、当需要扩展一片8K的RAM时,应选用的存储器为(B).(A)2764 (B)6264 (C)6116 (D)621288、若想扩展键盘和显示,并希望增加256字节的RAM时,应选择(A)芯片.(A)8155 (B)8255 (C)8279 (D)74LS1649、80C51单片机要进行10位帧格式的串行通讯时,串行口应工作在(B )。

(A)方式0 (B)方式1 (C)方式2 (D)方式310、80C51复位初始化时未改变SP的内容,第一个入栈的单元地址为(A).(A)08H (B)80H (C)00H (D)07H二、填空题1、计算机的经典结构由存储器、运算器、控制器、输入设备、输出设备组成。

2、80C51单片机基本型内部RAM有128个字节单元,这些单元可以分为三个用途不同的区域,一是工作寄存器区,二是位寻址区,三是通用数据区区。

3、在8051单片机中,由 2 个振荡周期组成1个状态周期,由 6 个状态周期组成1个机器周期.4、8051的堆栈是向地址的高端生成的。

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案

单片机原理及接口技术课后答案一. 单片机原理答案:1. 单片机是一种集成电路,内部集成了处理器、存储器、输入输出接口、定时器等功能部件,可作为微型计算机独立运行。

2. 单片机是指在一个芯片上集成了微处理器和其他功能部件的集成电路。

3. 单片机通常由中央处理器(CPU)、存储器(RAM和ROM)、输入输出(I/O)端口和定时/计数器组成。

二. 接口技术答案:1. 并行接口:数据同时传输多个位,可实现高速数据传输,例如并口打印机接口。

2. 串行接口:数据逐位传输,可以减少传输线路的数量,适用于长距离传输和高速传输,例如串口通信接口。

3. USB接口:通用串行总线接口,可同时传输数据和供电,适用于各种外部设备的连接。

4. 显示接口:用于连接显示器和单片机,例如VGA接口和HDMI接口。

5. 通信接口:用于与其他设备进行数据通信,例如以太网接口、无线通信接口等。

三. 单片机接口技术答案:1. 数字输入输出(GPIO):用于控制外部数字设备的输入和输出,可进行数据采集、信号发送等操作。

2. PWM输出:通过调节输出信号的占空比来实现模拟输出,适用于控制电机转速、LED亮度等场景。

3. ADC输入:用于对模拟信号进行数字量化转换,实现对外部模拟信号的采样和处理。

4. UART串口通信:通过串口接口进行数据的传输和通信,可连接其他设备进行数据交互。

5. I2C总线:用于连接多个器件,实现器件之间的通信和控制。

四. 其他接口技术答案:1. SPI总线:用于连接外部器件,支持全双工通信和高速数据传输。

2. CAN总线:用于工业控制系统中的设备之间进行通信和数据交换。

3. Ethernet接口:用于连接网络,实现本地网络和互联网的通信。

4. GPIO扩展:通过扩展芯片或寄存器实现更多的GPIO管脚,扩展单片机的输入输出能力。

5. 定时/计数器:通过定时器和计数器实现对时间的计数和控制,用于生成精确的时钟信号和进行定时操作。

西南大学工程技术学院机械专业单片机第7章

西南大学工程技术学院机械专业单片机第7章

2012年10月31日星期三
单片机原理及接口技术
第七章 串行接口技术
同步通信
以一串字符为一个传送单位,字符间不加标识位,在一串字符 开始用同步字符标识,硬件要求高,通讯双方须严格同步。
2012年10月31日星期三
单片机原理及接口技术
第七章 串行接口技术
串行通信的传输方向
A 站 发送 器 发送器 接收器 B 接收 站 器 发送器 接收器
单片机原理及接口技术
第七章 串行接口技术
串行口的工作方式与波特率设置
工作方式
方式0
功能
8位同步移位 寄存器
说明
常用于扩展I/O 口
波特率
fosc/12
方式1
方式2
10位UART
11位UART
8位数据、起始位、 可变(取决于定时 结束位 器1溢出率)
8位数据、起始位 0、结束位1 和奇偶校验位
fosc/64或 fosc/32
D0 D1 D2 D3 D4 D5 D6 D7
停止位
2012年10月31日星期三
单片机原理及接口技术 方式2和方式3
第七章 串行接口技术
方式2或方式3时为11位数据的异步通信口。 TXD为数据发送引脚,RXD为数据接收引脚
1帧共11位 空 闲 起 始 位 D0 LSB 数据位9位 D7 MSB 停 止 位 空 闲
第七章 串行接口技术
波特率的计算
在串行通信中,收发双方对发送或接收数据的速率要约定相同。 串行口的四种工作方式对应三种波特率。 波特率计算公式: 方式0的波特率 = fosc/12 方式2的波特率 =(2SMOD/64)· fosc 方式1、3的波特率 =(2SMOD/32)· (T1溢出率)

单片机原理及接口技术答案

单片机原理及接口技术答案

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单片机等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机作业一
单选题
题目说明:
(10.0 分)1. 使用MCS51汇编语言指令时,标号以()开始。

A.A:标点符号
B.B:数字
C.C:英文字符
D.D:中文字符
(10.0 分)2. MCS-51单片机是()公司在上世纪80年代推出的。

A.A:INTEL
B.B:MICROCHIP
C.C:AMD
D.D:DELL
(10.0 分)3. 8051单片机使用12MHz的晶振,一个机器周期是()微秒。

A.A:1
B.B:2
D.D:8
(10.0 分)4. MCS-51单片机是()位机。

A.A:4
B.B:8
C.C:16
D.D:32
(10.0 分)5. 8051单片机使用6MHz的晶振,一个机器周期是()微秒。

A.A:1
B.B:2
C.C:4
D.D:8
(10.0 分)6. MCS—51单片机一个机器周期由()个振荡周期构成;
A.A:2
B.B:4
D.D:12
多选题
题目说明:
(10.0 分)7. CPU的主要组成部分有()
A.A:运算器
B.B:控制器
C.C:程序存储器
D.D:数据存储器
(10.0 分)8. 电子计算机的硬件系统主要组成部分有()
A.A:CPU
B.B:存储器
C.C:输入设备
D.D:输出设备
(10.0 分)9. 单片机应用系统由()组成。

A.A:显示系统
B.B:硬件系统
C.C:软件系统
D.D:键盘系统
判断题
题目说明:
(10.0 分)10.MCS-51单片机在检测复位引脚为高电平后,立即复位。

正确错误
(10.0 分)11.I/O口作输入用途之前相应端口必须先置1
正确错误
(10.0 分)12.MCS-51单片机复位后,内部特殊功能寄存器均被清零。

正确错误
(10.0 分)13.MCS-51单片机复位后,RS1、RS0为0、0,此时使用0组工作寄存器。

正确错误
(10.0 分)14.使用工作寄存器0区时,R0为内部数据存储区00H字节,R1于内部数据存储区字节地址01H。

正确错误
主观填空题
题目说明:
(10.0 分)15.
1.十六进制数30H等于十进制数(48);
2.十六进制数20H的压缩BCD码为(32H);
3.与十进制数40相等的十六进制数为( 28H );
4.十六进制数037H对应的压缩BCD码可表示为( 55H);
5.字符“A”的ASCII码为(41H);
6.字符“D”的ASCII码为(44H);
7.字符“1”的ASCII码为(31H);
8.字符“5”的ASCII码为(35H);
9.位09H所在的单元地址是(21H )字节的(D1 )位;
10.编写程序时使用的程序设计语言有(机器语言)、(汇编语言)、
(高级语言)三种;
11.M CS—51单片机有四个工作寄存器区,由PSW状态字中的(RS0)、
(RS1)两位的状态来决定;
12.定时器的工作方式( 1 )为16位为定时/计数方式;
13.串行通讯分为(异步通讯)和(同步通讯)两种基本方式;
14.串行通讯工作方式1和方式3的波特率有SMOD值和(T1的溢出率)控
制。

作业二
单选题
题目说明:
(10.0 分)1. MCS-51单片机是根据()中的数值作为地址读取指令
A.A:DPTR
B.B:PC
C.C:R0
(10.0 分)2. MCS-51单片机有()中断源。

A.A:1
B.B:3
C.C:5
D.D:7
(10.0 分)3. MCS-51单片机复位后PC值为( )
A.A:0000H
B.B:000BH
C.C:0013H
D.D:0023H
(10.0 分)4. MCS-51单片机的定时器T0有()种工作方式
A.A:1
B.B:2
C.C:4
(10.0 分)5. 单片机上电后或复位后,工作寄存器R0是在( )
A.A:字节地址 00H单元
B.B:字节地址01H单元
C.C:位地址00H单元
D.D:位地址09H单元
(10.0 分)6. MCS-51单片机的定时器T1有()种工作方式
A.A:1
B.B:2
C.C:3
D.D:4
(10.0 分)7. 在单片机中,通常将一些中间计算结果放在( )中
A.A:累加器
B.B:控制器
C.C:程序存储器
D.D:数据存储器
(10.0 分)8. MCS—51单片机的串行口发送、接收缓冲器共用缓冲器SBUF,其地址为()。

A.A:88H
B.B:90H
C.C:99H
D.D:0AAH
(10.0 分)9. MCS-51单片机有()个中断优先级别控制。

A.A:1
B.B:2
C.C:3
D.D:4
(10.0 分)10.MCS-51单片机有()工作寄存器区
A.A:1
B.B:2
C.C:3
D.D:4
论述题
题目说明:
(10.0 分)11.
1、画出MCS-51单片机外接晶振、复位、使用片内ROM的电路原理图,即MCS-51单片机的最小系统
2、编写延时为100ms的指令延时子程序,晶振为6MHz,写出计算过程。

DEL:MOV R7, #200 ;1个机器周期
DEL1: MOV R6, #125 ;1个机器周期
DEL2:DJNZ R6, DEL2 ;2个机器周期
DJNZ R7, DEL1 ;2个机器周期
RET ;2个机器周期
计算过程:
6MHz振荡频率,一个机器周期为2微秒,100微秒为50,000个机器周期,即执行
1+(1+ 2×R6 +2) ×R7+2 =50,000 ,令R7=199,由此方程计算得出R6约为125。

作业三
判断题
题目说明:
(10.0 分)1. 进位标志位是特殊功能寄存器之一程序状态寄存器PSW中的一个位。

正确错误
(10.0 分)2. 七段数码LED采用静态显动态方式比动态显示占用更多的CPU开销。

正确错误
(10.0 分)3. 定时器1的中断入口地址是23H。

正确错误
(10.0 分)4. I/O口作输入用途之前相应端口必须先清零。

正确错误
(10.0 分)5. 一个机器周期由4个时钟周期构成。

正确错误
(10.0 分)6. 若指令有多个操作数,各操作数间以分号分隔。

正确错误
(10.0 分)7. 中断服务子程序的末尾有返回指令是RET。

正确错误
(10.0 分)8. 伪指令在编译后没有代码产生。

正确错误
(10.0 分)9. MCS—51单片机的串行口收发不能同时进行。

正确错误
(10.0 分)10.MCS—51单片机的外中断可以选择为边沿触发方式或电平触发方式。

正确错误
(10.0 分)11.共阴极和共阳极两种,在相同连接方式时的显示段码相同。

正确错误
论述题
题目说明:
(10.0 分)12.简述执行转移指令、调用子程序、中断响应的区别。

答:执行转移指令会修改PC,但不保存当前PC、不会返回、不会自动使用堆栈;而调用子程序和中断响应会保存当前PC进堆栈,再修改PC,都需要返回,从堆栈中取出保存的数作为PC而返回。

调用子程序指令在程序中是事先安排好的,而调用中断服务程序事先却无法确知,因为"中断”的发生是由外设决定的,程序中无法事先安排调用指令,因而调用中断服务程序的过程是由硬件自动完成的。

作业四
论述题
1.编写子程序,将内部数据存储器40H-4FH共16个单字节数依次
搬到50H—5FH,并将原40H—4FH共16字节清零。

答:BAN: MOV R0,#40H
MOV R1,#50H
MOV R1,#16
BAN0: MOV A,@R0
MOV @R1,A
MOV @R0,#0
INC R0
INC R1
DJNZ R1,BAN0
RET
2.无条件转移、子程序调用、中断响应这三者有何异同?
答:相同:这三者都会修改PC,通常不会再顺序执行。

不同:无条件转移不会保存当前PC,而后两者都会先自动使用堆栈保存当前PC再修改PC,都会有返回的时候;而后两者之间的不同在于调用子程序指令在程序中是事先安排好的,而调用中断服务程序事先却无法确知,因为"中断”的发生是由外设决定的,程序中无法事先安排调用指令,因而调用中断服务程序的过程是由硬件自动完成的。

相关文档
最新文档