导航:首页 > 操作系统 > 32位单片机点亮led的程序

32位单片机点亮led的程序

发布时间:2023-06-10 20:54:26

A. 用stm32单片机编写一个程序,一个灯一直亮,另一个亮两秒,灭两秒

#include<reg52.h>
unsigned int num;
sbit led1=P3^1;
sbit led2=P3^2;
void main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256
EA=1;
ET0=1;
TR0=1;
while(1)
{
led1=0;
while(1);

}

void T0_time() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
num++;
if(num==40)
{
num=0;
led2=~led2;

}

}

B. 单片机的点亮一盏灯程序

MAIN: MOV P1,#11111110B;点亮P1.0所接的灯
ACALL YS ;调用延时子程序,让P1.0所接的灯亮一小段时间
MOV P1,#11111101B;点亮P1.1所接的灯
ACALL YS ;调用延时子程序,让P1.1所接的灯亮一小段时间
MOV P1,#11111011B;点亮P1.2所接的灯
ACALL YS ;调用延时子程序,让P1.2所接的灯亮一小段时间
MOV P1,#11110111B;点亮P1.3所接的灯
ACALL YS ;调用延时子程序,让P1.3所接的灯亮一小段时间
MOV P1,#11101111B;点亮P1.4所接的灯
ACALL YS ;调用延时子程序,让P1.4所接的灯亮一小段时间
MOV P1,#11011111B;点亮P1.5所接的灯
ACALL YS ;调用延时子程序,让P1.5所接的灯亮一小段时间
MOV P1,#10111111B;点亮P1.6所接的灯
ACALL YS ;调用延时子程序,让P1.6所接的灯亮一小段时间
MOV P1,#01111111B;点亮P1.7所接的灯 ACALL YS ;调用延时子程序,让P1.7所接的灯亮一小段时间
LJMP MAIN ;循环.这回用长调用指令LJMP,当程序比较长的时候就用
LJMP YS: ;延时子程序YS,功能是能让LED亮起来或者灭掉一小段时间
MOV R1,#200 ;让灯亮灭时间的长短也就是延时的长短跟#号后面的数据有关
D: MOV R2,#200 ;延时长点#号后面的数据就大点,延时短点#号后面的数据
T: MOV R3,#200 ;就小点,但#号后面最大的数据是255
DJNZ R3,$
DJNZ R2,T

DJNZ R1,D
RET ;子程序返回指令,子程序的设计一般都是因为主程序要调用它, ;调用完是要返回到主程序继续运行下一个语句的
END

C. 单片机间隔点亮一led灯的C语言程序

以下是一个单片机间隔点亮一LED灯的C语言程序,以8051单片机为例:
c
Copy code
#include
//包含了AT89C51的寄存器定义
void delay(unsigned int xms) //延时函数,xms为要延时的毫秒数
{
unsigned int i,j;
for(i=xms;i>0;i--)
for(j=112;j>0;j--);
}
void main()
{
P1=0x00; //将P1口全部置为0,防止其它引脚影响
while(1)
{
P1=0xff; //点亮P1口第0个引脚上的LED灯友念行,0xff为二进制的11111111
delay(1000); //延时1秒
P1=0x00; //将P1口全部置好哗为0,熄灭LED灯
delay(1000); //延时1秒
}
}
上述程序的作用是在单片机的P1口上间隔高迟点亮一盏LED灯,每隔1秒钟灯的状态会发生一次变化,即由点亮状态变为熄灭状态,再由熄灭状态变为点亮状态。

D. 求教如何用单片机控制LED灯的亮度

求教如何用单片机控制LED灯的亮度

控制ked亮度不难,你硬件直接连连接好led灯,串个限流电阻。如果引脚一直给电平那么灯肯定最亮,那你如果改变给灯的时间灯就能调亮度了,如你用定时器或者延时多少个时间引脚电平取反一次。例如每间隔1毫秒电平取反一次就可以改变亮度。那你在用个变量值来给这个时间赋值。就能调亮度了啊,比如你接个电位器电位器值改变你程序你就让定时器时间也相应跟着变动

如何用单片机控制LED灯的亮度,不要PWM波的程序

程序名称:一只按键控制两只LED灯十种亮度显示
编程人:xx
备注:此程序简单
#include<stc12c2052ad.h>
*** it d1=P1^7;、、 定义LED灯1
*** it d2=P1^6; 定义LED灯2
*** it key1=P3^0; 定义按键灯
void delay(unsigned int a){ 延时程序
unsigned int i;
while( a-- != 0){
for(i = 0; i < 100; i++);
}
}
void main(){
while(1){
unsigned int a,b,c,d;
if(key1==0)d++; 按键判断
switch(d) 按键信息比较
{
case 1: b=9;;a=1;break;
case 2: b=8;;a=2;break;
case 3: b=7;;a=3;break;
case 4: b=6;;a=4;break;
case 5: b=5;;a=5;break;
case 6: b=4;;a=6;break;
case 7: b=3;;a=7;break;
case 8: b=2;;a=8;break;
case 9: b=1;;a=9;break;
}
while(key1==0); 判判断按键是否松开
if(d==10)d=0; 按键9种亮度判断,是否是第9种,如果是,则d=0
for(c=0;c<2;c++){ 亮度模式循环显示
d1=0;
d2=1;
delay(a);
d1=1;
d2=0;
delay(b);
}
}
}
、2010.10.05 20;06修改
此程序是我写的简单程序,已做过实验,并且通过!

