本帖最后由 ziluobu 于 2013-8-9 17:29 编辑
设计了2板电路,多次修改、优化单片机代码。
功能特点:
一、可以加温,加温到40以上,让你在冬天不再喝冷水。
二、可以制冷,将水制冷至相对室温低16度,夏天感受冰爽的感觉。
三、可以精确恒温,制定一个温度值始终恒温到那个值,比如42度,这样冬天不管任何时候都可以喝道温温的水,尤其对有小孩的家庭实用,弄一个小奶瓶放到杯子里,随时都可以给宝宝喝到温暖的奶或水。
四、我是根据某宝 冷热杯 的功能做的,但是我的功能比他的多很多,包括通过PWM防止H桥翻转时损伤制冷片,实时温度显示,USB充电接口,逆向发电电路等。
五、本来想用制冷片的特性做热水发电,但是发现功能不实用。
六、USB接口设计反了,所以焊到背面了,大家注意。
七、电路我全部开源,代码我只开源部分,虽然不是很复杂但是我不希望我的成果被别人拿来做其它用途,可以下载我的HEX文件,也可以自己开发代码。
八、23楼有部分源代码。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
#include <reg51.h>
#include <intrins.h>
#include <./include/DS18B20.c>
#include <./include/General.c>
//void Int0_Routine(void);
extern unsigned char LEDSHU[12]= {0xc0,
0xf9,
0xa4,
0xb0,
0x99,
0x92,
0x82,
0xf8,
0x80,
0x90,
0xBF, //负号 10
0xDC, //超过范围符号 11
};
unsigned char sz[4]={0}; //缓存数组
unsigned int lengre=2; //制冷=0 制热=1 无=2
void xs(int x)
{
unsigned i=0x01;
unsigned j=0x08;
int z;
z=x;
if(z<0)
{
sz[0]=10;
}else
{
sz[0]=x/100%10;
}
//sz[0]=x/100%10;
sz[1]=z/10%10;
sz[2]=z%10;
for(i=0;i<3;i++) //对三位共阳数码管扫描
{
P3=P3^j;
P2=LEDSHU[sz[i]];
delay(1);
P3=P3^j;
j=j<<1;
}
}
一周热门 更多>