Proteus绘制8086原理图以及编程实现流水灯
文章目录
一、问题所在以及解决方案
二、在刚开始的时候也出现过如下的报错情况
三、编程实现LED由上到下逐个递增点亮,每隔一段时间点亮下一只,但前面的不灭。
一、问题所在以及解决方案
在上一篇文章中提到的流水灯只亮不闪以及74372输出全是高电平问题,解决方案如下:
在绘制完最小系统原理图以及流水灯原理图之后,发现led灯只亮不闪,运行四个流水灯依次熄灭点亮的代码时也是如此;后与老师一起研究发现问题所在是前两块74273芯片的引脚输出都是红色高电平,说明信号没有传送入锁存器中;这可能是接的线路出了问题,但当天我与老师一起寻找许久却始终没有找到问题所在,无论是引脚的接线还是元器件和线路的标号,都没有出错的问题。这个问题也让我纠结了很久,课后也多次尝试,仍然无果;
最后再一次偶然上网搜索找到一个帖子说:连线都没有问题的话可以考虑可能是接线不稳定所导致的。虽然是仿真实验,但是我还是抱着试一试的心态,将连接标号为U6、U7的两块74273芯片的总线与子电路连线全都删除然后再重新连接,竟然十分意外地运行成功了。这虽然令我感到很无奈,但是也很惊喜和喜悦;算是圆满的完成看了一次实验。
这是绘制的8086最小系统图,个人建议:在原理图的连线没有发现问题时仍然无法运行成功,可以尝试将出错的那部分删除然后重新连线,舍友也出现了和我类似的情况,用这个方法成功了。
二、在刚开始的时候也出现过如下的报错情况
这是因为给8086芯片设置的内存不足导致,我们需要更改一下给8086设置的内存就可以了。
在原理图界面双击8086芯片,出现如下页面:
然后点击确认,这样就不会再出现刚刚那种报错的情况了。
三、编程实现LED由上到下逐个递增点亮,每隔一段时间点亮下一只,但前面的不灭。
;方法1 此方法比较简单好上手好懂,但是代码太过冗长,如果led数量再继续增加就更长了。
.MODEL SMALL
.8086
.STACK
.CODE
.STARTUP
AGAIN:MOV DX,0200H ;74ls273芯片对应的地址
MOV AX,1111111111111111B ;对应0电平的LED点亮
OUT DX,AX
CALL DELAY ;延时
MOV AX,1111111111111110B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111111111100B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111111111000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111111110000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111111100000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111111000000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111110000000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111100000000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111111000000000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111110000000000B;
OUT DX,AX
CALL DELAY;
MOV AX,1111100000000000B;;
OUT DX,AX
CALL DELAY;
MOV AX,1111000000000000B;;
OUT DX,AX
CALL DELAY;
MOV AX,1110000000000000B;;
OUT DX,AX
CALL DELAY;
MOV AX,1100000000000000B;;
OUT DX,AX
CALL DELAY;
MOV AX,1000000000000000B;;
OUT DX,AX
CALL DELAY;
MOV AX,000000000000000B;;
OUT DX,AX
CALL DELAY;
JMP AGAIN
DELAY PROC NEAR ;延时子程序
MOV BX,200LP1:MOV CX,469
LP2:LOOP LP2
DEC BX
JNZ LP1
RET
DELAY ENDP
.DATA
END
.
方法2:
.MODEL SMALL
.8086
.STACK
.CODE
.STARTUP
AGAIN:MOV DX,0200H ;74ls273芯片对应的地址
MOV AX,0FFFFH ;将FFFFH赋给AX,对应0电平的LED点亮。此时LED灯全灭。
MOV BL,0H ;清空BL中的数值
MOV CL,10H ;将10H赋给CX,表示循环次数为16次LOOP1:
MOV CL,BL ;将BL中的数值放入CL中
SAL AX,CL ;AX里的数逻辑左移,移动次数=CL中的数值
OUT DX,AXCALL DELAY ;延时INC BX ;BX+1——>BXDEC CX ;CX-1——>CX
JNZ LOOP1
DELAY PROC NEAR ;延时子程序
MOV BX,200
LP1:MOV CX,300
LP2:LOOP LP2
DEC BX
JNZ LP1
RET
DELAY ENDP
.DATA
END
.
Proteus绘制8086原理图以及编程实现流水灯相关推荐
- C语言编程双向流水灯,C语言编程--数组控制流水灯-2
原标题:C语言编程--数组控制流水灯-2 /*********************** ********************/ #include unsigned char code tabl ...
- protues 关于8086 驱动8255,8253实现流水灯同时发出不同频率的频率波
网上这方面资料感觉有点少 所以和同学一起做了这个 protues仿真 这个题目很多高校都应该用过类似的作为微机原理 或汇编的课设. 仿真元器件 8086.8253.8255.74LS373.74LS1 ...
- 节日流水灯c语言编程,流水灯C语言编程
这是流水灯C语言编程,针对单片机的仿真,可以在Keil或是在C++中实现编程. 流水灯C语言编程 #include #include #define LED_PORT1 P1 #define LED_ ...
- C51教程 第二个51程序: 跑马灯 流水灯
keil+proteus 第二个51程序 : 跑马灯 流水灯 这是一个AT89c51单片机教程,我们每次都会提供博文教程以及附带资料下载. 单片机就是一个小型CPU,在电子领域应用广泛,电视.冰箱.洗 ...
- 8盏流水灯反向闪烁c语言,课程设计(论文)_利用8255A芯片实现流水灯闪烁设计.doc...
课程设计(论文)_利用8255A芯片实现流水灯闪烁设计 利用8255A芯片实现流水灯闪烁设计 27 - 目录 摘要··········································· ...
- proteus7.7+Keil2仿真80C51控制流水灯
在今年夏天发布的关于8051的诸多博文中, 我都是用STC89C52RC实验箱来验证8051控制程序的正确性的. 这样做的好处是可以直接和真正的8051单片机打交道, 且能熟练掌握将.hex文件烧写到 ...
- 单片机c语言 流水灯 教案,单片机控制流水灯讲课教案.doc
单片机控制流水灯 前言 随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯不断变化闪烁.LED灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市 ...
- 51单片机流水灯控制(5种方法)
实现流程: 1. 新建一个工程(新项目)2. 查看原理图确定需求(流水灯)对应LED引脚在单片机上的哪个引脚3. 编写程序(通过查看原理图可以看到我们需要控制整个P2口以控制8个LED灯)4. 编译程 ...
- 用寄存器HAL库完成LED流水灯程序以及通过MDK5模拟示波器观察波形
文章目录 前言 一.相关寄存器配置介绍 1.相关寄存器配置介绍 二.使用寄存器点亮LED灯 1.工程模板的建立 2.配置GPIO端口 3.主要函数 4.编译生成HEX文件 5.电路搭建 三.STM32 ...
最新文章
- 【C++】cannot access private member declared in class 'Box'
- 北京师范大学网络教育期末考试计算机,北京师范大学网络教育———《计算机应用基础》第二章同步练习题(4)...
- Android开发八 “尚未注册网络”错误信息的解决办法
- 当我谈 HTTP 时,我谈些什么?
- 消除switch语句以获得更好的代码结构
- 【Java】异常处理体系概述
- 【带着canvas去流浪(15)】threejs fundamentals翻译系列1-scene graph
- 5375亿元的x86市场:戴尔946亿、HPE 682亿、浪潮517亿、联想345亿、华为256亿、思科218亿、新华三204亿
- elementui 表格英文加数字排序_解决vue elementUI中table里数字、字母、中文混合排序问题...
- 关于ajax post请求跨域问题的解决心得
- 什么样的对象会被直接放入老年代
- 锐捷长ping_锐捷 ping 网关通 ping 机器不通
- jboss下载(jboss安装与配置)
- DroidCam---将手机转为电脑外接摄像头的软件(提供下载链接)
- 程序员高手必会的十大编程算法
- 基于私钥生成jwt令牌
- matlab 龙格库塔求解隐式方程,Matlab龙格库塔求解方程组问题
- 你必须牢记的Win7快捷键
- 真是没有预料到,一款推送全国公考信息的app开发用了一年时间
- 分形几何python代码_Python, Cython绘制美妙绝伦的Mandelbrot集, 曼德博集分形图案
热门文章
- 初学者选琴|VEAZEN费森VZ90和雅马哈FG800对比,看看哪一款更适合入门?
- 一直以为对性能调优十分了解,直到阿里大牛到来,才知道菜是原罪
- 着色器(Shader)之顶点着色器
- 又是一年春风来:Maggot++成功摆脱Fantis版权!并成功获取自更新模式!
- 两个手机进行蓝牙通信项目制作
- 学习时间管理,就要我们吃青蛙!这是什么梗?
- HP 3PAR 8440存储更换故障硬盘
- Node.js:Expected linebreaks to be 'CRLF' but found 'LF'. (linebreak-style)
- WebCruiser全版本注册机下载
- C语言训练-阶乘和数