基于AT89S51数据传送类指令程序
日期:2024-01-21 14:41:04   来源:数据采集转换类

  数据传送类指令是编程时使用最频繁的一类指令。一般数据传送类指令的助记符为“MOV”,通用的格式如下:

  MOV,数据传送类指令是把源操作数传送到目的操作数。指令执行后,源操作数不改变,目的操作数修改为源操作数。所以数据传送类操作属“复制”性质,而不是“搬家”。

  数据传送类指令不影响标志位,这里所说的标志位是指Cy、Ac和OV,但不包括检验累加器奇偶标志位P。1.以累加器为目的操作数的指令

  这组指令的功能是把源操作数的内容送人累加器A,源操作数有寄存器寻址、直接寻址、间接寻址和立即数寻址等方式,例如指令:2.以Rn为目的操作数的指令

  这组指令的功能是把源操作数的内容送入当前工作寄存器区的RO~R7中的某一个寄存器。

  这组指令的功能是把源操作数送入直接地址指定的存储单元。direct指的是内部RAM或SFR地址。4.以寄存器间接地址为目的操作数的指令

  这条指令的功能是把16位立即数送入DPTR,用来设置数据存储器的地址指针。AT89S51中设有两个DPTR,通过设置特殊功能寄存器AUXR1中的DPS位来选择。当DPS-I,则指令中的DPTR即为DPTR1,DPTRO被屏蔽,反之亦然。DPTR既是一个16位的数据指针,又可分为DPH和DPL两个8位寄存器做相关操作,十分灵活、方便。设有两个DPTR后,可避免频繁地出入堆栈操作。

  对于所有MOV类指令,累加器A是一个很重要的8位寄存器,CPU对它具有其他寄存器所没有的操作指令。后面将要介绍的加、减、乘、除指令都是以A作为目的操作数的。Rn为CPU当前所选择的寄存器组中的RO~R7,直接地址指定的存储单元为内部RAM的OOH~7FH和特殊功能寄存器(地址范围为80H~FFH)。在间接地址中,用RO或Rl作为内部RAM的地址指针,可访问内部RAM的OOH~7FH共128个单元。6.堆栈操作指令

  在AT89S51的内部RAM中可以设定一个后进先出(LIFO,Last In First Out)的区域,称为堆栈。在特殊功能寄存器中有一个堆栈指针SP,它指定堆栈的栈顶位置。堆栈操作有进栈和出栈两种,因此,在指令系统中相应有两条堆栈操作指令。

  这条指令的功能是,首先将栈指针SP加1,然后把direct中的内容送到栈指针SP指示的内都RAM单元中。

  例如,当(SP)=60H,(A)=30H,(B)=70H时,执行下列指令

  这条指令的功能是,将栈指针SP指示的栈顶(内部RAM单元)内容送入direct字节单元中,栈指针SP减1。

  例如,当(SP)=62H,(62H)=70H,(61H)=30H时,执行下列指令:

  结果为(DPTR)=7030H,(SP)=60H。7.累加器A与外部数据存储器RAM/IO传送指令

  上述4条指令的助记符是在MOV的后面加“X”,“X”表示AT89S51单片机访问的是片外RAM存储器或I/O口,是读外部RAM存储器或I/O口中的一个字节的数据到累加器A中,或将累加器A中的一个字节的数据写入外部RAM存储器或I/O口中。所以在执行前两条指令时,RD(的反)(P3.7)有效;执行后两条指令时,WR(P3.6)有效。

  采用16位的DPTR进行间接寻址,可寻址整个64KB片外数据存储器空间,高8位地址(DPH)由P2口输出,低8位地址(DPL)由PO口输出。

  采用Ri(i=0.1)进行间接寻址,可寻址片外256个单元的数据存储器。8位地址由PO口输出,锁存在地址锁存器中,然后PO口再作为8位数据口。

  这类指令共两条,均为单字节指令,这是AT89S51指令系统中仅有的两条读程序存储器中表格数据的指令。由于对程序存储器只能读不能写,因此其数据的传送都是单向的,即从程序存储器中读出数据到累加器中。两条查表指令均采用基址寄存器加变址寄存器间接寻址方式。

  这条指令以PC作为基址寄存器,A的内容作为无符号整数和PC的当前值(下一条指令的起始地址)相加后得到一个新的16位地址,把该地址指定的程序存储单元的内容送到累加器A。

  该指令占用一个字节,下一条指令的地址为1001H,(PC)=1001H再加上A中的30H,得1031H,结果是将程序存储器中1031H的内容送入累加器A。

  这条指令的优点是不改变特殊功能寄存器及PC的状态,根据A的内容就可以取出表格中的常数。缺点是表格只能存放在该条查表指令所在地址的+256个单元之内,表格的大小受到限制,而且表格只能被一段程序所利用。

  这条指令以DPTR作为基址寄存器,A的内容作为无符号数和DPTR的内容相加得到一个16位地址,把由该地址指定的程序存储器单元的内容送到累加器A。

  这条查表指令的执行结果只与指针DPTR及累加器A的内容有关,与该指令存放的地址及常数表格存放的地址无关,因此表格的大小和位置可以在64KB程序存储器空间中任意安排,一个表格能为各个程序块公用。

  上述两条指令的助记符都是在MOV的后面加“C”,“C”是CODE的第一个字母,即表示程序存储器中的代码。执行上述两条指令时,单片机的PSEN引脚信号(程序存储器读)有效。9.字节交换指令

  这组指令的功能是将累加器A的内容和源操作数的内容相互交换。源操作数有寄存器寻址、直接寻址和寄存器间接寻址等方式。例如:

  这条指令的功能是,累加器的低4位与内部RAM低4位交换。例如:(RO)=60H,(60H)=3EH,(A)=59H,执行完“XCHD A,@RO”指令,则(A)=5EH,(60H)=39H。

  1 引言 单片机系统传统的编程方式是将单片机先从电路板上取下,放入专用的编程器进行编程,再放人电路板进行调试。其缺点是频繁的拔插器件容易损坏器件的引脚;如果频繁的调试程序,必须重复拔插,大幅度的降低了开发效率。ISP技术是未来发展的方向,其优势是无需编程器就可进行单片机的实验和开发,单片机器件可直接焊接到电路板上,调试结束即为成品,免去调试时由于频繁插入取出对器件和电路板造成的损坏和带来的不便。 ISP可降低研发成本;缩短从设计、制造到现场调试的时间,简化生产流程,大幅度的提升工作效率;在试验新品或学生试验等常需用不同的程序调试器件的场合中,在线编程技术特别的重要。 设计AT89S51单片机开发板,采用ISP下载线实现在Keil C

  单片机开发板的设计 /

  传统的频率低的信号源或发生装置,因其大部分采用模拟电路设计的原因,一般具有价格昂贵、输出性能欠佳且不便于调节等问题,工程应用价值较低。为避免传统低频信号源或发生装置的上述技术缺点,降低技术开发成本和提高技术开发效率,文中利用AT89S51可以在线编写程序的特点,结合了DAC接口技术,设计了波形、频率、相位均调节方便并可产生方波、三角波、锯齿波、正弦波四种波形的技术方案。这种新的低频信号源设计的具体方案,可以使得波形信号的产生由单片机查表软件产生,波形的周期依靠程序设置来改变,具有线路简单、结构紧密相连、价格低、性能优越等优点。 1 设计目标和思路 文中设计目标是完成4种波形信号输出,即正弦波、三角波、方波和锯齿波,并使其在低频范围内具

  单片机的低频信号设计及仿真研究 /

  文章以门禁控制为例,介绍一款基于RFID应用的通用型控制器的设计原理,并给出了利用Proteus软件进行仿真调试的方法。该控制器由RFID卡、天线、读卡模块、单片机、LCD1602显示器等组成,采用AT89SXX系列单片机作为控制芯片,采用EEPROM保存卡号,不怕掉电。采用125kHz射频读卡模块,读卡模块工作方式为主动方式,当RFID卡靠近读卡模块时,卡号连续以串行方式输出,经串口送入单片机或PC机做处理。可用于公共场所的门禁管理,具有成本低、性能可靠、通用性好、用途广泛等优点,在此电路基础上进行简单应用功能扩展,便能满足各种场合用户的需求。 0 引言 RFID卡应用系统由RFID卡、读卡器、控制器等组成,读

  1 引言 随着我们国家国民经济的快速发展, 人民生活水平的提高, 人们对家庭住房的防盗、防劫、防火设备的重视程度也在逐步的提升, 所以现代社会有更多的人需要对偷盗、抢劫、火灾、煤气泄漏等事故进行监测和报警。为了有效的保证居民的生命财产安全, 我们设计了一款智能家庭防盗报警系统。该系统是利用无处不在的电线 液晶显示驱动芯片及集成电路组成的双音多频拨号电路等有机地结合在一起, 构成一种功能先进、实用、成本低廉的家庭智能防盗报警器。 2 电路组成框图和基本工作原理 2.1 电路组成框图 智能家庭防盗报警系统是由无线发送/ 接受模块、报

  简介:介绍了一种缝纫机生产线计件系统,给出了系统的硬件电路和软件设计思想,该系统以单片机AT89S51为控制中心,以光电开关为传感器,可以检测生产线上产品实际数量以及显示时间、实际产量、计划产量等数据。实践证明该系统可靠性好、操作便捷、测试精度高,可大范围的应用在家电、食品等生产领域。 随着现代生产的规模化发展,传统人工统计产品的方法难以做到及时准确,为了对自动生产线上的零件或成品进行动态管理和统计,要安设必要的自动检验测试与计数装置。一方面可实时显示产品的数量等信息,另一方面可向计算机管理系统提供动态数据,为过程控制提供相关依据。 本系统是为某缝纫机厂装配线条缝纫机生产线,每条生产线都需要有计件系统。系统应

  很长的一段时间的捣鼓,手上的这块段码屏、总算是可根据我的要求显示数字了.这块小数码屏在我手里已经很久了,记得还是刚刚玩单片机时买的,当时在地摊上花了3元钱买了一只LCD1601模块和这块屏,当时并不知道怎么才能点亮它,只是因为其背面的控制电路是标准的集成块,型号齐全清晰,屏面成色尚可,当时地摊上也时常能见到一些小的显示屏,但多数都是黑色树脂封装的电路模块,我只选带有型号的标准集成电路的买,因为我觉得,只要有型号,就可以在网上查到资料,事实上,我是对的;随着所学知识的增加,后来玩了一阵子LCD1601,玩明白以后就扔到一边了,而这只模块一直没弄,前些时,在网上找到了这只模块的集成电路资料,才知道这种PCF8576电路、竟然是自成系

  I2C控制PCF8576段码LCD模块 /

  AT89S51 是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统供给超高的性价比的解决方案。 AT89S51具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层

  前言 液位是许多工业生产里的重要参数之一,在化工、冶金、医药、航空等领域里,对液位的测量和控制效果直接影响到产品的质量。由于单片微型计算机具有体积小,耗电少,控制精度高,运行可靠等的特点,所以大范围的应用于生产实际中。本文讨论了一种以AT89C51为核心研制的液位控制管理系统,该系统不仅能对液位进行巡回检测、显示和报警,同时也能对液位进行智能控制。 1、 系统硬件设计 系统硬件组成框图如图1所示。主要由AT89S51、输入电路组成和输出电路组成。 图1 系统硬件组成框图 1.1 微机系统 系统的核心部分是一片AT89S51微处理器。这是一种与MCS –51系列芯片兼容,带有4KB闪速可擦除只读存储器的低功耗、高性能CMOS结构的8位

  微处理器和PID控制方案实现液位控制管理系统的设计 /

  7-1200 PLC应用技术教程 (郑海春)

  on))

  人工智能算法(卷3):深度学习和神经网络 ([美] 杰弗瑞•希顿(Jeffery He

  有奖直播 是德科技 InfiniiMax4.0系列高带宽示波器探头新品发布

  MPS电机研究院 让电机更听话的秘密! 第一站:电机应用知识大考!跟帖赢好礼~

  ADI世健工业嘉年华——深度体验:ADI伺服电机控制方案

  解锁【W5500-EVB-Pico】,探秘以太网底层,得捷电子Follow me第4期来袭!

  【下载】LAT1317 STM32CubeProgrammer和STM32CubeIDE协同调试的方法

  【下载】LAT1334 基于MCSDK5.4.8电机库修改两电阻采样方法

  【直播】轻松使用STM32MP13x如MCU般在Cortex A 核上裸跑应用程序

  【新品】STM32H5-Arm® Cortex®-M33 内核,主频高达250MHz,提升性能与信息安全性

  【新品】STM32MP13X-支持Linux、RTOS和Bare Metal应用,新一代通用工业级MPU

  【新品】Arm® Cortex®-M33处理器内核,运行频率160 MHz,基于Armv8-M架构并带有TrustZone®

  【Matter】康普和意法半导体强强联手,让物联网设备Matter证书管理既安全又简便

  【方案】STM32WLE5 x 利尔达LoRa模组助力亚残会开幕式惊艳秀

  【新品】意法半导体发布远距离无线微控制器,提高智能计量、智能建筑和工业监控的连接能效

  Qt Group 正在将其轻量级高性能图形框架引入英飞凌的车用MCU中。英飞凌支持图形功能的 TRAVEO T2G Cluster MCU 现在可与 Qt 图形 ...

  与机构预测不同的是,近几个月,MCU新品频发,而它们的目标则也更加明确——发力AI和汽车。...

  【认识STM32】F1 代表了基础型,基于Cortex-M3 内核,主频为72MHZ,F4 代表了高性能,基于 Cortex-M4 内核,主频 180M。【GPIO外设】 ...

  一、什么是中断首先介绍一下什么是中断。在实际开发过程中,中断是很有必要的。比如需要针对某种特殊情况做快速响应,单纯的使用一个whil ...

  以STM32F072CB做的测试官方参考应用文档:AN4759RTC日历时钟配置通过两个预分频得到1hz的时钟用来更新日历。异步预分频:PREDIV_A,7-bit( ...

  站点相关:综合资讯51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程