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

標題: 求講解或者畫一下這個的工作流程圖給我,NRF905的發射段 [打印本頁]

作者: 226644    時間: 2020-3-7 21:31
標題: 求講解或者畫一下這個的工作流程圖給我,NRF905的發射段
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char

sbit DQ1=P2^0;       //傳感器A定義使用單片機P20端口
sbit DQ2=P2^1;       //傳感器B定義使用單片機P21端口
sbit DQ3=P2^2;       //傳感器C定義使用單片機P22端口
sbit DQ4=P2^3;       //傳感器D定義使用單片機P23端口                                               
sbit DQ5=P2^4;       //傳感器E定義使用單片機P24端口       
                                                                                                                                                               
unsigned char car_num=0;        //車位數值                                         
unsigned char Set_car_H=5;                 //設置車數數值
signed char   s_car_num=0;        //剩余車位數值             

uchar flag1,flag2;          //設置 2 個標志位
uchar flag3,flag4;          //設置 2 個標志位
uchar flag5,flag6;          //設置 2 個標志位
uchar flag7,flag8;          //設置 2 個標志位
uchar flag9,flag10;          //設置 2 個標志位

uchar N1=0,N11=0;                //有車或者沒有標志
uchar N2=0,N22=0;
uchar N3=0,N33=0;
uchar N4=0,N44=0;
uchar N5=0,N55=0;

#include"nrf905.c"

void  jishu();
void  campare_display();

void delay_us(uint z)                //延時
{
        uint a,b;
        for(a=z;z>0;z--)
        for(b=110;b>0;b--);       
}
///////////////////////////////////////////////////////////////                          
/******************主函數************************/
void main()
{

           uchar num;
           nRF905Init();   //NRF905的初始化
       Config905();           //配置無線模塊NRF905
           TxBuf[0]=1;          //模塊
            while(1)
            {                                                                                                                                                                                                                                                     
                                jishu();  //車位統計
                        campare_display();           //車位號識別
                                                                 
                            TxBuf[1]=car_num/10;//十位
                          TxBuf[2]=car_num%10;//個位                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
                            num++;
                                if(num==2){                 //模塊
                                                num=0;
                                                  TX(); //發送
                                }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                        
                  }                
}
void campare_display()        //比較
{

                   if((N1==1)||(N2==1)||(N3==1)||(N4==1)||(N5==1)) {
                               if(N1==1){
                                                   TxBuf[3]='A';
                                                  
                                          }
                                else{
                                                   TxBuf[3]=0;       
                                        }
                                        if(N2==1){

                                                        TxBuf[4]='B';
                                                       
                                        } else{

                                                        TxBuf[4]=0;       
                                        }
                                        if(N3==1){
       
                                                        TxBuf[5]='C';       
                                        } else{

                                                        TxBuf[5]=0;       
                                        }
                                        if(N5==1){

                                                        TxBuf[6]='D';               
                                        } else{

                                                        TxBuf[6]=0;
                                        }
                                        if(N4==1){
       
                                                        TxBuf[7]='E';               
                                        } else{

                                                        TxBuf[7]=0;
                                        }                                       
                          }         else{
//                                                Lcd_ShowSring(1,0,"     ");
                                       
                                }
                       
       

               
}

