SOC单片机原理与应用鲍可进部分答案.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
. . 单片机应用课程设计 19.5-20 作业: 2.2 答:C8051F020单片机有5个独立的物理存储空间.分别是: 64K字节程序存贮器空间(地址范围0~0FFFFH);该部分空间一般仅能进行读操作.寻址方式是基址加变址寻址.指令操作码是MOVC,指令只有两条.是MOVC A,@A+PC或MOVC A,@A+DPTR; 256字节内部RAM空间(地址范围0~0FFH);该部分空间可以采用直接寻址也可以采用间接寻址访问;访问该空间数据的传送指令操作码是MOV; 128字节内部特殊功能寄存器空间(地址范围80—0FFH);该部分空间只能采用直接寻址进行访问.一般用特殊功能寄存器名字代表该空间中的地址用在指令中; 256位寻址空间(位地址范围0—0FFH);该部分空间只能采用位寻址访问.访问该空间数据传送指令的操作码是MOV.指令中出现的地址是位地址; 64K字节外部数据存贮器(RAM/IO)空间(地址范围0~0FFFFH);该部分空间只能采用寄存器间接寻址.读操作的指令是:MOVX A,@DPTR或MOVX A,@Ri(i=0或1);写操作的指令是:MOVX @DPTR,A或MOVX @Ri(i=0或1)。 2.11 配置步骤如下: (1). 按UART0E = 1(XBR0.2=1)、SMB0EN = 1(XBR0.0=1)、SPI0E=1(XBR0.1=1)、CP0E = 1(XBR0.7=1) 、EMIFLE =1(XBR2.1=1)和XBARE = 1(XBR2.6=1)设置XBR0、XBR1 和XBR2.则有:XBR0 = 0x87.XBR1 = 0x00.XBR2 = 0x42; (2). 将外部存储器接口配置为复用方式并使用低端口.有:PRTSEL = 0(EMI0CF.5).EMD2 (EMI0CF.4)= 0; 将作为模拟输入的端口1 引脚配置为模拟输入方式:设置P1MDIN 为0xE3(P1.4、P1.3 和P1.2 为模拟输入.所以它们的对应P1MDIN 被设置为逻辑‘0’); (4).UART0有最高优先级.P0.0 被分配给TX1.P0.1 被分配给RX1。SPI的优先级次之.P0.2分配给SCK,P0.3分配给MISO.P0.4分配给MOSI.由于外部存储器接口选在低端口(EMIFLE = 1).P0.5分配给ALE.P0.6分配给/RD.P0.7分配给/WR。(又因为外部存储器接口被配置为复用方式.所以在执行对片外操作的MOVX 指令期间.外部存储器接口将驱动端口2(地址总线高8位) 和端口3(地址总线低8位和8位的数据总线分时复用)。将P1MDIN 设置为0xE3.使P1.2、P1.3、P1.4 被配置为模拟输入.导致交叉开关跳过这些引脚;)P1.0分配给NSS;分配SMBus需要的引脚.P1.1 被分配给SDA.跳过P1.2、P1.3、P1.4.则接着P1.5 被分配给SCL。 接下来分配CP0的引脚.P1.6 被分配给CP0。 (5). 将UART0 的TX 引脚(TX1.P0.0)、ALE、/RD、/WR(P0.[7:5])的输出设置为推挽方式.通过设置P0MDOUT = 0xE1 来实现。 (6). 通过设置P2MDOUT = 0xFF 和P3MDOUT = 0xFF 将EMIF 端口(P2、P3)的输出方式配置为推挽方式; (7). 通过设置P1MDOUT = 0x00(配置输出为漏极开路)和P1 = 0xFF(逻辑‘1’选择高阻态)禁止3 3.1 ORG 0000H LJMP MAIN MAIN: MOV R4, #0 MOV DPL, #0 NEXT: MOV DPH, #10H MOVX A, @DPTR MOV DPH, #25H MOVX @DPTR,A INC DPTR DJNZ R4, NEXT SJMP $ 3.2 Clr c mov a, 31h subb a,#0 Jc negative Sjmp exit Negative: Clr c Mov a,30h Cpl a Add a,#1 Mov 30h,a Mov a,31h Xrl a,#7fh Addc a,#0 Mov 31h,a Exit: Sjmp exit 3.4 X data 35h Y data 36h Org 0000h Sjmp main Org 0100h Main Mov a,x Cjne a,#0,not_equal Mov y,#0 Sjmp exit Not_equal: Jc neg

文档评论(0)

smdh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档