1、单片机复习概要 1、内部RAM 50H单元开始有15个字节的无符号数,编一个程序找出其最小值,并将结果存放到60H单元。 ORG 0100H MAIN:MOV R0,#51H MOV A,@R0 MOV R1,#14 LOOP:CJNE A,50H,L1 L1:JC L2 MOV 50H,A L2:INC R0 DJNZ R1,LOOP MOV 60H,50H AJMP $ END
2、 2、已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。 ORG 0100H MAIN:MOV DPTR,#TAB MOVC A,@A+DPTR TAB:DB 0,1,4,9,16,25,36,49,64,81 END 3、将R7中的无符号数乘以2送到R6和R7中,R6存放高位,R7存放低位。 ORG 0100H ORG 0100H MAIN:MOV A,R7 MAIN:MOV A,R7 RLC A MOV B,#02H MO
3、V R7,A MUL AB CLR A MOV R7,A RLC A MOV R6,B MOV R6,A AJMP $ AJMP $ END END 4、已知A = 0F8H,当执行ADD A,#0A9H指令后,PSW中的OV、CY、AC、P各为多少?若是有符号数,A中的结果用十进制表示是多少? A=0F8H 11111000 ADD A,#0A9H +10101001 110100001 C
4、Y=1(进位) ,OV=0(6位和7位仅有一个进位为1,其他为0),AC=1(低四位进位),P=1(八位中1的个数) 5、应用定时器T1的方式2,对引脚P3.5(T1)的脉冲进行计数,以中断方式每计满200个数对P1.1引脚改变电平状态,写出计数初值并编写程序。 计数200次,即(28-x)=200,x=56=38H ORG 0000H ORG 0100H AJMP MAIN MAIN:MOV TMOD #60H ORG 001BH MOV TH1,#56 AJMP INT1 MOV TL1,
5、56 ORG 0100H SETB TR1 MAIN:MOV TMOD #60H LOOP:JNB TF1,LOOP MOV TH1,#56 CPL P1.1 MOV TL1,#56 CLR TF1 SETB TR1 AJMP LOOP SETB ET1 END SETB EA AJMP $ INT1:CPL P1.1 RETI END 6、使用定时/计数器0以工作方式2实现定时,在P1.0输
6、出周期为200μs的连续方波。已知晶振频率fosc=6MH。求计数初值,方式控制字,编制相应程序。 (周期200μs,即每经过100μs变换一次状态,定时时间为100μs)。 (28-x)×2×10-6=10-4 x=206,TMOD=02H ORG 0000H AJMP MAIN ORG 000BH AJMP INT1 ORG 0100H MAIN:MOV TMOD #02H MOV TH1,#206 MOV TL1,#206 SETB TR0 SETB ET0
7、 SETB EA AJMP $ INT1:CPL P1.0 RETI END 七、MCS-51单片机与8255A并行接口芯片接线如图所示(20分) 1、74LS373芯片的作用是什么?地址锁存 2、分别写出8255A的控制口地址,A口地址、B口地址;(A7接片选CS,A1、A0分别接8255的A1、A0) A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A: 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0--F
8、F7C B: 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1--FF7D C: 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0--FF7E D: 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1--FF7F 3、写出定义 B口为基本输入,A口为基本输出的控制字; B口输入对应D1为1,A口输出对应D4为0,其它位为0,控制字为82H。 4、编写程序连续读取B口10个数据存入内部RAM20H开始单元,并统计10个数据中大于127的数
9、的个数存入R6寄存器。 ORG 0100H MAIN:MOV R6,#0 MOV R1,#10 MOV R0,#20H MOV A,#82H MOV DPTR,#0FF7FH MOVX @DPTR,A MOV DPTR,#0FF7DH L2:MOVX A,@DPTR MOV @R0,A INC R0 CJNE A,#127,L3 AJMP L1 L3:JC L1 INC R6 L1:DJNZ R1,L2
10、 AJMP $ END 八、8051扩展2片8K的RAM和2片8EPROM,画出电路连接图,指出各芯片的地址。 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0--6000H 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1--7FFFH 6264、2764分别为数据存储器和程序存储器,且地址接线相同,故地址范围也相同均为6000H~~7FFFH






