硬件电路:

P1.0 ~ P1.5 外接 6 个 LED,分别称为 D1 ~ D6,低电平发光。

P0.0 ~ P0.3 外接 4 个 按键,分别称为 K1 ~ K4。

P3.2 ~ P3.3 外接 2 个 按键,分别称为 K5 ~ K6。

用汇编语言编程进行控制,要求:

当按下 K1 时,D1 发光;

按下 K2 时,D2、D3 发光;

按下 K3 时,D4、D5、D6 发光;

按下 K4 时,D1、D3、D6 发光;

按下 K5 时,全部熄灭;

按下 K6 时,全亮。

用查询方式完成上述动作。

做而论道编写的程序如下:

2013-04-19 23:06

ORG   0000H

START:

JNB   P0.0, K1

JNB   P0.1, K2

JNB   P0.2, K3

JNB   P0.3, K4

JNB   P3.2, K5

JNB   P3.3, K6

SJMP  START

;-----------------------

K1:

CALL  DL10MS

JB    P0.0, START

JNB   P0.0, $

CLR   P1.0     ;按下K1键时,D1二极管发光;

SJMP  START

;-----------------------

K2:

CALL  DL10MS

JB    P0.1, START

JNB   P0.1, $

CLR   P1.1     ;按下K2键时,D2、D3发光;

CLR   P1.2

SJMP  START

;-----------------------

K3:

CALL  DL10MS

JB    P0.2, START

JNB   P0.2, $

CLR   P1.3     ;按下K3键时,D4、D5、D6发光;

CLR   P1.4

CLR   P1.5

SJMP  START

;-----------------------

K4:

CALL  DL10MS

JB    P0.3, START

JNB   P0.3, $

CLR   P1.0     ;按下K4键时,D1、D3、D6发光。

CLR   P1.4

CLR   P1.5

SJMP  START

;-----------------------

K5:

CALL  DL10MS

JB    P3.2, START

JNB   P3.2, $

MOV   P1, #255 ;按下K5是全部熄灭;

SJMP  START

;-----------------------

K6:

CALL  DL10MS

JB    P3.3, START

JNB   P3.3, $

MOV   P1, #0   ;按下K6是全亮;

SJMP  START

;-----------------------

DL10MS:

MOV   R6, #10

DJNZ  R7, $

DJNZ  R7, $

DJNZ  R6, $ - 4

RET

;-----------------------

END

用C51汇编语言控制1234灯亮,51单片机:用汇编语言控制LED灯发光相关推荐

  1. 基于51单片机的wifi智能led灯的毕业设计

    基于51单片机的wifi智能led灯的毕业设计 摘要 系统基于STC89C52RC单片机设计,拥有自动与手动两种模式,自动模式下可以过热释红外传感器检测是否有人,采用光敏电阻构成的电路检测环境光的强度 ...

  2. 基于51单片机的智能无线LED灯控制 蓝牙手机APP控制灯亮灭亮度方案原理图设计

    硬件电路的设计 (下方附文件) 系统的功能分析及体系结构设计 3.1.1系统功能分析 本设计由STC89C52单片机电路+8位LED灯电路+蓝牙模块电路+电源电路组成. 1.通过手机APP可以控制8路 ...

  3. 51单片机入门 第一篇:LED灯

    文章目录 前言 一.LED原理图 二.创建keil5工程 三.代码的编写 四.程序的烧录 总结 前言 本篇文章讲正式带大家开始学习51单片机,希望这些文章能够很好的帮助到大家学习51单片机. 一.LE ...

  4. 基于51单片机小板的led灯全亮全灭

    #include<reg51.h> //led灯在小板里用P0口 unsigned char i=5000;//定义一个短暂的延时 void main(){ P0=0x00; while( ...

  5. 51单片机入门学习篇-led灯、按键、数码管、中断

    文章目录 前言 一.Proteus仿真 二.Keil代码编写 1.流水灯 2.来回点灯 3.按键操作 4.中断操作 5.数码管 6 动态数码管 三. 练习题 总结 前言 本文用来记录博主学习单片机的过 ...

  6. [51单片机学习笔记ONE]-----LED灯的多种使用方法

    一.交替闪烁8个LED灯,时间间隔为1s 1 /****************************************************** 2 实验名称: 交替闪烁8个LED灯,时间 ...

  7. 51单片机通过蓝牙控制led小灯

    51单片机通过蓝牙控制led小灯 本人第一次接触蓝牙模块,暂时从基础的地方做起. 目录@TOC 1.材料 2.接线 3.程序 4.展示结果 ** 材料 **:①hc-05蓝牙模块(淘宝上有很便宜),h ...

  8. 51单片机独立按键控制合集

    实验一:当按键按下led灯亮,松开按键led灯熄灭: 实验二:当按键按下led灯常亮,再次按下按键led灯熄灭: 实验三:按键控制led以二进制形式显示: 实验四:按键控制led按位左移或右移: 实验 ...

  9. 用51单片机实现按键控制LED灯亮灭

    用51单片机实现按键控制LED灯亮灭 #include<reg51.h>//头文件 sbit LED=P2^0;//位定义LED灯 sbit k1=P3^1;//位定义按键 void de ...

最新文章

  1. re.sub()用法详解
  2. Linux下的多线程编程
  3. 【Windows 逆向】使用 Cheat Engine 工具进行指针扫描挖掘关键数据内存真实地址 ( 指针扫描 )
  4. 三体系建设是什么意思_湖南信息系统建设和服务能力评估体系怎么做?是什么?...
  5. 动态规划-装配线调度
  6. 【Pytorch神经网络理论篇】 29 图卷积模型的缺陷+弥补方案
  7. python比较列表所有字符串_python – 将字符串与数组中的所有值进行比较
  8. iOS App图标和启动画面尺寸
  9. 【Vue】—解构插槽 Prop以及具名插槽的缩写
  10. 九种跨域方式的实现原理,第一个就超惊艳!| 技术头条
  11. php5.2、5.3和5.4,Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置
  12. c++ 指针与引用区别
  13. linux不解压情况下查看压缩包内文件的总行数、文件列表的数目
  14. 导入数据库sql 文件乱码
  15. 搭建内网文件共享服务器,如何搭建共享服务器实现办公室文件共享?
  16. Sublime Text 一键删除空白行的方法
  17. js中文汉字按拼音排序
  18. html中radio设置默认值
  19. 哈工大计算机学院官网哈工大软件工程专业,2019哈工大软件工程考研参考书目及复试线...
  20. 关于软考的备考心得体会

热门文章

  1. Linux:vi vim(待学)
  2. C# 尝试读取或写入受保护的内存,这通常指示其他内存已损坏。System.AccessViolationException
  3. OGG 打补丁操作指导手册
  4. 水果店的基本营销手段,水果店营销促销方案
  5. lin总线可以控制几个节点_LIN主从节点设计与实现
  6. Java包装类中valueOf() 方法
  7. pyecharts绘制K线图,并添加辅助线
  8. 凝聚共识,共话发展,“五真•黄十字”引领亚健康专业调理机构标准化建设再提速
  9. 周末的好时光用来做什么
  10. 使用马哈鱼SQLFlow分析聚合函数中的数据流列