久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5413|回復: 12
打印 上一主題 下一主題
收起左側

DIY加濕器

[復制鏈接]
跳轉到指定樓層
樓主
參考了這個貼:http://www.zg4o1577.cn/bbs/dpj-198071-1.html驅動電路一樣,自己再稍微修改一下。

剛開始一直在想怎么固定霧化片,還有用什么容器。忽然看到桌子上的飲料瓶,把霧化片放進瓶蓋,剛好卡緊。出霧量少或者不出霧還可以旋動瓶蓋調整,簡直完美

IMG_20210605_144149.jpg (1.87 MB, 下載次數: 146)

IMG_20210605_144149.jpg

IMG_20210605_144200.jpg (1.82 MB, 下載次數: 147)

IMG_20210605_144200.jpg

IMG_20210605_143145.jpg (1.82 MB, 下載次數: 146)

IMG_20210605_143145.jpg

IMG_20210605_143150.jpg (1.69 MB, 下載次數: 151)

IMG_20210605_143150.jpg

IMG_20210605_143230.jpg (2.38 MB, 下載次數: 138)

IMG_20210605_143230.jpg

IMG_20210605_143236.jpg (1.91 MB, 下載次數: 149)

IMG_20210605_143236.jpg

IMG_20210605_143413.jpg (2.03 MB, 下載次數: 159)

IMG_20210605_143413.jpg

IMG_20210605_143439.jpg (1.73 MB, 下載次數: 145)

IMG_20210605_143439.jpg

評分

參與人數 2黑幣 +65 收起 理由
lyxxzrb + 15
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:377210 發表于 2021-6-5 14:57 | 只看該作者
霧化片位置打了點熱熔膠,防止霧化片松動。5V供電,可以用移動電源供電。工作時主要發熱的是電感,6*8的,估計有60℃吧,用大一號的電感溫度應該會低很多
回復

使用道具 舉報

板凳
ID:284488 發表于 2021-6-5 17:21 | 只看該作者
感謝樓主分享!樓主修改的部份可否分享下?
回復

使用道具 舉報

地板
ID:377210 發表于 2021-6-5 19:06 | 只看該作者
lon7085 發表于 2021-6-5 17:21
感謝樓主分享!樓主修改的部份可否分享下?

驅動部分一樣的,修改部分增加了輸入電壓檢測,因為用到移動電源。還有增加了一路輸出,可以驅動水泵或者風扇,實際沒有使用(用這個霧化片工作好久,一瓶水也沒用多少)。
有時間的話,可以自己增加一個水量檢測,水不夠時就停止工作。
電路圖在審核,遲一些上傳。
回復

使用道具 舉報

5#
ID:377210 發表于 2021-6-5 19:20 | 只看該作者
代碼如下,比較亂,請自行根據實際使用情況修改:
#include <STC8G.h>
#include <intrins.h>
#include<math.h>  
#define ulong unsigned long
#define uint unsigned int
#define uchar unsigned char
typedef unsigned char U8;
typedef unsigned int U16;
typedef unsigned long U32;
sfr INT_CLKO = 0x8f;   

sbit an1 =P3^0;     //按鍵1
sbit an2 =P3^1;     //按鍵2沒有使用
sbit Y0  =P3^2;            //霧化片驅動
sbit Y1  =P3^3;            
sbit LED =P5^4;     //指示燈
sbit ADC_VIN=P5^5;  //輸入電壓檢測

bit standby;
U16 num,num0,num1,*BGV,adcvref,adcvin;

