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

標(biāo)題: 智能熏蒸器51單片機(jī)代碼 [打印本頁]

作者: gongjx    時(shí)間: 2017-12-6 09:52
標(biāo)題: 智能熏蒸器51單片機(jī)代碼
include <reg52.h>
#include<intrins.h>
//
typedef unsignedchar  U8;       /* defined for unsigned 8-bits integervariable    無符號(hào)8位整型變量  */
typedefsigned   char  S8;      /* defined for signed 8-bits integer variable              有符號(hào)8位整型變量  */
typedef unsignedint   U16;      /* defined for unsigned 16-bits integervariable         無符號(hào)16位整型變量 */
typedefsigned   int   S16;     /* defined for signed 16-bits integer variable     有符號(hào)16位整型變量 */
typedef unsignedlong  U32;      /* defined for unsigned 32-bits integervariable        無符號(hào)32位整型變量 */
typedefsigned   long  S32;     /* defined for signed 32-bits integer variable     有符號(hào)32位整型變量 */
typedeffloat          F32;      /* single precision floating pointvariable (32bits) 單精度浮點(diǎn)數(shù)(32位長度) */
typedefdouble         F64;      /* double precision floating pointvariable (64bits) 雙精度浮點(diǎn)數(shù)(64位長度) */
//
#define ucharunsigned char
#define uintunsigned int
#define   Data_0_time    4
//----------------------------------------------//
//--------------步進(jìn)電機(jī)定義部分----------------//
//----------------------------------------------//
#define MotorDataP0                    //步進(jìn)電機(jī)控制接口定義
uchar phasecw[4]={0x08,0x04,0x02,0x01};//正轉(zhuǎn) 電機(jī)導(dǎo)通相序 D-C-B-A
uchar phaseccw[4]={0x01,0x02,0x04,0x08};//反轉(zhuǎn) 電機(jī)導(dǎo)通相序 A-B-C-D
uchar speed;
//----------------------------------------------//
//----------------IO口定義區(qū)--------------------//
//----------------------------------------------//
sbit  P1_0  =P1^0 ;
sbit  P1_1  =P1^1 ;
//----------------------------------------------//
//----------------定義區(qū)--------------------//
//----------------------------------------------//
U8  U8FLAG,k;
U8  U8count,U8temp;
U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;
U8  U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;
U8  U8comdata;
U16U16temp1,U16temp2;
//----------------------------------------------//
//--------------步進(jìn)電機(jī)正反轉(zhuǎn)控制----------------//
//----------------------------------------------//
//ms延時(shí)函數(shù)
voidDelay_xms(uint x)
{
uint m,n;
for(m=0;m<x;m++)
  for(n=0;n<112;n++);
}
//順時(shí)針轉(zhuǎn)動(dòng)
voidMotorCW(void)
{
uchar l;
for(l=0;l<4;l++)
  {
   MotorData=phasecw[l];
   Delay_xms(speed);//轉(zhuǎn)速調(diào)節(jié)
  }
}
//逆時(shí)針轉(zhuǎn)動(dòng)
voidMotorCCW(void)
{
uchar q;
for(q=0;q<4;q++)
  {
   MotorData=phaseccw[q];
   Delay_xms(speed);//轉(zhuǎn)速調(diào)節(jié)
  }
}
//停止轉(zhuǎn)動(dòng)
voidMotorStop(void)
{
MotorData=0x00;
}
void Delay(U16 j)
    {     U8 i;
          for(;j>0;j--)
         {      
              for(i=0;i<27;i++);
         }
    }
       void Delay_10us(void)
      {
        U8 i;
        i--;
        i--;
        i--;
        i--;
        i--;
        i--;
       }
      
