用C51汇编语言控制1234灯亮,51单片机:用汇编语言控制LED灯发光
硬件电路:
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灯发光相关推荐
- 基于51单片机的wifi智能led灯的毕业设计
基于51单片机的wifi智能led灯的毕业设计 摘要 系统基于STC89C52RC单片机设计,拥有自动与手动两种模式,自动模式下可以过热释红外传感器检测是否有人,采用光敏电阻构成的电路检测环境光的强度 ...
- 基于51单片机的智能无线LED灯控制 蓝牙手机APP控制灯亮灭亮度方案原理图设计
硬件电路的设计 (下方附文件) 系统的功能分析及体系结构设计 3.1.1系统功能分析 本设计由STC89C52单片机电路+8位LED灯电路+蓝牙模块电路+电源电路组成. 1.通过手机APP可以控制8路 ...
- 51单片机入门 第一篇:LED灯
文章目录 前言 一.LED原理图 二.创建keil5工程 三.代码的编写 四.程序的烧录 总结 前言 本篇文章讲正式带大家开始学习51单片机,希望这些文章能够很好的帮助到大家学习51单片机. 一.LE ...
- 基于51单片机小板的led灯全亮全灭
#include<reg51.h> //led灯在小板里用P0口 unsigned char i=5000;//定义一个短暂的延时 void main(){ P0=0x00; while( ...
- 51单片机入门学习篇-led灯、按键、数码管、中断
文章目录 前言 一.Proteus仿真 二.Keil代码编写 1.流水灯 2.来回点灯 3.按键操作 4.中断操作 5.数码管 6 动态数码管 三. 练习题 总结 前言 本文用来记录博主学习单片机的过 ...
- [51单片机学习笔记ONE]-----LED灯的多种使用方法
一.交替闪烁8个LED灯,时间间隔为1s 1 /****************************************************** 2 实验名称: 交替闪烁8个LED灯,时间 ...
- 51单片机通过蓝牙控制led小灯
51单片机通过蓝牙控制led小灯 本人第一次接触蓝牙模块,暂时从基础的地方做起. 目录@TOC 1.材料 2.接线 3.程序 4.展示结果 ** 材料 **:①hc-05蓝牙模块(淘宝上有很便宜),h ...
- 51单片机独立按键控制合集
实验一:当按键按下led灯亮,松开按键led灯熄灭: 实验二:当按键按下led灯常亮,再次按下按键led灯熄灭: 实验三:按键控制led以二进制形式显示: 实验四:按键控制led按位左移或右移: 实验 ...
- 用51单片机实现按键控制LED灯亮灭
用51单片机实现按键控制LED灯亮灭 #include<reg51.h>//头文件 sbit LED=P2^0;//位定义LED灯 sbit k1=P3^1;//位定义按键 void de ...
最新文章
- re.sub()用法详解
- Linux下的多线程编程
- 【Windows 逆向】使用 Cheat Engine 工具进行指针扫描挖掘关键数据内存真实地址 ( 指针扫描 )
- 三体系建设是什么意思_湖南信息系统建设和服务能力评估体系怎么做?是什么?...
- 动态规划-装配线调度
- 【Pytorch神经网络理论篇】 29 图卷积模型的缺陷+弥补方案
- python比较列表所有字符串_python – 将字符串与数组中的所有值进行比较
- iOS App图标和启动画面尺寸
- 【Vue】—解构插槽 Prop以及具名插槽的缩写
- 九种跨域方式的实现原理,第一个就超惊艳!| 技术头条
- php5.2、5.3和5.4,Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置
- c++ 指针与引用区别
- linux不解压情况下查看压缩包内文件的总行数、文件列表的数目
- 导入数据库sql 文件乱码
- 搭建内网文件共享服务器,如何搭建共享服务器实现办公室文件共享?
- Sublime Text 一键删除空白行的方法
- js中文汉字按拼音排序
- html中radio设置默认值
- 哈工大计算机学院官网哈工大软件工程专业,2019哈工大软件工程考研参考书目及复试线...
- 关于软考的备考心得体会
热门文章
- Linux:vi vim(待学)
- C# 尝试读取或写入受保护的内存,这通常指示其他内存已损坏。System.AccessViolationException
- OGG 打补丁操作指导手册
- 水果店的基本营销手段,水果店营销促销方案
- lin总线可以控制几个节点_LIN主从节点设计与实现
- Java包装类中valueOf() 方法
- pyecharts绘制K线图,并添加辅助线
- 凝聚共识,共话发展,“五真•黄十字”引领亚健康专业调理机构标准化建设再提速
- 周末的好时光用来做什么
- 使用马哈鱼SQLFlow分析聚合函数中的数据流列