单片机编程:1.正常情况下,8个LED以较慢的速度闪烁,间隔时间为500ms。

作者&投稿:书夜 (若有异议请与网页底部的电邮联系)
单片机第一个led灯间隔500ms闪烁的程序~

用C语言比较简单
sbit LED1=P1^0;
while(1)
{
LED1=0;
delay_ms(500);
LED1=1;
delay_ms(500);
}
延时子程序随便找一个,延时时间不要求很准

#include
#include
void delay(unsigned int z );
void main()
{
unsigned int a;
unsigned char b=0xfe;
for(a=0;a<8;a++)
{
P1=b;//P1口接8个LED灯
delay(200);
b=_crol_ (b,1);
}
}
void delay(unsigned int z)
{
unsigned int i;
for(;z>0;z--) //延迟时间自己算吧
for(i=110;i>0;i--);
}
用汇编写这个容易点
main: mov a,#0feh
mov r0,#8
loop: mov p1,a
acall delay
rl a
djnz r0,loop
delay:mov r6,#0ffh
loop1: mov r7,#01h
djnz r7,$
djnz r6,loop1
ret
end
好像是这样,延迟时间可能不太准,也是P1口接8个LED灯

我只能给你思路了。
1.显示用闪烁用定时器0。
2.定时器的初始值要设置成变量。
3.在中断内使定时器初始值改变,
4.中断同时使定时器1工作,输出1000Hz的方波。
5.用一个引脚做按键,检测到此键有效,使定时器1停止工作,同时改变定时器0的初始值。
祝你成功。

ORG 0000H
JMP MAIN
ORG 0030H

;************************************************
MAIN:
MOV A,#0FEH ;赋初始值
LOOP:
MOV R0,#07H ;移动次数
LOOPL:
MOV P0,A ;A中的值送P0口
MOV P2,A ;A中的值送P2口
RL A ;左移
CALL DELAY;调用延时
DJNZ R0,LOOPL

MOV R0,#07H ;移动次数
LOOPR:
MOV P0,A
MOV P2,A
RR A ;右移
CALL DELAY
DJNZ R0,LOOPR
JMP LOOP

;************************************************
DELAY:
MOV R6,#0FFH
DEL:
MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,DEL
RET

;************************************************
END


芯片(单片机)是怎么认识程序转化来的二进制,0是低电平,1是高电平使...
手机不再是单纯的手机,它是有情感的智能机器人,而它的芯片被别人控制,我们不仅仅要学会和人相处,更要学会和手机处理好关系,它一不高兴,就有办法给我们设置阻碍,天下之大,能人倍出,望老天爷快速研究出新的东西来智胜它吧,不想被手机控制,望转发!保护自己自己的隐私是每个公民的权利!

《单片机C语言程序设计实训100例——基于8051+Proteus仿真》 第03...
实例54-1:输出负脉宽为200微秒的方波 实例54-2:测量负脉冲宽度 实例55:方式0控制流水灯循环点亮 实例56-1:数据发送程序 实例56-2:数据接收程序 实例57-1:数据发送程序 实例57-2:数据接收程序 实例58:单片机向PC发送数据 实例59:单片机接收PC发出的数据 数码管显示*数码管显示 数码管显示数...

刚买了一块单片机学习板怎样检测他的好坏?
一般开发板都会带一个综合测试程序,把这个例程烧进去,观察是否工作正常即可检测是不好坏。 单片机开发板是用于学习51型号的单片机实验设备。片机技术自发展以来已走过了近20年的发展路程 。单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的...

未来smt贴片机的操作步骤
在线编程是在贴片机上人工输入拾片和贴片程序的过程。拾片程序完全由人工编制并输入,贴片程序是通过教学摄像机对PCB上每个贴片元器件贴装位置的精确摄像,自动计算元器件中心坐标(贴装位置),并记录到贴片程序表中,然后通过人工优化而成。 4.安装供料器 (1)按照离线编程或在线编程编制的拾片程序表,...

诊断卡代码显示01
04 使8042键盘控制器复位,核实TESTKBRD。 键盘控制器软复位/通电测试。 可编程间隔计时器的测试正在进行或失灵。05 如果不断重复制造测试1至5,可获得8042控制状态。 已确定软复位/通电;即将启动ROM。 DMA初如准备正在进行或者失灵。06 使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除...

黑胶片机常见故障处理方法 胶片常见问题及其可能原因
1、故障一:在胶片发排过程中,UPS电源突然出故障导致照排系统非正常关机,重新启动系统,照排机仍持续报警状态,提示138错误。解决方法:打开Primesetter软件,进入Configurationmenu中的Operatingmode选项,选择R&D mode模式,输入密码后,进入Parameteredit界面。在查询框中输入punch,将出现的 usepunch参数...

摄影120 传统胶片机 装卷问题
海鸥120,值钱的古董机。都忘记怎么操作了 凭记忆和用别的120机的知识回答:1、正常,是要多卷的,但海鸥卷多少忘了。要看红窗的。2、无暗盒所有你会觉得松松垮垮。没问题

主板检测卡显示01是什么意思???急???本人急要啊???
可编程间隔计时器的测试正在进行或失灵。 05 如果不断重复制造测试1至5,可获得8042控制状态。 已确定软复位\/通电;即将启动ROM。 DMA初如准备正在进行或者失灵。 06 使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。 已启动ROM计算ROM BIOS检查总和,以及检查键盘...