void delay1ms()                //@24.000MHz
{
        unsigned char i, j;

        _nop_();
        i = 32;
        j = 40;
        do
        {
                while (--j);
        } while (--i);
}
void delay10ms()                //@24.000MHz
{
        unsigned char i, j, k;

        i = 2;
        j = 56;
        k = 172;
        do
        {
                do
                {
                        while (--k);
                } while (--j);
        } while (--i);
}
void init1()  //初始化
{
   P3M1=0x00;P3M0=0x0c;         //高阻,23推挽,01準雙向口,開漏。
   P5M1=0x20;P5M0=0x10;         //5高阻,4推挽,準雙向口,開漏。
   TMOD=0x11;
   TH0=(65536-40000)/256; TL0=(65536-40000)%256;
   TH1=(65536-50000)/256; TL1=(65536-50000)%256;  
   ET0=1;ET1=1;
   TR0=1;TR1=0;  

   BGV = (U16 code *)0x1ff7;        //內部基準電壓 STC8G1K08/08A

   num=0;num0=0;num1=0;
   Y0=0;
   Y1=0;
   LED=1;  

   EA=1;         
}
U16 ADCRead() //讀取內部基準電壓
{
    U16 AD_Date=0;   // 10位AD轉換值
    U8 Tmpe;       // 臨時變量用于將AD轉換出來的2個字節合成一個字節

        ADC_CONTR |= 0x40;         //開始AD轉換  
        _nop_();_nop_();_nop_();
    while (!(ADC_CONTR & 0x20)); //查詢 ADC 完成標志
    ADC_CONTR &= ~0x20; //清完成標志
    AD_Date = ADC_RES;                // 默認高字節高8位。
    AD_Date <<= 2;
    Tmpe = ADC_RESL;         // 默認低字節低2位。
    Tmpe &= 0x03;            // 屏蔽無關位
    AD_Date |= Tmpe;                // 高低字節拼接成一個10位數。
    return AD_Date;
}
void getadcref()  //內部基準電壓
{
   U8 i;
   U16 vref;

   ADC_CONTR =0x80;         //打開AD電源
   delay10ms();         
   ADCTIM = 0x3f;
   ADCCFG = 0x0f;  //設置 ADC 時鐘為系統時鐘/2/16
   ADC_CONTR = 0x8f; //使能 ADC 模塊,并選擇第 15 通道

   ADCRead(); ADCRead(); //前兩個數據丟棄
         for (i=0; i<16; i++)
              {vref += ADCRead();} //讀取 16 次數據
     vref >>= 4; //取平均值
         adcvref = (U16)(1024L* *BGV / vref);         //計算 VCC 管腳電壓,即電池電壓   //注意,此電壓的單位為毫伏(mV)
         ADC_CONTR &= 0x7f;          //關閉AD電源
}
U16 ADchange()  //AD轉換
{
   U16 AD_Date=0;   // 10位AD轉換值
   U8 Tmpe;       // 臨時變量用于將AD轉換出來的2個字節合成一個字節

   ADC_RES = 0;      //清除結果寄存器
   ADC_RESL = 0;      //清除結果寄存器
   ADC_CONTR = 0x85;
          TR0=0;
          TR1=0;
        ADC_CONTR |= 0x40;         //開始AD轉換  //ADC_CONTR|=0x08;         //開始AD轉換
        _nop_();_nop_();
    while (!(ADC_CONTR & 0x20)); //查詢 ADC 完成標志
    ADC_CONTR &= ~0x20; //清完成標志
          TR0=1;
          TR1=1;
    AD_Date = ADC_RES;                // 默認高字節高8位。
    AD_Date <<= 2;
    Tmpe = ADC_RESL;         // 默認低字節低2位。
    Tmpe &= 0x03;            // 屏蔽無關位
    AD_Date |= Tmpe;                // 高低字節拼接成一個10位數。
    return AD_Date;
}
void adcscancal()   //AD轉換結果計算
{
   U8 jj,yy;
   U16 adcxx=0,max,min,test[18];
   U32 tt=0;

   ADC_CONTR =0x80;  //打開AD電源
   delay1ms();         
   ADCTIM = 0x3f;
   ADCCFG = 0x0f;  //設置 ADC 時鐘為系統時鐘/2/16
            ADchange();ADchange();         //多次掃描,丟棄前兩次取平均值
            for(jj=0;jj<18;jj++)
                {
                   test[jj]        = ADchange();
                   tt += test[jj];
                }
                max=min=test[0];
                for(yy=0;yy<18;yy++)
                {
                   if(min>test[yy]) min=test[yy];  //最小值
                   if(max<test[yy]) max=test[yy];  //最大值
                }
                adcxx=(tt-max-min)/16;        //取平均值
                adcvin=adcvref/1024.0*adcxx*11;

        ADC_CONTR &= 0x7f;          //關閉AD電源
}
void main()
{
   init1();
   getadcref();  //內部1.19V基準電壓
   while(1)
   {
        if(an1==0){delay10ms();if(an1==0){standby=~standby;while(!an1);}}         //AN1按鍵檢測
        if(adcvin>4500&&adcvin<5500&&standby==1) //輸入電壓在4.5~5.5V范圍且standby為1時開始工作
        {
                 U8 jj;
                 jj++;
                 _nop_(); _nop_(); _nop_();
                 _nop_(); _nop_(); _nop_();         //頻率微調:頻率低了減少_nop_();頻率高了增加 _nop_();
                 if(jj>2){jj=0;Y1=~Y1;Y0=~Y1;}
                 if(num0>25){num0=0;LED=~LED;}           //工作時指示燈以0.5秒間隔閃爍
        }
         else{Y0=0;Y1=0;LED=1;}        //standby為0時停止工作,指示燈常亮
   }  
}

