裣cc 呼吸灯效果怎么启动

的呼吸灯怎么关请问??【雷柏吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:113,109贴子:
的呼吸灯怎么关请问??收藏
登录百度帐号联想Y460c ideapad 呼吸灯不亮了 ,请问在哪可以设置吗?或者这个驱动在哪下载,叫什么名字!_百度知道
联想Y460c ideapad 呼吸灯不亮了 ,请问在哪可以设置吗?或者这个驱动在哪下载,叫什么名字!
我有更好的答案
您好!为了简便快捷的解决您的疑惑,该问题需要专业的工程师后台查询有关内部数据才,然后通过检测机器来解决问题,因此我们建议您联系联想售后,售后电话咨询:其他问题也可以在这两个论坛比较全,Idea论坛:Think论坛:希望能帮助到您,谢谢呢。
为您推荐:
其他类似问题
您可能关注的内容
呼吸灯的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。查看: 4352|回复: 6
[求助]呼吸灯的编程思路(C语言)
&呼吸灯的代码怎么写呀,灯的状态不是只有亮和灭两种么?难道还可以设置不同的亮度?
用pwm啊&& 脉宽调制
用pwm啊&& 脉宽调制
虽说可以用pwm,但就是不理解原理,脉宽调制他的输出也只有高电平和低电平啊,是不是还得加da转换
/***************************************************************&&
* 程序说明:使用P3.2和P3.4来控制P0端口的LED灯,达到手动调节渐亮或渐灭(也可一直按着),&&
& && && && &到最亮或最暗时蜂鸣器发出提示声音;&&
////////////////////////////////////////////////////////////////
晶振 11.0592M
* 利用定时器控制产生占空比可变的 PWM 波&&
* 按int0键,PWM值增加,则占空比减小,LED 灯渐暗。&&
* 按t0键,PWM值减小,则占空比增加,LED 灯渐亮。&&
什么是PWM技术?简而言之,PWM是一种对模拟信号电平进行数字编码的方法。通过计
数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然
是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。
电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即
是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟
值都可以使用PWM进行编码。
MCS-51系列单片机本身无PWM输出功能, 但可以采用定时器配合软件的方法对输出脉冲进行调
宽来模拟实现,对精度要求不是太高的场合是非常实用的。
****************************************************************/& &
#include&&&reg52.h && &
#include&&&intrins.h && &
sbit S1 =P3^2;&&//定义P3.2为增加键& &
sbit S2 =P3^4;&&//定义P3.3为减少键& &
sbit leds =P1^4;&&//定义P3.3为减少键
sbit&&BELL =P2^2;& &//定义蜂鸣器& &
unsigned char PWM=0x7f; //PWM赋初值& &
void Bee();& &
void delayms(unsigned char ms);& &
void delay(unsigned char t);& &
/*--------------------------------------------------*/& &
void main() //主程序& &
& & leds =0;
& & P0=0& &
& & TMOD=0x21;& &
& & TH0=0& &//1ms延时常数& &
& & TL0=0x66;& &//频率调节& &
& & TH1=PWM ;& &//脉宽调节& &
& & TL1=0 ;& &
& &&&EA=1;& &
& &&&ET0=1;& &
& &&&ET1=1;& &
& &&&TR0=1 ;& &
& &while(1)& &
& &&&do{& &
& && && && &if(PWM!=0xff)& &
& && && &&&{PWM++ ;delayms(10);}& &
& && && &&&else Bee();& &
& && && &}& &
& &&&while(S1==0);& &
& &&&do{& &
& && && &&&if(PWM!=0x02)& &
& && && & {PWM-- ;delayms(10);}& &
& && && &&&else Bee() ;& &
& && && & }& &
& &&&while(S2==0);& &
// ---------------------------定时器0中断服务程序& &
void timer0() interrupt 1& &
& & TR1=0;& &
& & TH0=0& &
& & TL0=0x66;& &
& & TH1=PWM;& &
& & TR1=1;& &
& & P0=0x7& &//启动输出& &
//---------------------------- 定时器1中断服务程序& &
void timer1() interrupt 3& &
& & TR1=0 ;& &
& & P0=0& &//结束输出& &
//-------------------------------蜂鸣器子程序& &
void Bee()& && &&&
& && &unsigned char i&&;& &
& && &for (i=0&&;i&100&&;i++)& &
& && &&&{& &
& && && & delay(100)&&;& &
& && && & BELL=!BELL&&;//BeLL取反& &
& && &&&}& &
& &&&BELL=1&&;& && && && && && && && && & //关闭蜂鸣器& &
& &&&delayms(100);& &
//-------------------------------- 延时子程序1& &
void delay(unsigned char t)& &
& & while(t--);& &
//--------------------------------- 延时子程序2& &
void delayms(unsigned char ms)& &
& & while(ms--)& &
& && &&&for(i=0;i&120;i++);& &
Powered by单片机制作呼吸灯的C语言程序怎样编写_百度知道
单片机制作呼吸灯的C语言程序怎样编写
我有更好的答案
#include&reg51.h&sbit LED0=P0^0;sbit wei=P1^1;sbit duan=P1^0;sbit lcden=P1^7;sbit dianzhen=P1^3;sbit leden=P1^2;void Delay(unsigned int t);void main (void){unsigned int CYCLE=600,PWM_LOW=0;//定义周期并赋值lcden=0;P0=0x00;dianzhen=0;P0=0wei=0;duan=0;while (1) //主循环{LED0=1;Delay(150000); //特意加延时,可以看到熄灭的过程for(PWM_LOW=1;PWM_LOW&CYCLE;PWM_LOW++){LED0=0;
Delay(PWM_LOW); LED0=1;
Delay(CYCLE-PWM_LOW);}for(PWM_LOW=CYCLE-1;PWM_LOW&0;PWM_LOW--){LED0=0; Delay(PWM_LOW); LED0=1;
Delay(CYCLE-PWM_LOW);}}}void Delay(unsigned int t){while(t--);}
高级工程师
#include&REG52.h&typedef unsigned char int8;typedef unsigned int int16;sbit led=P1^0;//P1^0口控制LED灯int16 t,a;int8
//电平宽度变化控制变量,控制电平宽度,b=0变长,b=1变短void InitTimer(void)//定时器初始化{TMOD = 0x11;EA = 1;
//总中断:开TH0 = 0 //T1计时器计数器初始化TL0 = 0TH1 = 0xb1; //T1计时器计数器初始化TL1 = 0xe0;ET0 = 1; //T0中断:开ET1 = 1; //T1中断:开TR0 = 1; //T0计时:启动TR1 = 1; //T1计时:启动}void main(){t=0;a=0;b=0;//使用变量前的初始化InitTimer();while(1){if(t&a)//t&a时打开LED灯led=0;else
led=1;//关灯f(t&80)t=0;//t置零}}void Timer0Interrupt(void) interrupt 1 //T0中断,用来控制PWM电平{TH0 = 0TL0 = 0t++;}void Timer1Interrupt(void) interrupt 3{TH1 = 0xb1;TL1 = 0xe0;
//每20毫秒增加1个单位的呼吸长度if(b==0){a++;if(a==80)
//改掉可以改呼吸频率b=1;} else {a--;if(a==0)b=0;}}
本回答被网友采纳
用脉宽调制
本回答被网友采纳
可以自己制作延时并加上循环已达到呼吸灯的效果,
或者可以用PWM脉冲,设置好参数后达到想要的效果,具体先了解一下单片机编程吧。
本回答被网友采纳
程序解释的挺清楚的了。先要想明白呼吸灯原理是什么,怎么实现,再看程序。呼吸灯开的时候,以非常快的速度开-关-开-关,并逐渐加大开的时间比率,减小关的时间比率。呼吸灯关的时候,以非常快的速度开-关-开-关,并逐渐加大关的时间比率,减小开的时间比率。
给引脚1、和0 就是脉冲,,,,,,时间就是由需求决定——————————————————
利用PWM占空比,也就是调节方波占空比大小就能达到渐亮渐灭,这样是否能理解?
这个简单啊。网上好多例子。就是设置占控比。
#include&reg52.h& //sbit LED0=P1^0//void Delay(unsigned int t); //void main (void){//unsigned int CYCLE=600,PWM_LOW=0;//定义周期并赋值//while (1) {LED0=1;Delay(60000); //特意加延时,可以看到熄灭的过程for(PWM_LOW=1;PWM_LOW&CYCLE;PWM_LOW++){//LED0=0; //点亮LED Delay(PWM_LOW);//延时长度,600次循环中从1加至599LED0=1; //熄灭LEDDelay(CYCLE-PWM_LOW);//延时长度,600次循环中从599减至1//}LED0=0;for(PWM_LOW=CYCLE-1;PWM_LOW&0;PWM_LOW--){//LED0=0;Delay(PWM_LOW);LED0=1;Delay(CYCLE-PWM_LOW);//}//}}//void Delay(unsigned int t){while(--t);}
其他7条回答
为您推荐:
其他类似问题
您可能关注的内容
c语言程序的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。华为c8818呼吸灯怎么设置常闪烁_百度知道
华为c8818呼吸灯怎么设置常闪烁
我有更好的答案
可以。点击“设置”,在全部设置下,点击“显示”,可以调整指示灯
采纳率:92%
为您推荐:
其他类似问题
呼吸灯的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 c语言 呼吸灯 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信