完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本人刚刚接触单片机C语言,新手一枚,最近用stc15w404as做一个小灯,用红外当做开关,希望达到的效果是:红外触发后,灯打开(最低亮度),再次触发红外则灯关闭;
当灯打开的时候,一直触发红外,超过1s后,开始调光; 调光按照第一次持续触发超过1s后,灯光逐步变亮,当触发停止时,灯光维持触发调制到的灯光强度,关闭灯后,下一次触发红外同样记住这个亮度并且以这个亮度点亮小灯; 当再一次持续触发红外超过1s时,灯光由现在的亮度逐步变暗,同样的,亮度在触发停止后,会记住当前的亮度(无论后面是否开关灯,都将保持最新调光的亮度),直到下一次调光才会改变; 以上功能,从逻辑上能讲通,但是代码始终无法写好,求前辈指点,如果方便的话,能否给个流程图供参考呢? |
|
相关推荐
12个回答
|
|
调光可用这个单片机的PWM功能轻易实现,红外遥控可直接复制现成的代码,使用单片机任意一个IO口都可以。详细内容在下面视频和教材中都可以找到。视频地址:http://pan.baidu.com/share/home?uk=4077802723&view=share#category/type=0
|
|
|
|
这相对来说功能算是简洁的,关键处理在于按键结合时间的判断,这个直接关系到产品的体验性。
|
|
|
|
被控制的灯是什么等?是220V的灯泡还是LED灯?
|
|
|
|
就是简单的LED小灯,3.3v供电
|
|
|
|
恩,我也是想来想去,觉得思路是清晰的,按照我个人的理解,只要逻辑清晰,应该是可以用代码实现的,只是个人能力有限,一直没有调试出来,郁闷
|
|
|
|
谢谢层主,我待会看下,看看能吸收多少~
|
|
|
|
先画个简单的流程图,做起来就简单一些了。
|
|
|
|
这种帖就应该封杀,我不知道你为什么还给他回复,因为要卖书么
|
|
|
|
最他妈讨厌是这个卖书的。。到处刷屏。。该封号!
|
|
|
|
对,贼烦,卖个51开发板跟书来骗几个钱
|
|
|
|
是用单片机控制红外二极管,在遥控220白炽灯吗??你首先的写出发射单片机的编码(遥控)、接收单片机解码(接收的灯),接收的单片机不能直接控制220灯还需要个PWM(买个台灯调光板),台灯调光板上有个电位器,你用ADC芯片代替电位器(要算好电压)。所以结果要:单片机2个,ADC芯片1个,台灯调光板或者吊扇调速板1个,灯1个
|
|
|
|
直接STM32的定时器输出PWM即可,很简单的
|
|
|
|
只有小组成员才能发言,加入小组>>
imx6ull 和 lan8742 工作起来不正常, ping 老是丢包
2660 浏览 0 评论
3347 浏览 9 评论
3025 浏览 16 评论
3519 浏览 1 评论
9127 浏览 16 评论
1251浏览 3评论
642浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
629浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2379浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1944浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-30 13:47 , Processed in 1.281210 second(s), Total 67, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号