void T0_time() interrupt 1         //T0
{
   TH0=(65536-40000)/256; TL0=(65536-40000)%256;         //20mS-24M         
   num0++;
   adcscancal();
}
void T1_time() interrupt 3         //T1
{
   TH1=(65536-50000)/256; TL1=(65536-50000)%256;        //25mS 24M
   num1++;
}

評分

參與人數 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:377210 發表于 2021-6-5 22:03 | 只看該作者
原理圖

加濕器SCH.PNG (42.4 KB, 下載次數: 153)

加濕器SCH.PNG
回復

使用道具 舉報

7#
ID:377210 發表于 2021-6-5 22:05 | 只看該作者
實際使用時R4焊接的是0.1uF的電容,R5阻值為100K。
回復

使用道具 舉報

8#
ID:143767 發表于 2021-6-6 10:23 | 只看該作者
不錯,手持式超聲波霧化美容也應該是這個原理
回復

使用道具 舉報

9#
ID:377210 發表于 2021-6-6 22:33 | 只看該作者
dj3365191 發表于 2021-6-6 10:23
不錯,手持式超聲波霧化美容也應該是這個原理

美容的是不是用這樣的就不清楚了,小范圍使用還可以,也可以用來做簡易的濕度測試。200mL的水可以連續出霧12小時以上,500mL的水可以用一天了
回復

使用道具 舉報

10#
ID:230742 發表于 2021-6-8 02:46 | 只看該作者
淘寶里有一個大霧量的,24付的,一個電源板,一個控制板,才2元。
回復

使用道具 舉報

11#
ID:377210 發表于 2021-6-9 19:49 | 只看該作者
啤酒瓶子老大 發表于 2021-6-8 02:46
淘寶里有一個大霧量的,24付的,一個電源板,一個控制板,才2元。

我這個就是玩玩,性價比肯定沒有公司批量生產的高
回復

使用道具 舉報

12#
ID:820198 發表于 2021-7-5 10:24 | 只看該作者
這個芯片怎么下載程序啊?直接用ch340可以下載嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 四虎永久免费在线 | 亚洲免费片| 国产精品污www一区二区三区 | 欧美日韩在线国产 | 精品综合在线 | 99久久精品国产一区二区三区 | 拍戏被cao翻了h承欢 | 亚洲三级在线观看 | 国产精品视频不卡 | 中文字幕精品视频 | 野狼在线社区2017入口 | 中文字字幕一区二区三区四区五区 | 国产一区二区三区精品久久久 | 久久精品国产一区老色匹 | 欧美一区免费 | 日韩在线综合 | www亚洲一区 | 亚洲视频在线播放 | 久久精品亚洲精品 | 欧美啊v在线观看 | 日韩久久中文字幕 | 久久网亚洲 | 精品久久一区 | 成人亚洲性情网站www在线观看 | 啪啪毛片| 国际精品鲁一鲁一区二区小说 | 波多野结衣先锋影音 | 婷婷综合色 | 淫片一级国产 | 激情av免费看 | 午夜国产一级片 | 嫩草视频入口 | 亚洲精品二区 | 亚洲人在线 | 亚洲三级在线观看 | 在线观看中文字幕dvd播放 | 亚洲午夜av久久乱码 | 国内自拍视频在线观看 | 99久久影院 | 精品欧美一区二区三区久久久 | 中文字幕在线一区二区三区 |