欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于STC12C5A60S2單片機設計的立體車庫計數器報警程序

[復制鏈接]
跳轉到指定樓層
樓主
/********************************************************************
                          立體車庫程序
*********************************************************************/
#include<reg52.h>                 //庫文件
#define uchar unsigned char//宏定義無符號字符型
#define uint unsigned int  //宏定義無符號整型

/********************************************************************
                            初始定義
*********************************************************************/

sbit P20=P2^0; //定義
sbit P21=P2^1; //定義
sbit P22=P2^2; //定義
sbit P23=P2^3; //定義
sbit P24=P2^4; //定義
sbit P25=P2^5; //定義
sbit P26=P2^6; //定義
sbit P27=P2^7; //定義

sbit P30=P3^0; //定義
sbit P31=P3^1; //定義
sbit P32=P3^2; //定義
sbit P33=P3^3; //定義
sbit P34=P3^4; //定義
sbit P35=P3^5; //定義
sbit P36=P3^6; //定義
sbit P37=P3^7; //定義

sbit P10=P1^0; //定義
sbit P11=P1^1; //定義
sbit P12=P1^2; //定義
sbit P13=P1^3; //定義
sbit P14=P1^4; //定義
sbit P15=P1^5; //定義
sbit P16=P1^6; //定義
sbit P17=P1^7; //定義

uchar k=40;
uchar ge=0;
uchar shi=0;
uchar bai=0;
uchar qian=0;
uint date=0;
bit bz1=0;
bit bz2=0;
bit bz3=0;
bit bz4=0;
bit bz5=0;
bit bz6=0;
bit bz7=0;
bit bz8=0;
bit bz9=0;
bit bz10=0;
bit bz11=0;
bit bz12=0;
bit bz13=0;
bit bz14=0;
bit bz15=0;
bit bz16=0;
uchar jsj=0;
/********************************************************************
                            初始定義
*********************************************************************/
code uchar seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //顯示段碼 數碼管字跟

/********************************************************************
                            初始定義
*********************************************************************/
uchar sec; //定義計數值,每過1/10 秒,sec 加一
uint tcnt; //鍵值判斷
uchar k;
bit bzw1=0;
bit bzw2=0;
/********************************************************************
                            延時函數
*********************************************************************/
void delay(uchar t)
{
  uchar i,j;
   for(i=0;i<t;i++)
   {
            for(j=13;j>0;j--);
         { ;
         }
   }
}

/********************************************************************
                             汽車移除函數
*********************************************************************/
void key()
{
if((P30==0)&&(bz1==0)){bz1=1;date++;}if((P30==1)&&(bz1==1)){bz1=0;delay(k);}
if((P31==0)&&(bz2==0)){bz2=1;date++;}if((P31==1)&&(bz2==1)){bz2=0;delay(k);}
if((P32==0)&&(bz3==0)){bz3=1;date++;}if((P32==1)&&(bz3==1)){bz3=0;delay(k);}
if((P33==0)&&(bz4==0)){bz4=1;date++;}if((P33==1)&&(bz4==1)){bz4=0;delay(k);}

if((P34==0)&&(bz5==0)){bz5=1;date++;}if((P34==1)&&(bz5==1)){bz5=0;delay(k);}
if((P35==0)&&(bz6==0)){bz6=1;date++;}if((P35==1)&&(bz6==1)){bz6=0;delay(k);}
if((P36==0)&&(bz7==0)){bz7=1;date++;}if((P36==1)&&(bz7==1)){bz7=0;delay(k);}
if((P37==0)&&(bz8==0)){bz8=1;date++;}if((P37==1)&&(bz8==1)){bz8=0;delay(k);}

if((P14==0)&&(bz9==0)){bz9=1;date++;}if((P14==1)&&(bz9==1)){bz9=0;delay(k);}
if((P15==0)&&(bz10==0)){bz10=1;date++;}if((P15==1)&&(bz10==1)){bz10=0;delay(k);}
if((P16==0)&&(bz11==0)){bz11=1;date++;}if((P16==1)&&(bz11==1)){bz11=0;delay(k);}
if((P17==0)&&(bz12==0)){bz12=1;date++;}if((P17==1)&&(bz12==1)){bz12=0;delay(k);}

if((P20==0)&&(bz13==0)){bz13=1;date=0;}if((P20==1)&&(bz13==1)){bz13=0;delay(k);}
if((P21==0)&&(bz14==0)){bz14=1;date++;}if((P21==1)&&(bz14==1)){bz14=0;delay(k);}

}


/********************************************************************
              功能:串口初始化,波特率9600,方式1
*********************************************************************/
void initTimer(void)
{
TMOD=0x2;
TH0=0x1b;
TL0=0x1b;
}
/********************************************************************
                            主函數
*********************************************************************/
void main()
{
initTimer();
TR0=1;
ET0=1;
EA=1;
        while(1)
        {
         KEY();
        }
}

/********************************************************************
                            定時中斷服務函數
*********************************************************************/
void t0(void) interrupt 1 using 0 //定時中斷服務函數
{

  qian=date/1000;                         //求千位
  bai=date%1000/100;                 //求百位
  shi=date%100/10;                 //求十位
  ge=date%10;                         //求個位
      tcnt++;
          if(date>=100){P12=P11=0;}
          switch(tcnt)
          {
          case 1:P23=1;P24=1;P25=1;P26=1;P0=seg7code[qian];P23=0;break;
          case 2:P23=1;P24=1;P25=1;P26=1;P0=seg7code[bai];P24=0;break;
          case 3:P23=1;P24=1;P25=1;P26=1;P0=seg7code[shi];P25=0;break;
          case 4:P23=1;P24=1;P25=1;P26=1;P0=seg7code[ge];P26=0;break;
          default:  tcnt=0; break;          
          }
}       
/********************************************************************
                              結束
*********************************************************************/


DSC_0034.JPG (166.85 KB, 下載次數: 68)

DSC_0034.JPG

CX001_計數器報警程序.rar

32.28 KB, 下載次數: 19, 下載積分: 黑幣 -5

原理圖及PCB圖.rar

307.34 KB, 下載次數: 23, 下載積分: 黑幣 -5

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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