调光调色LED吸顶灯,其实是内部有2路信渣的输出的。一路为暖光(3000k色温左右),一路为冷光(正白,7000k色温左右)。每一路都是独立的。卖戚通过给每一路不同的亮度,就可以对整个灯进行色温的调整和亮度的调整。譬如,A路是暖光,色温3000k,但亮度只有全亮的10%,而B路是冷光,亮度只有全亮的40%,那么,在灯体内混成的色温可能就只有5000k了(不是很冷白,也有一丁点暖白)。也就是说,真正的调光调色可以从中坦陵亮度和色温进行调整。
现在的LED调光调色吸顶灯,会有2类,一种是固定亮度和只有3档色温(暖白、中性白、正白),这种便宜一些;另外一种是叫无级调整,如圆周率光电(PI-TECH)的调光调色吸顶灯,亮度和色温都可以独立调整,每个10个档位,有多达100种效果,通过遥控器来进行遥控。
你好我赞同二楼的回答,一楼给你的只是一个简化问题的方向。
你没有描述出问题的特征,是软件编译通不过(我觉得不是这个),还是不能调光,或调光范围非常窄,或根本不调光。我感觉你应该是后悔汪面几个问题如二楼所言。你的程序几乎没有注释,很难看的明白,就我的经验,说几点建议。
1.首先建立正确的数学模型,如你的程序“//频率调节 TH1=PWM //脉宽调 TL1=0 ;”T1既调频又调宽,含消就一个PWM输出还用了两个定时器,(两个定时器的协调是个比较麻烦的事情)。可以用一个定时器1-10ms(不发生频闪就行)做一个基本单位(中断),通过一个可变标量进行比较,决定PWM的输出。可变标量的数据为手动调光的档位或光敏电阻的数据。
例如:T0 1ms中断一次;i为中断计数;P1.1为输出,0为暗;可变标量m=3(范围 1-10);中断程序如下:(示例,明白就行)
{
i++;
if(i<=m)
{P1.1=0} //暗
P1.1=1 //亮
if(i==10)
{i=0;} //清中断计数
}
2.根据已知硬件搭配硬件电路,接口及驱动程序都是现成的,这个不麻烦,用好就行。
3.调试及调试手段,把二楼的拆分一下:个人建议尽量用开发板,因为板上集成了很多不同的硬件及其接口方便调试,如有1602或12864的接口则更方便,调试时把显示程序镶如,这样可把关键寄存器的数据显示出来,那里有问题一目了然,我做一个蓄谈前知电池3阶段充电器的时候,就把12864的最后一行作为调试显示,调试完改回去就行了。1,PWM能分级输出,通过延时自动改变led亮度; 2.亮度(光敏电阻)的检测,ad是八位的话,先用电位器代替要有0-255的输出,没有显示的话,设定几个端口发光二极管,ad=0-50,p1.2亮,ad=51-100,P1.3亮........。
各个功能都能独立完成各自的功能,调试完成把调试辅助程序屏蔽就行了。装配(主要是光敏电阻和发光管的位置,就是确定自动调光时两者的平衡态问题,这是成败的关键),以确定两者的关系,控制方向一定不能搞反,即正反向调节的问题。
4.软件的设计要有缓冲,如亮度有100级分级,那么50-55的的亮度等级区别是不大的,就是设定50级的话,实际亮度在47-53,可以认为是等于50级设定的,不用调整。其调光时亮暗的变化不宜过大,要分段调整(考虑人的舒适度),同时便于程序的计算(多取样,以最后一次或平均值为准)。
方法一:如果灯具的功率适合时,可以到卖灯具开关纤春陵的店铺买一个调光面板,再配一个开关盒,就能实现无极调光了。方法二:如果懂单片机的话,搞一个PWM调光系统,几档调光毁戚自定义确定,很简单,我的空间里有资料森哗。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)