标题: 求助。帮帮忙,谢谢! [打印本页]

作者: huihui    时间: 2010-7-1 12:20
标题: 求助。帮帮忙,谢谢!
1.使程序状态寄存器PSW中常用的位有哪些,作用是什么? 2.用中断时,系统初始化要完成哪些工作? 3.80C51单片机内256B数据存储器可分为几个区?,当RSI 、RS0=01H时,R2的直接地址是多少? 4.位地址7CH与字节地址7CH如何区别?位地址7CH具体在片内RAM中的哪个字节的哪一位? 5.在MCS51单片机的定时器/计数器作为定时器或计数器使用时,其计数脉冲分别是由谁提供的?作为定时器用时,其定时时间与哪些因素有关? 6.:微型计算机中,I/O接口的编址方式有哪几种,MCS-51单片微型计算机属于哪种方式? 7.(1)分析并说明程序功能(2)写出下列寄存器及片内RAM单元的最后结果 MOV R0,#40H MOV A,@R0 INC R0 ADD A,@R0 INC R0 MOV @R0,A CLR A ADDC A,#0 INC R0 MOV @R0,A SJMP $ END (R0)= 0 ,(A)= 0 ,(40H)= ,(42H)= ,(43H)=
作者: brantyou    时间: 2010-7-1 13:47

使用中断时,你要确定是使用的是什么中断,干什么用。总的来说,要用中断前,先要打开总开关EA(这个可以在IE寄存器中设置,也可以直接对EA赋值操作),然后选择中断类型(可以在TCON中设置),再看看是否要选用触发方式(有低电平触发和下降沿触发),设置成定时器的要设置对应的TMOD模式。如果在使用中断时不是按自然优先级使用的,就要设置优先级(即设置IP)


作者: zengyi703    时间: 2010-7-1 14:40

1.PSW位没有常用不常用之分,如果汇编的话都会经常用到。

2.用中断要完成的工作这要看你用哪些中断了,要是外部中断那就先开中断(包括总中断和用到的外部中断),再设置好外部中断的触发方式。要是定时器(或串口),就先初始化定时器(或串口),再开中断

3.内部256B分为五部分,从00H--1FH是工作寄存器组,20H--2FH为可位寻址区,30H--7FH为用户ram区,80H--FFH为对应两部分,一个是SFR(特殊功能寄存器区)直接寻址,另一个是用户RAM区R0或R1间址。

RS1,RS0为01H时,选择的是工作寄存器组1,由于工作寄存器地址从00H开始是第0组,每组共8Byte,所以第一组的R1为08H,R2为09H

4.位地址和字节地址是可以跟据指令来区别的,如:MOV C,7CH   MOV A,7CH能看出前着为位操作,后着为字节操作

5.作为定时器用是,脉冲频率就是机器周期。作为计数器时脉冲肯定就是外部要计数的脉冲了。作为定时器用时,定时器时间与初值有关TH TL值。

6.说不太准,好像有与ram统一编址或单独编址之分,mcs51属统一编址

7.  MOV R0,#40H     ;将数40H送到R0

     MOV A@R0        ;以R0里的数为地址进行间址,即将40H值送A

     INC  R0                ;R0加一指向41H

     ADD A,@R0        ;A与R0指向的址地(41H)的值相加

     INC  R0                ;R0指向42H

     MOV @R0,A        ;将上面相加的结果放42H地址处

     CLR  A                 ;清零A

     ADDC A,#0         ;带标志位加,由于都清了零,加的也是0,功能只是将标志伴的值取出了

     INC  R0                ;R0指向43H

     MOV @R0,A          ;将标志位的值放到43H处

     SJMP $                 ;跳转到当前地址,程序结束,一直在这跳

     END

     功能和结果一目了然






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1