//****************************************************
void  jishu()          //統計車位數函數
{

        if(DQ1==0)                                  //車位1
        {
                delay_us(5);         //類似于去抖
                if(DQ1==0)
                {
                                flag1=1; //標志位flag1
                       
                }
        }
               
             if(flag1==1)//  flag1=1 傳感器A 紅外對管檢測到 說明有車
                  {
                                    delay_us(5);
                                        if(N1==0){                                               
                                          car_num++;         //車位數值加1
                                          N1=1;
                                         }                                          //
                                        flag1=0;          //清標志位
                                        flag2=1;          //啟動標志
                                        N11=0;
                               
                 }
                 if(DQ1==1&&flag2==1) {                 //否則檢測不到車

                          if(N11==0){                                               
                                                 car_num--;                //車位數值減1
                                                 TxBuf[3]=0;
                                                  N11=1;
                                         }
                     
                               N1=0;
                        }
////////////////////////////////////////////////////////////////////////////////////////////////////////////                               
        if(DQ2==0)                                 //車位2
        {
                delay_us(5);         //類似于去抖
                if(DQ2==0)
                {
                                flag3=1; ////標志位flag3
                       
                }

        }
               
             if(flag3==1)//  傳感器B  紅外對管檢測到 說明有車
                  {
                                    delay_us(5);
                                        if(N2==0){                                               
                                          car_num++;                   //車位數值加1
                                          N2=1;
                                         }                                         
                                        flag3=0;          //清空標志位
                                        flag4=1;           //啟動標志
                                        N22=0;
                               
                 }
                 if(DQ2==1&&flag4==1) {                 //否則檢測不到車

                          if(N22==0){                                               
                                                 car_num--;                         //車位數值減1
                                                 TxBuf[4]=0;
                                                  N22=1;
                                         }
                     
                               N2=0;
                        }       
/////////////////////////////////////////////////////////////////////////////////////////////////////////
    if(DQ3==0)                                //車位3
        {
                delay_us(5);         //類似于去抖
                if(DQ3==0)
                {
                                flag5=1; ////標志位flag5
                       
                }

        }
               
             if(flag5==1)//  傳感器C        紅外對管檢測到 說明有車
                  {
                                    delay_us(5);
                                        if(N3==0){                                               
                                          car_num++;                   //車位數值加1
                                          N3=1;
                                         }                                          //
                                        flag5=0;          //清空標志位
                                        flag6=1;          //啟動標志
                                        N33=0;
                               
                 }
                 if(DQ3==1&&flag6==1) {                  //否則檢測不到車

                          if(N33==0){                                               
                                                 car_num--;
                                                 TxBuf[5]=0;        //車位數值減1
                                                  N33=1;
                                         }
                     
                               N3=0;
                        }       
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    if(DQ4==0)                                                //車位4
        {
                delay_us(5);         //類似于去抖
                if(DQ4==0)
                {
                                flag7=1; ////標志位flag7
                       
                }

        }
               
             if(flag7==1)//  傳感器D   紅外對管檢測到 說明有車
                  {
                                    delay_us(5);
                                        if(N4==0){                                               
                                          car_num++;                  //車位數值加1
                                          N4=1;
                                         }                                          //
                                        flag7=0;          //清空標志位
                                        flag8=1;           //啟動標志
                                        N44=0;
                               
                 }
                 if(DQ4==1&&flag8==1) {                 //否則檢測不到車

                          if(N44==0){                                               
                                                 car_num--;                //車位數值減1
                                                 TxBuf[7]=0;
                                                  N44=1;
                                         }
                     
                               N4=0;
                        }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
         if(DQ5==0)                                        //車位5
        {
                delay_us(5);         //類似于去抖
                if(DQ5==0)
                {
                                flag9=1; //
                       
                }

        }               
             if(flag9==1)//  傳感器E   紅外對管檢測到 說明有車
                  {
                                    delay_us(5);
                                        if(N5==0){                                               
                                          car_num++;
                                          N5=1;
                                         }                                          //
                                        flag9=0;          //清空標志位
                                        flag10=1;           //啟動標志
                                        N55=0;
                               
                 }
                 if(DQ5==1&&flag10==1) {  //否則檢測不到車

                          if(N55==0){                                               
                                                 car_num--;        //車位數值減1
                                                 TxBuf[6]=0;
                                                  N55=1;
                                         }
                     
                               N5=0;
                        }         
}






歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一级片在线观看视频 | 成人动漫在线观看 | 亚洲国产欧美日韩在线 | 国产又色又爽又黄又免费 | 色婷婷国产精品综合在线观看 | av天天操 | 欧美成人综合 | 一级片网址 | 久久精品视频国产 | 国产精品视屏 | av高清在线| 欧美毛片基地 | 成年人午夜视频 | 成人黄色在线观看 | 伊人精品在线 | 黄色大片在线 | 四虎欧美 | 国产成人免费在线观看 | 国产精品久久久久久无人区 | 欧美a在线 | 精品久久网站 | 一区二区三区在线看 | 国产一级免费 | 97人人草| 99视频| 婷婷99 | a级黄毛片 | 日韩精品黄| 欧美综合一区二区三区 | 欧美成人激情 | 亚洲欧美精品一区 | 懂色av成人一区二区三区 | 天堂av资源| 99精品成人 | 国内精品视频在线观看 | 亚洲精品一二三 | 亚洲第一黄网 | 一级片在线观看视频 | 免费网站www | 亚洲a级片 | 欧美视频在线观看一区 |