void COM(void)
      {
     
              U8 i;
         
       for(i=0;i<8;i++)         
          {
              
                U8FLAG=2;   
            while((!P1_0)&&U8FLAG++);
                     Delay_10us();
                 Delay_10us();
                     Delay_10us();
                    U8temp=0;
           if(P1_0)U8temp=1;
                 U8FLAG=2;
               while((P1_0)&&U8FLAG++);
            //超時(shí)則跳出for循環(huán)           
             if(U8FLAG==1)break;
            //判斷數(shù)據(jù)位是0還是1      
               
              // 如果高電平高過預(yù)定0高電平值則數(shù)據(jù)位為 1
            
                U8comdata<<=1;
               U8comdata|=U8temp;        //0
           }//rof
         
       }
       //--------------------------------
       //-----濕度讀取子程序 ------------
       //--------------------------------
       //----以下變量均為全局變量--------
       //----溫度高8位==U8T_data_H------
       //----溫度低8位==U8T_data_L------
       //----濕度高8位==U8RH_data_H-----
       //----濕度低8位==U8RH_data_L-----
       //----校驗(yàn) 8位 ==U8checkdata-----
       //----調(diào)用相關(guān)子程序如下----------
       //---- Delay();, Delay_10us();,COM();
       //--------------------------------
       void RH(void)
       {
        //主機(jī)拉低18ms
       P1_0=0;
         Delay(180);
         P1_0=1;
        //總線由上拉電阻拉高 主機(jī)延時(shí)20us
         Delay_10us();
         Delay_10us();
         Delay_10us();
         Delay_10us();
        //主機(jī)設(shè)為輸入 判斷從機(jī)響應(yīng)信號(hào)
         P1_0=1;
        //判斷從機(jī)是否有低電平響應(yīng)信號(hào) 如不響應(yīng)則跳出,響應(yīng)則向下運(yùn)行      
         if(!P1_0)           //T !        
         {
         U8FLAG=2;
        //判斷從機(jī)是否發(fā)出 80us 的低電平響應(yīng)信號(hào)是否結(jié)束  
         while((!P1_0)&&U8FLAG++);
         U8FLAG=2;
        //判斷從機(jī)是否發(fā)出 80us 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài)
         while((P1_0)&&U8FLAG++);
        //數(shù)據(jù)接收狀態(tài)           
         COM();
         U8RH_data_H_temp=U8comdata;
         COM();
         U8RH_data_L_temp=U8comdata;
         COM();
         U8T_data_H_temp=U8comdata;
         COM();
         U8T_data_L_temp=U8comdata;
         COM();
         U8checkdata_temp=U8comdata;
         P1_0=1;
        //數(shù)據(jù)校驗(yàn)
         U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
         if(U8temp==U8checkdata_temp)
         {
              U8RH_data_H=U8RH_data_H_temp;
              U8RH_data_L=U8RH_data_L_temp;
               U8T_data_H=U8T_data_H_temp;
              U8T_data_L=U8T_data_L_temp;
              U8checkdata=U8checkdata_temp;
         }
         }
       }
      
//----------------------------------------------
//main()功能描述:  AT89C51 11.0592MHz    串口發(fā)
//送溫濕度數(shù)據(jù),波特率 9600
//----------------------------------------------
void main()
{
  while(1)
        {
     RH();
        while(U8T_data_H>0x23)
         {
              P1_1=0;
        for(k=0;k<100;k++)
                     {
                       Delay(6000);
                }
                     P1_1=1;
                     RH();
         }
        }
}



作者: gongjx    時(shí)間: 2017-12-6 09:53
實(shí)習(xí)代碼,請(qǐng)勿噴




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日韩av免费看 | 中文字幕国产一区 | 国产精品精品视频一区二区三区 | 黄色大片网 | 久久日韩精品一区二区三区 | 成人在线观看免费爱爱 | 精品免费国产一区二区三区 | 亚洲色视频 | 成人国产精品久久久 | 免费一区二区三区在线视频 | 欧美国产精品一区二区三区 | 综合久久av | 欧美激情精品久久久久久 | 中国一级特黄视频 | 中文字幕国产一区 | 99精彩视频 | 男女下面一进一出网站 | 最新一级毛片 | 久久精品国产免费一区二区三区 | 国产网站在线免费观看 | 久久久久久久久久久久久9999 | 日本天天操 | 欧美日韩高清一区二区三区 | 99精品国产一区二区三区 | 国产高清精品一区 | 在线国产一区二区 | 四虎免费视频 | 久久1区| 99久久精品国产一区二区三区 | 91精品久久久久久久久久 | 1区2区视频 | 色综合一区二区 | 国产亚洲精品精品国产亚洲综合 | 日韩欧美成人一区二区三区 | 毛片免费观看视频 | 久久一区二区三区电影 | 中国91av| 成年视频在线观看福利资源 | 在线成人免费观看 | 成人妇女免费播放久久久 | 天天拍天天操 |