找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1717|回復: 2
打印 上一主題 下一主題
收起左側(cè)

環(huán)保公廁蹲坑控制器 景區(qū)公共場合蹲坑控制器程序及其源代碼分享

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:280979 發(fā)表于 2023-8-30 00:22 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式






*********************************************************************
程序,描述:)按下啟動按鈕,y1四個220V輸出,y2一個24V負輸出,
兩個同步工作延時3秒斷開y3閉合延時3秒斷,y4閉合延時2秒斷開。這是一個
循環(huán)計數(shù),當循環(huán)50次后y5閉合5秒斷開。自動工作完成。默認模式,優(yōu)先級
別,5秒內(nèi)連續(xù)按5次觸發(fā)y4y5閉合10秒斷開。節(jié)水便器控制器,要求防水防
潮,引線快接插頭,220供電。
*********************************************************************/

#include<STC15W408AS.h>
#define uchar unsigned char//宏定義無符號字符型
#define uint unsigned int  //宏定義無符號整型
sbit IN1 = P3^2;                        /*S1*/


sbit COM1 = P1^1;                  /*output1*/
sbit COM2 = P1^0;                  /*output2*/
sbit COM3 = P3^3;                  /*output3*/
sbit COM4 = P5^5;                  /*output4*/
sbit COM5 = P5^4;                  /*output5*/
bit  bz1=0;
bit  bz2=0;
bit  bz3=0;
bit  bz4=0;
bit  bz5=0;
bit  bz6=0;
bit  bz7=0;
bit  bz8=0;
uchar dsbz=0;
uchar sj1=0;
uchar sj2=0;
uchar sj3=0;
uchar sj4=0;
uchar sj5=0;
uchar sj6=0;
uchar sj7=0;
uchar sj8=0;

bit sjbz1=0;
bit sjbz2=0;
bit sjbz3=0;
bit sjbz4=0;
bit sjbz5=0;
bit sjbz6=0;
bit sjbz7=0;
bit sjbz8=0;
uchar bjz=0;

uchar xhcs=0;//循環(huán)次數(shù)
bit qdbz=0;//啟動標志
bit kzbz=0;

/********************************************************************
                            初始定義
*********************************************************************/
uint sec; //定義計數(shù)值,每過1/10 秒,sec 加一
uchar keycnt=0;//按下次數(shù)值
uint tcnt; //鍵值判斷


/********************************************************************
                            延時函數(shù)
*********************************************************************/
void delay(uchar dat)//延時程序
{
uchar m,n,s;
for(m=dat;m>0;m--)
for(n=2;n>0;n--)
for(s=18;s>0;s--);
}

void xuze()
{
if((P12==1)&&(P13==1)&&(P14==1)&&(P15==1)){bjz=1;}//0秒   15
if((P12==0)&&(P13==1)&&(P14==1)&&(P15==1)){bjz=10;}//1秒   14
if((P12==1)&&(P13==0)&&(P14==1)&&(P15==1)){bjz=20;}//2秒   13
if((P12==0)&&(P13==0)&&(P14==1)&&(P15==1)){bjz=30;}//3秒   12
if((P12==1)&&(P13==1)&&(P14==0)&&(P15==1)){bjz=40;}//4秒   11
if((P12==0)&&(P13==1)&&(P14==0)&&(P15==1)){bjz=50;}//5秒   10
if((P12==1)&&(P13==0)&&(P14==0)&&(P15==1)){bjz=60;}//6秒  9
if((P12==0)&&(P13==0)&&(P14==0)&&(P15==1)){bjz=70;}//7秒  8
if((P12==1)&&(P13==1)&&(P14==1)&&(P15==0)){bjz=80;}//8秒  7
if((P12==0)&&(P13==1)&&(P14==1)&&(P15==0)){bjz=90;}//9秒 6
if((P12==1)&&(P13==0)&&(P14==1)&&(P15==0)){bjz=100;}//10秒 4
if((P12==0)&&(P13==0)&&(P14==1)&&(P15==0)){bjz=110;}//11秒 4
if((P12==1)&&(P13==1)&&(P14==0)&&(P15==0)){bjz=120;}//12秒 3
if((P12==0)&&(P13==1)&&(P14==0)&&(P15==0)){bjz=130;}//13秒 2
if((P12==1)&&(P13==0)&&(P14==0)&&(P15==0)){bjz=140;}//14秒 1
if((P12==0)&&(P13==0)&&(P14==0)&&(P15==0)){bjz=150;}//15秒 0
}
/********************************************************************

*********************************************************************/
void main()                                  
{
           TMOD=0x02; //定時器工作在方式2
        TH0=0x06; //對TH0 TL0 賦值
        TL0=0x06;
        TR0=1; //開始定時
        ET0=1;
        EA=1;
        sec=0;
   while(1)
{
//xuze();
if((IN1==0)&&(bz1==0)){delay(20);if((IN1==0)&&(bz1==0)){keycnt++;sj3=0;bz1=1;}}
if((IN1==1)&&(bz1==1)){delay(20);if((IN1==1)&&(bz1==1)){bz1=0;}}
}               
}
/********************************************************************
                            定時中斷服務函數(shù)
*********************************************************************/
void t0(void) interrupt 1 using 0 //定時中斷服務函數(shù)
{
tcnt++; //每過250ust tcnt 加一
if(tcnt==400) //計滿400 次(1/10 秒)時
{
tcnt=0; //重新再計
if(keycnt>0)
{
sj2++;
sj3++;if(sj3==12){sj3=0;if(qdbz==0){COM1=0;COM2=0;qdbz=1;tcnt=0;sec=0;sj1=0;xhcs=0;}}
if(sj2==50){if(keycnt<5){keycnt=0;sj2=0;}}
if(keycnt>=5){COM1=1;COM2=1;COM3=1;COM4=0;COM5=0;tcnt=0;sec=0;sj1=0;xhcs=0;}
if(sj2==150){if(keycnt>=5){COM4=1;COM5=1;sj2=0;qdbz=0;keycnt=0;}}
}
if(qdbz==1)
{
if(xhcs<51)
{
sec++;
if(sec==30){{COM1=1;COM2=1;COM3=0;}}
if(sec==60){{COM3=1;COM4=0;}}
if(sec==80){{COM4=1;COM1=0;COM2=0;xhcs++;if(xhcs>=51){COM1=1;COM2=1;}sec=0;}}
}
if(xhcs>=51)
{
COM5=0;
sj1++;{if(sj1>=5) {COM1=1;COM2=1;COM5=1;sj1=0;qdbz=0;}}
}
}       
}
}
/********************************************************************
                              結(jié)束
*********************************************************************/

ZXC-003 環(huán)保公廁蹲坑控制器配套程序.rar

44.38 KB, 下載次數(shù): 19, 下載積分: 黑幣 -5

ZXC-003 環(huán)保公廁蹲坑控制器原理圖.pdf

78.92 KB, 下載次數(shù): 14, 下載積分: 黑幣 -5

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

使用道具 舉報

沙發(fā)
ID:468878 發(fā)表于 2023-8-31 14:59 | 只看該作者
圖文并茂,高質(zhì)量文章
回復

使用道具 舉報

板凳
ID:689425 發(fā)表于 2023-8-31 18:44 | 只看該作者
好貼,程序很詳細,有原理圖,必須頂
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表