如何用PIC单片机的PWM功能来控制LED的亮度?

用pic的脉宽调制功能就可以了,只需要给单片机不同的占空比的值,单片机就可以产生不同占空比的信号,将这个信号用三极管放大驱动LED就行了。还有什么问题可以给我留言

第一,要理解中断在这里的作用是固定的“一小段”时间进入一次。 第二,PWM_ON在程序中的作用很大,它会由0------>CYCLE------>0并且一直循环下去。可以把它看成一个有规律的变化的量。 第三,每进入中断一次count++,满足条件count==PWM_ON或coun..

如何用单片机点亮LED灯

接好单片机的硬件电路,然后编写程序,再然后烧写程序,然后就可以程序了,没问题的话就可以按你的要求点亮了

如何利用AT89S51单片机控制一个LED灯的亮度

# include<reg51.h>
void delay(unsigned int j)
{
unsigned int i;
for (;j>0;j--)
{
for(i=0;i<1000;i++)
;
}
}
void main()
{
while(1)
{
P1^0=0;
delay(100);
P1^0=1;
delay(100);具体数值根据你单片机晶振频率而定
}
}
原理是PWM波占空比不同,其功率亦不同,只要PWM频率很大,人眼分辨不出其闪烁,就可通过控制占空比(高电平时间和周期之比)的大小来控制其亮度。

怎样用单片机控制大功率led灯珠亮度?

才用PWM调制
LED灯不好控制亮度,在电流变化较大的范围中,亮度变化不明显
如果是电灯泡还可以的

如何用arino声音控制器 控制LED灯的亮度 求!

控制LED灯的亮度 这个其实有难度的, 先练习声音控制开关灯,成功后再考虑控制亮度
LED亮度是通过的电流决定的,控制亮度其实就是控制电流.这一点至今没办法做到便宜又简单.
当然,也有种简易的办法是PWM控制亮关比,优点是容易,缺点是闪烁.
还有就是目前灯亮度有几种控制方式,连续变化的贵,高中低分档位的便宜些.

如何用单片机控制16盏流水灯?

void main()
{
unsigned int temp,i;
temp=1;
while(1)
{
P1=temp&0x00ff; 取temp低8位
P2=(temp&0xff00)>>8; 取temp高8位
for(i=0;i<65535;i++)
{} 延时
if(temp!=0x8000)
temp<<=1; temp左移一位
else temp=1;
}
}

如何用单片机控制马达

如果不需要控制转速,一个三极管一个继电器就可以控制马达了。

E. 求89C51单片机32个LED循环亮的汇编程序

ORG0000H

AJMPMAIN

ORG0030H

MAIN:MOVR0,#8

MOVA,#0FEH

P_0:MOVP0,A

ACALLDLY200

RLA

DJNZR0,P_0

MOVP0,#0FFH

MOVR0,#8

MOVA,#0FEH

P_1:MOVP1,A

ACALLDLY200

RLA

DJNZR0,P_1

MOVP1,#0FFH

MOVR0,#8

MOVA,#0FEH

P_2:MOVP2,A

ACALLDLY200

RLA

DJNZR0,P_2

MOVP2,#0FFH

MOVR0,#8

MOVA,#0FEH

P_3:MOVP3,A

ACALLDLY200

RLA

DJNZR0,P_3

MOVP3,#0FFH

MOVR0,#8

AJMPMAIN

DLY200:;延时200us,误差0us

MOVR7,#04H

DL1:

MOVR6,#74H

DL0:

MOVR5,#0D6H

DJNZR5,$

DJNZR6,DL0

DJNZR7,DL1

NOP

RET

F. 单片机点亮一盏led灯代码

用MCS51单片机汇编语言编写的点亮一只LED灯源程序LED1.ASM,代码如下:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:MOV A,#FEH
MOV P1,A
AJMP $
END

阅读全文

与32位单片机点亮led的程序相关的资料

热点内容
股市操练大全八册pdf 浏览:118
c传递指针到python 浏览:163
手动添加引导的命令 浏览:54
740服务器小蓝条是做什么的 浏览:523
linux文件操作命令 浏览:127
安卓手机图片文件夹加锁 浏览:781
steam提示音在哪个文件夹 浏览:339
项目开发全程实录pdf 浏览:532
单片机reset 浏览:597
pdf怎么是英文 浏览:971
旗云2压缩机保险 浏览:374
做程序员压力大吗表情包 浏览:312
pdf下拉 浏览:372
php去掉小数后面的0 浏览:954
阿里备案买什么服务器 浏览:262
网络驱动下载到哪个文件夹 浏览:482
达内程序员培训西安 浏览:505
人保送车主惠app上怎么年检 浏览:605
android手机开机密码 浏览:482
linux查看某个进程命令 浏览:530