这是我们对51单片机的各个IO口的分工情况,因为台灯的功能太单一了,所以我们小组还要加个风扇,风扇受手动挡和自动挡控制,当外界温度过高时(使用DS18B20),它就会自动转的更快一些。
目前正在搭架子,软件也正在写...
/**********************************自动光控函数*************************/
void zi_led()
{ uchar shang,xia;//对比光度暂存变量
//led=0; //电机开
shang=、、; //设置光度上限值
xia=、、; //设置光度下限值
uchar i,guang_du,dang,a; //定义 : 光度、led档位
a=(shang-xia)/3; //将光度除以3,将档位分成3个档次或4个档次
guang_du= 、、///////// /////////目前还不会写
led_keyscan();//按键扫描函数
if(guang_du<xia)
{led=0;dang=0;}//低于下限 档位为0 电机停止
if((guang_du>=xia)&&(guang_du<=shang))//光度大于下限,小于上限 1挡
{
if(guang_du <= (guang+a))
{
dang=1;
led_pwm(dang);
//////pwm控制led函数
}
if((guang_du >(xia+a)) && (guang_du <= (xia+2a)))
{
dang=2;
led_pwm(dang);
//////pwm控制led函数
}
if((guang_du >(xia+2a)) && (guang_du <= (xia+3a)))
{
dang=3;
led_pwm(dang);
//////pwm控制led函数
}
}
if(guang_du>shang)
{
led=1;
dang=4;
LcdWriteCom(0x80+0A); //写地址 80表示初始地址
LcdWriteData('0'+dang);
} //led最亮
}
目前正在写自动光控函数,遇到了个问题,不知道怎么设置上下限光照强度......
有奖活动 | |
---|---|
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! | |
“我想要一部加热台”活动,不花钱赢取开发好工具!活动开始了哦 | |
【有奖活动】伙伴们:您的“需求”解决了吗? | |
抽奖了,抽奖了,金升阳医疗电源 |
打赏帖 | |
---|---|
【换取手持数字示波器】+与同事对定时器输出相位可调PWM移相全桥控制分享被打赏50分 | |
【换取手持数字示波器】+LP-MSPM0L1306开发板试用体验+串口被打赏40分 | |
CC-RL编译器相关问题求助被打赏10分 | |
【换取手持数字示波器】+与同事对ESP-12开发调试经验分享被打赏50分 | |
【换取手持数字示波器】+同事tek示波器调试spi解析被打赏50分 | |
【换取手持数字示波器】+2.6寸墨水屏调试经验被打赏50分 | |
换取手持数字示波器+个人开关电源的设计经验被打赏50分 | |
【换取手持数字示波器】+【APT32F173测评】+URAT被打赏20分 | |
【换取手持数字示波器】CH32X035的定时器以及外部中断体验被打赏50分 | |
【换取手持数字示波器】CH32X035搭建开发环境(RISC-V)被打赏50分 |