小型压片机小型压片机常见的故障
小型压片机在使用过程中可能会遇到多种故障,这些故障包括但不限于以下情况:1. 顶车上冲“顶死”:原因:压力过大,药片过硬;重复加料;偏心轮壳磨损或缺油。预防与处理:调整压力渐进,避免药片过硬;避免重复加料;保持润滑,磨损严重需拆修;调整皮带和启动位置。2. 运转不灵:检查润滑和清洁,机...

如何使用烤面包片机
1. 首先要将烤面包片机放在一个平整、干净、固定的表面使用。2. 接通电源,按下"开关"功能键,将"面包颜色控制器"置于"3-4"档,约120S后烘烤完毕,即可食用。3. 在选择完烘烤程度后,将面包放入槽口,按下"开关"功能键,可使用任何一个槽口烤一片面包。4. 一旦达到所选的烘烤程度后,面包会...

历城区18014969524: 单片机编程:1.正常情况下,8个LED以较慢的速度闪烁,间隔时间为500ms. -
爨倪舒而: 我只能给你思路了. 1.显示用闪烁用定时器0. 2.定时器的初始值要设置成变量. 3.在中断内使定时器初始值改变, 4.中断同时使定时器1工作,输出1000Hz的方波. 5.用一个引脚做按键,检测到此键有效,使定时器1停止工作,同时改变定时器0的初始值. 祝你成功.

历城区18014969524: 使用C51单片机编程:无中断时8个LED全亮,当相应外部中断0时,8个LED依次从左往右移动并重复三次 -
爨倪舒而: #include void delay_ms(unsigned int x) //误差 0us { unsigned char a,b,c; for(c=x;c>0;c--) for(b=142;b>0;b--) for(a=2;a>0;a--); } void main(void) { ET0=1;//外部中断0、1下降沿中断 ET1=1; EX0=1; EX1=1; EA=1; while(1) P0=0xFF; // P1的8个LED,...

历城区18014969524: 若51单片机P1口接了8个LED,编写程序完成跑马灯程序要求大约1秒变化一次 -
爨倪舒而: //假设晶振12MHZ,P1控制8个LED低电平亮 #include "reg51.h" unsigned int YSJS=0; signed char LED=0XFE; void main(void) {TMOD |= 0X10; //定时器1工作于方式1,16位定时器TH1 = 0XFE; //定时器1定时时间=500uSTL1 = 0X0C;ET1 ...

历城区18014969524: 单片机编程,用一个开关控制8个灯轮流亮,再用一个开关控制两个灯一起亮一起灭 -
爨倪舒而: 简单的啊.思路:8个LED接在一个口,如P1口.再将另外两个LED接在另外某个口(如P2)的两个引脚.然后将两个按键分别接在空闲的口的两个引脚. 按下一个按键,使8个LED的输出状态变化,0xFE循环移位实现,LED低电平亮.另外的按键按下,两个LED状态翻转.

历城区18014969524: C51单片机编程 求按下1次按键 8盏LED灯全亮源程序 -
爨倪舒而: #include "reg51.h"sbit key=P1^1;//按键IO,按下低电平 void main() {while(key);//等待按键按下P2=0;//8个LED接在P2口的8个IO上,低电平点亮}

历城区18014969524: 51单片机中,如何编程使其按下第一个开关数显显示0(或1)...按下第8个开关数显显示7(或8)... -
爨倪舒而: 程序如下:ORG 0000H ;----------------------------------------- START:MOV A, P1 ;读入8个按键.MOV B, ACPL AJZ STARTMOV R6, #8CALL DL_R6_MS ;延时消抖.MOV A, P1 ;读入8个按键.CJNE A, B, START ;-------------------------------------...

历城区18014969524: 单片机汇编语言8只数码管显示1 - 8 -
爨倪舒而: 1、 数码管显示演示程序: 在8个LED数码管上依次显示1,2,3,4,5,6,7,8.引用端口:数码管数据p0,数码管控制p2;DIS_DIGIT EQU 40H;位选通值, 传送到P2口用于选通当前数码管的数值,; ...

历城区18014969524: 求一个8位正整数i各位是多少,有啥高招???(c51编程)
爨倪舒而: 8位单片机处理这样运算,有点困难的,它的运算能力是每次计算8位

历城区18014969524: 单片机编程:8个LED灯同亮或者同灭,每中断一次,变反一次~编出程序~~~ -
爨倪舒而: /*************************************************************************************************** *** 功能:开发板8个发光管一起闪动 *** 实验内容:输出底电平可以点亮RD口的发光管 高电平可以关掉发光管 *** 开发板连接方法:装上J2. ********************...

历城区18014969524: 用单片机编程 -
爨倪舒而: 1234567891011121314151617181920 MAIN:MOV R1,#30H;内部ram首地址30h MOV R7,#8;存放个数 MOV A,R0;取r0的值 NEXT_BIT_L: RLC A;将值移位到C,然后判断C的值进行转换 JC BITEQU1 BITEQU0:MOV A,#30H ;0的ASCII码 MOV @R1,AAJMP NEXT_BIT BITEQU1: MOV A,#31H ;1的ASCII码 MOV @R1,A NEXT_BIT: INC R1 DJNZ R7,NEXT_BIT_L AJMP $ END 以上代码就可以把r0中8位二进制数位用ascii码表示

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网