MCS51单片机的数据复制程序(ASM)

发布者:SereneMeadow最新更新时间:2023-08-30 来源: eefocus关键字:MCS51  单片机  ASM 手机看文章 扫描二维码
随时随地手机看文章

MCS51单片机的数据复制程序(ASM)

;内部RAM数据复制程序
;入口    :R0,R7
;占用资源:A
;堆栈需求:2字节
;出口    :R1


IBMOV    :MOV    A,R0
          ADD    A,R7
          MOV    R0,A
          MOV    A,R1
          ADD    A,R7
          MOV    R1,A
IBM1     :DEC    R0
          DEC    R1
          MOV    A,@R0
          MOV    @R1,A
          DJNZ   R7,IBM1
          RET

;外部RAM数据复制程序
;入口    :ADDPH,ADDPL,R7
;占用资源:ACC
;堆栈需求:2字节
;出口    :R0,R1

EBMOV1   :MOV    A,ADDPL
          ADD    A,R7
          MOV    DPL,A
          CLR    A
          ADDC   A,ADDPH
          MOV    DPH,A
          MOV    A,R7
          ADD    A,R1
          XCH    A,R0
          ADDC   A,#00H
          MOV    P2,A
EBM11    :DEC    R0
          CJNE   R0,#0FFH,EBM12
          DEC    P2
EBM12    :DEC    DPL
          MOV    A,DPL
          CJNE   A,#0FFH,EBM13
          DEC    DPH
EBM13    :MOVX   A,@R0
          MOVX   @DPTR,A
          DJNZ   R7,EBM11
          RET

;外部RAM数据复制程序
;入口    :ADDPH,ADDPL,R6,R7
;占用资源:ACC
;堆栈需求:2字节
;出口    :R0,R1

EBMOV2   :MOV    A,ADDPL
          ADD    A,R7
          MOV    DPL,A
          MOV    A,R6
          ADDC   A,ADDPH
          MOV    DPH,A
          MOV    A,R7
          ADD    A,R1
          XCH    A,R0
          ADDC   A,R6
          MOV    P2,A
          MOV    A,R7
          JZ     EBM21
          INC    R6
EBM21    :DEC    R0
          CJNE   R0,#0FFH,EBM22
          DEC    P2
EBM22    :DEC    DPL
          MOV    A,DPL
          CJNE   A,#0FFH,EBM23
          DEC    DPH
EBM23    :MOVX   A,@R0
          MOVX   @DPTR,A
          DJNZ   R7,EBM21
          DJNZ   R6,EBM21
          RET

;外部RAM数据复制到内部RAM程序
;入口    :ADDPH,ADDPL,R7
;占用资源:ACC
;堆栈需求:2字节
;出口    :R0

ITEMOV  :MOV    A,ADDPL
         ADD    A,R7
         MOV    DPL,A
         MOV    A,ADDPH
         ADDC   A,#00H
         MOV    DPH,A
         MOV    A,R0
         ADD    A,R7
         MOV    R0,A
ITEM1   :DEC    R0
         DEC    DPL
         MOV    A,DPL
         CJNE   A,#0FFH,ITEM2
         DEC    DPH
ITEM2   :MOVX   A,@DPTR
         MOV    @R0,A
         DJNZ   R7,ITEM1
         RET


关键字:MCS51  单片机  ASM 引用地址:MCS51单片机的数据复制程序(ASM)

上一篇:MCS-51系列单片机实现PWM输出功能的方法解析
下一篇:基于K9F5608A的MCS-51单片机驱动程序

推荐阅读最新更新时间:2024-11-12 13:13

单片机超声波视觉识别系统的测量软件开发
  当超声波传感器发出的超声波遇到物体返回时,探头接收其反射回波信息,从而可对接收到的反射回波进行分析、判断和计算,得到物体到探头的距离并判断物体的形状。其触发脉冲间隔时间可由程序控制。本系统采用5~10 ms间隔,可测最大距离为850~1700 mm。      设传感器与物体之间的距离为L,空气中的声速为c,从发射超声波脉冲到接收到反射波的传播时间为Ts,则:      传播时间Ts测量的准确性直接影响着测距精度。我们测量从发射脉冲到接收到反射波的第一个过零点之间的时间(零交叉点)为Ts。这个时间比超声波真实往返时间稍长,要加以修正。但这种方法较好地利用了接收到的反射波的上升沿几乎不随对象物形状变化而变化的特性,因此其测量的
