[AT89C51 ]用汇编语言实现流水灯仿真(含keil与Proteus)

这篇具有很好参考价值的文章主要介绍了[AT89C51 ]用汇编语言实现流水灯仿真(含keil与Proteus)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

       前言:笔者发文主要是为了记录笔者单片机学习课程,可能实用性不多,大佬看着玩就行。

        关键词:51单片机;AT89C51;流水灯仿真;初学

要求:使用AT89C51实现流水灯,使用汇编语言。

思路:用51单片机8个P1口输出实现8个LED灯依次亮灭,实现流水目标

        硬件:连接如图

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

 Proteus用到的都是简单的操作,画图和放元件若是有不懂的再说吧。

软件:用汇编语言

        

	ORG 0000H
		AJMP MAIN
	ORG 0030H
		MAIN:	MOV	SP,	#60H
				MOV	A,	#0FEH;			设置灯亮	11111110
		
		LOOP:	
				INC	R0;					增加R0值,开始计数
				RR	A		;			开始亮8灯  逆向流水,从下至上亮,本质是做环移
				MOV P1,A	;			激活P1口
				ACALL	DELAY;			进入延时,1S
				AJMP	LOOP;			返回LOOP循环
				AJMP	$;
		
		DELAY:	
				MOV R4,	#20;	  1us  12HZ 机器时间周期为1us
		DEL1:	
				MOV R6,	#100;  	  1us		T=(1+1+1+((250*2+2)*100+2)*20+2)=1004050us  1s
		DEL2:	
				MOV	R7,	#250;     1us
				DJNZ	R7,$;     2us   循环250次 该语句消耗2微秒,一个机器周期
				DJNZ	R6,DEL2;  2us   每次减1,不等于0则跳转,该语句即为从Del1到这句,循环100                
                                        次
				DJNZ	R4,DEL1;  2us   循环20次
				RETI           ;  2us
			
			END

 记得选中keil项目output的输出hex文件,导入Proteus的单片机即可:

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

选目标选项

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

勾选create hex file,然后编译

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

查看结果

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

成功,接下来去Proteus里面啦 

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

选中单片机元件编辑

51单片机流水灯汇编,AT89C51单片机综合作业仿真合集,proteus,单片机,嵌入式硬件,学习

找到hex文件位置,点ok即可

到Proteus运行仿真,即可看见灯亮啦! 

QQ录屏20230419203547文章来源地址https://www.toymoban.com/news/detail-745662.html

到了这里,关于[AT89C51 ]用汇编语言实现流水灯仿真(含keil与Proteus)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C51单片机开发心形灯流水灯(C语言)

    利用Keil uVision4编程程序,在Proteus 8 Professional中创建仿真电路 仿真电路 16进制样式花型 延迟函数 循环调用函数 led1() 是指操作P0端口, 以此类推,led4() 是调用四个输出端口,循环闪烁 C语言代码 仿真电路和代码 链接:https://pan.baidu.com/s/1vx33QiXO0uhXMq1ItUebNQ 提取码:5151

    2024年02月07日
    浏览(35)
  • 51单片机流水灯三种实现方法

    流水灯可以用三种方法实现 一.通过移位函数  _crol_()  和  _cror_() 二.位移实现流水灯 三.数组流水灯实现 首先说一下流水灯的原理 让0从左往右位移或者从右往左位移 从而实现流水灯依次点亮 电路图如下,使用软件是project 使用左移函数代码如下  ///运行结果是LED灯从上到

    2023年04月09日
    浏览(44)
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯

      前言:感谢您的关注哦,我会持续更新编程相关知识,愿您在这里有所收获。如果有任何问题,欢迎沟通交流!期待与您在学习编程的道路上共同进步。       目录 一.  延时函数的生成  1.通过延时计算器得到延时函数  2.可赋值改变的延时函数  二.  LED模块编写原理 

    2024年02月19日
    浏览(37)
  • C51单片机实现流水灯的三种编程方法

        初步学习51单片机,总是离不开流水灯。     下面介绍实现流水灯的三种方法。 目录 一、调用数组实现流水灯 二、 移位符实现流水灯 三、采用左右移函数实现流水灯 思路:for循环调用数组当中的进制数后赋值给LED小灯的负极。 移位符:         移位运算符在程序设

    2024年02月01日
    浏览(41)
  • 51单片机入门 - 详解定时器实现按键控制流水灯方向

    操作系统:Windows 10 x84-64 单片机:STC89C52RC 编译器:SDCC 烧录软件:stcgal 1.6 开发板:普中51单片机开发板A2套件(2022) 在 VS Code 中新建项目到烧录的过程: 左侧EIDE图标 - 新建项目 - 空项目 - 8位MCU项目 - 保存文件夹。 更改构建配置: SDCC ;更改烧录配置: stcgal 。 在项目文件

    2024年02月06日
    浏览(40)
  • 【51单片机入门】实现流水灯的原理及四种方法(详细易上手型)

    初学单片机,流水灯的实现是必不可少的,下面将介绍流水灯的原理及使用STC-ISP软件延时计算器生成的延时代码实现流水灯的四种方法,最后介绍如何将延时函数模块化。 目录  一、流水灯原理  二、循环 三、移位运算符 四、库函数 五、数组          六、延时函数模块

    2024年02月05日
    浏览(48)
  • 基于STC89C52RC设计的心形流水灯设计

    基于STC89C52RC设计的心形流水灯设计 一·硬件设计分析 1.1 主控电路 主控单片机选择为STC89C52RC的 LQFP-44(10x10)封装 注意: 使用51单片机需要注意,如果需要使用的单片机的P0口,则需要在P0的IO口上接上一个4.7K-10K左右的上拉电阻。   上拉电阻的作用: 给单片机的I/O口拉高电平

    2024年02月08日
    浏览(38)
  • 单片机Proteus软件仿真一(手把手教你实现LED流水灯)

    1 单片机8051系列 爬虫是不能发了,审核总是不通过,算了,发点其他的。 51单片机是对兼容英特尔8051指令系统的单片机的统称。51单片机广泛应用于家用电器、汽车、工业测控、通信设备中。因为51单片机的指令系统、内部结构相对简单,所以国内许多高校用其进行单片机入

    2024年02月01日
    浏览(39)
  • 【51单片机】:闪灯、流水灯(从左往右)、流水灯(从右往左)、蜂鸣器。

            言归正传,一切都回归本源,从51再来一次,首先就是最简单的点灯大师。         这么些年从51 到  32  再到  arduino  再到  ESP  等等,都是从点灯大师开始的。 于是介绍如下: 闪灯 流水灯(从左往右) 流水灯(从右往左) 蜂鸣器         LED灯的原理:LED是发

    2024年02月11日
    浏览(41)
  • 51单片机入门流水灯

    上次已经实现了LED的点亮了,这篇文章将带大家实现流水灯。 要想实现流水灯首先就得知道什么是延时函数,延时函数的作用就是等待。比如延时一毫秒就是让程序在这里等待一毫秒。延时函数的本质就是执行一些空指令,因为执行指令需要耗费时间,所以执行一定数量的空

    2024年02月04日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包