使用AT89S51单片机,在原有的基础改动,将LED灯亮4s熄2s。谢谢。用定时器。
(程序写在答案中,此处略 ――做而论道注)
原来的程序(局部)如下:
LOOP:
MOV R0, #0AH ;R0=10
CJNE R0, #00H, $ ;比较R0是否为0,原地转移
;R0在中断程序中,100ms减1次1。
;1s钟后,将为0。
CPL LED ;取反,LED亮灭
JMP LOOP
经过分析可以看出,楼主给出的程序是实现LED灯亮1s熄1s的。
按照题目要求,修改后的程序如下:
;----------------------
LED BIT P1.0
ORG 0000H
LJMP START
ORG 000BH
LJMP T0_INT
ORG 0030H
;----------------------
START: ;初始化
MOV SP, #60H
MOV TMOD, #01H ;定时器0方式1定时
MOV TH0, #03CH ;50ms@12MHz
MOV TL0, #0B0H
SETB TR0
SETB ET0
SETB EA ;开中断,完成初始化
;----------------------
LOOP: ;主循环
MOV R0, #40 ;R0 = 40
CJNE R0, #0, $ ;中断40次(即2s),R0才为0
CLR LED ;LED发光
;
MOV R0, #80
CJNE R0, #0, $ ;中断80次,R0才为0
SETB LED ;LED熄灭
LJMP LOOP ;转回去
;----------------------
T0_INT: ;T0的中断程序,100ms执行一次
MOV TL0, #0B0H
MOV TH0, #03CH ;50ms@12MHz
DEC R0 ;R0减一
RETI
;----------------------
END
;---------------------------------------------------
关键字:AT89S51 单片机 LED灯
引用地址:
使用AT89S51单片机,将LED灯亮4s熄2s
推荐阅读最新更新时间:2024-03-16 16:02
PIC16C72A单片机在汽车智能仪表中的应用
1 设计思想 汽车仪表是司机与汽车之间进行信息交流的窗口和界面,对于提高汽车仪表使用寿命、安全和经济行驶有着积极而重要的作用。本设计采用PIC16C72A单片微型计算机作为仪表的核心,汽车原有传感器无需更换,传感器的输出信号通过信号调理电路后送人CPU,经CPU处理后的信号采用时分技术通过VFD显示器显示出来。实时显示车速、发动机转速、水温、油位、总里程、子里程等车况参数,并对信息进行复杂处理从而为司机提供平均车速、经济油耗、剩余油量能跑里程数等有用信息,同时,还能对瞬时行车信息进行记录存储,实现“黑匣子”功能;对异常情况实现语音报警提示,且为今后功能扩展预留通讯接口。与传统汽车仪表相比,该仪表具有功能丰富、可靠性高、精
[单片机]
单片机校验和
【例子】通过校验和的方式实现数据传输与控制,例如控制LED灯、蜂鸣器、发送数据到上位机。 由于是数据传输与控制,需要定制一个结构体、共用体方便数据识别,同时增强可读性。从数据帧格式定义中可以定义为“PKT_SUM_EX”类型。 识别数据请求什么操作可以通过以下手段来识别:识别数据头部1、数据头部2,操作码。当完全接收数据完毕后通过校验该数据得出的校验值与该数据的尾部的校验值是否匹配。 若匹配,则根据操作码的请求进行操作;若不匹配则丢弃当前数据帧,等待下一个数据帧的到来。 结构体定义: /*使用结构体对数据包进行封装 *方便操作数据 */ typedef struct _PKT_SUM { UINT8 m_
[单片机]
经典MCU探究:MSP430关键硬件电路设计要诀
众所周知,MSP430以其超低功耗而著称。但是很多用户反应,在实际应用中,测量MSP430的功耗时,测量结果和MSP430数据手册相差甚远。其实这里主要涉及到两方面的内容: 1. 如何使用MSP430合理的设计硬件和软件,使整个应用最大限度的达到低功耗? 2. 如何测量MSP430的功耗? 就如何测量MSP430功耗,我来分享一下我个人的经验。 一、未使用的GPIO的处理 为了使MSP430最大限度的达到低功耗,对于MSP430未使用的GPIO而言,应该将其设置为输出;或者是设置为输入,但是将管脚的电平固定,可以通过外部电路将管脚连接至Vcc或者GND,也可使能内部上下拉电阻,将管脚电平固定。
[单片机]
基于51单片机的多普勒血流计系统方案
激光多普勒血流计是微循环研究中用于测定组织、微区血流灌注流量、微循环状态的仪器。利用多普勒移动分量来测定血细胞流量,是一种非损伤、快速、连续、直接测量组织微区灌流量的新方法,对医学研究有重要意义。本文主要介绍了利用多普勒现象设计的激光多普勒血流计,论述了用51单片机实现的新方法和新措施。 多普勒血流计的出现标志着在微血管灌流方面取得重大进步。本设计采取双通道装置拾取多普勒信号,有效地抑制噪声信号,采用单片机来对信号进行控制及处理,既简化了电路,又有助于信号的处理及读取。运用12位的AD574A不但提高了信号精度,利用其双极性,也省去了以往信号处理中复杂的乘方、开方电路或绝对值电路。通过四位LED显示,直观、准确地读取血细胞灌流量的
[单片机]
51单片机STC89C52控制LED闪烁(使用for语句实现延时)
/*-----------------------包含头文件区域-------------------------*/ #include reg52.h //单片机头文件 /*-----------------------端口/引脚定义区域----------------------*/ sbit LED=P2^0; //位定义P2.0引脚名为LED /*-----------------------主函数区域-----------------------------*/ void main() { unsigned int i; //定义无符号整形变量i(范围为0~65535) while(1)
[单片机]
51单片机C语言程序(五) 时钟程序(用定时器)
#include reg52.h #define uchar unsigned char #define uint unsigned int sbit dula=P2^6; sbit wela=P2^7; sbit rs=P3^5; sbit lcden=P3^4; sbit s1=P3^0; sbit s2=P3^1; sbit s3=P3^2; sbit rd=P3^7; uchar count,s1num; char miao,shi,fen; uchar code table = 2009-7-13 MON ; uchar code table1 = 00:00:00 ; void delay(uint z) {
[单片机]
单片机mcs-51系列指令快速记忆法
随着微电子技术 和超大规模 集成电路 技术的发展,单片微型 计算机 以其体积小、 性价比高 、功能强、可靠性高等独有的特点,在各个领域(如 工业 控制、家电产品、 汽车电子 、通信、智能 仪器仪表 )得到了广泛的 应用 。学习、使用 单片机 的人越来越多,而生产 单片机 的厂家很多, 单片机 种类繁杂,不知如何选择。据统计,八位 单片机 占全球 单片机 销量的65%。在八位 单片机 中,Intel公司的8051 单片机 内核已成为8位 单片机 事实上的标准。因此,对初学者而言,选择8051 单片机 来学习不失为明智的选择。 学习 单片机 ,除了搞清 单片机 内部功能、存储空间分配及I/O接口外,还应掌握其指令系统。MCS-5
[单片机]
使用电容器降低MCU的电源噪声
STM32是广泛应用的MCU,涵盖Cortex-M0、M3、M4和M7内核,共有1236多个系列,包含STM32主流MCU、STM32高性能MCU、STM32超低功耗MCU、STM32无线MCU、STM32 Arm Cortex MPUs等门类。 STM32 MCU内置高级12位ADC(取决于器件),提供自校准功能。在涉及模数转换的应用中,ADC精度会影响整体的系统质量和效率。而ADC精度不仅取决于ADC性能和功能,还取决于ADC周围的整体应用设计,例如电源噪声,这些恰恰可以能通过电容器过滤掉。 在电源线和地线之间,建议连接具有优良高频特性的电容。也就是说,应在靠近电源的位置安装一个0.1μF和一个1至10μF的电容,这些
[单片机]