[单片机]
<font color='red'>单片机</font>超声波视觉识别系统的测量软件开发
MSP430单片机的BSL编程工具设计与应用
引言 美国 德州仪器 公司的MSP430系列单片机在智能仪器仪表、医疗电子、消费电子等领域有着非常广泛的应用。大部分MSP430系列单片机都具有非易失性Flash存储器,用户调试或更新Flash中程序的方式一般有两种方法:JTAG和Bootstrap Loader(引导装载程序,简称BSL)。 MSP430系列单片机内部集成了JTAG仿真调试模块,并口转换器就可以作为一个低成本的JTAG硬件仿真调试工具,然而,为了保护用户程序代码,往往产品开发完成之后必须要烧断MSP430单片机内部的熔丝,这就使得MSP430单片机无法再通过JTAG接口访问CPU或者更新Flash中的用户程序了,要想再次访问或者更新Flash中的用户程序就需要使
[单片机]
MSP430<font color='red'>单片机</font>的BSL编程工具设计与应用
80C51单片机产生几种基本波形的方法
  简介:介绍了基于80C51单片机产生几种基本波形的方法。采用微处理器兼容的14位数模转换器MAX7534,高速,稳定,具有良好的线性。用户通过按键选择输出需要的波形,波形精度能够满足一般的使用条件。   本文利用80C51单片机外接数模转换器和I/V转换电路,由用户通过按键选择输出实验中经常使用到的几种基本波形:方波、锯齿波、正弦波。方波由80C51单片机内部自带的计数器/定时器产生,并由用户通过小键盘选择波形周期。与微处理器兼容的14位数模转换器MAX7534将数字量转换为模拟量电流信号,通过I/V转换电路得到双极性的锯齿波和正弦波信号,波形保证了他的精度和平滑、稳定。   1硬件电路设计   80C51单片机时钟电
[单片机]
80C51<font color='red'>单片机</font>产生几种基本波形的方法
51单片机系列之驱动蜂鸣器发声
名称:51单片机驱动蜂鸣器发声 平台:Keil 4, Ly-51S学习板 内容:模拟报警声,如闹钟 滴 滴 滴 滴 -----------------------------------------------------*/ #include reg52.h sbit SPK = P1^2; void delay_2us(unsigned char t) { while(--t); } void main() { while(1) { delay_2us(25); SPK = !SPK; } }
[单片机]
基于51单片机的超声波测距设计(带温度补偿)
利用STC89C52单片机、超声波模块(HC-RS04)、DS18B20数字温度传感器和LCD1602液晶显示模块制作一个超声波测距仪,液晶屏第一行显示温度和超声波速度“T:30°C V:349m/s”,第二行显示测量距离“S=X.XXXm”。 所设计的测距仪测量单位为米,精确到小数点后面3位(毫米),测量范围:0.05m~5m。 (一)基本部分 1、液晶显示功能 (1)开机时,液晶屏第一行显示温度和超声波速度,例如“T:30°C V:349m/s”,第二行显示测量距离“S=0.000m” (2)操作对应的功能按键时,液晶屏第一行显示温度和超声波速度,例如“T:30°C V:349m/s”,第二行显示测量距离“S=X.XXXm”
[单片机]
基于51单片机的nrf24l01无线的接受和发射程序
通过灯的闪烁来判断数据的接受和发射 有接收端和发射段的程序 如果24L01用reg51那么两个设备都要用reg51,如果用reg52就都得用reg52! PC通过串口发送给单片机命令 ,单片机把命令通过24L01无线发送给另一个单片机,另一个单片机控制灯LED1,LED2,LED3,LED4闪烁。 无线发射程序: #include 2401.h #define uint unsigned int #define uchar unsigned char //1//sbit KEY1=P0^0; //发送按键 //1//sbit KEY2=P0^1; //1//sbit KEY3=P0^2; /
[单片机]
基于51<font color='red'>单片机</font>的nrf24l01无线的接受和发射<font color='red'>程序</font>
基于EPP-CAN智能接口卡硬件电路设计
  mcp2510是 microchip公司的一款can协议控制器,完全支持can总线v2.0a/b技术规范,能够发送和接收标准和扩展报文。它还同时具备验收过滤以及报文管理功能。该器件包含3个发送缓冲器和两个接受缓冲器,减少了单片机的管理负担。单片机的通讯是通过行业标准串行外设接口spi来实现的,其数据传输速 率高达5mbps。can总线上可编程位传输速率最高可达1mbps。pc机中,每个并行口占用3个i/o端口地址,分别对应着各自的数据寄存器,控制寄存器和状态寄存器。数据寄存器地址为378h,用来暂存传送的数据,在双向通信环境中,包含读入和读出两个寄存器的双缓冲寄存器,对应 ad0~ad7双向数据/地址端口,输入操作时使用输入寄
[单片机]
基于EPP-CAN智能接口卡硬件电路设计
单片机最小系统振荡电路图原理
振荡电路 图 振荡电路图 单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。 在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。 单片机晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通
[单片机]
<font color='red'>单片机</font>最小系统振荡电路图原理
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved