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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

我的一個涉及單片機計數的程序不工作,求指導

[復制鏈接]
跳轉到指定樓層
樓主
ID:546916 發表于 2019-5-25 14:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我的一個涉及計數的程序不工作,求指導
/*--------------------------------------------------------------------------------------
                文件:        Main.c
                        
--------------------------------------------------------------------------------------*/

#include "50js_STC89.H"                // STC89系列單片機頭文件
#include "50js_Type.h"                // 數據類型聲明頭文件
#include "50js_Board.h"                // 按鍵引腳定義及相關功能頭文件
#include "50js_Si24R1.h"        // Si24R1無線數傳模塊驅動頭文件

uint8 key_down=0;                    // 按鍵按下標志.為0時代表沒有按鍵按下,為1時代表已有按鍵按下.
uint8 key_code=0;                    // 按鍵編號,為0時無按鍵按下.
int relay=0;
//int time1=0;
int time;
int z=0;
int u=0;
int w;
int time1;



// 函數: Soft_Dly()
// 描述: 軟件延時
// 參數: 無
void Soft_Dly(uint8 i)
{
          while(i--);
}
void delay(unsigned int k)
{
    unsigned int j;
    for(;k>0;k--){
    for(j=0;j<5;j++)
        {;}
        }
}
// 函數:自擺
// 描述: 回轉電機左轉,同時計數變量開始計數。按鍵放開,電機回轉,計數變量減1,到0,又反轉,直至J7、J8任一鍵按下,這個過程停止。
// 參數: 無
void swing(int x,int y)
{  
   
   int z1=1;
   int ct=1;
   int i=0;
   int h=1;
   int g=1;
   
   w=x;
  
   time1=y;
   TMOD=0x60;
   TH1=0xff;
   TL1=0xff;
   TF1=0;
   TR1=1;
   while(z1)
   {
     time1=y;
         g=1;
     switch(w)
            {
              case 15:{J5=0;delay(100);J6=1;delay(100); break;}
                  case 16:{J6=0;delay(100);J5=1;delay(100); break;}
            }               
                        for(i=1;i<=time1;i++)
                        {
                         TR1=1;
                         while(!TF1);
                         delay(10);
                         TF1=0;
                         delay(10);        
                        }
        
          if(ct==1)
            {  
                  if(y==16)y=15;              
                  else y=16;                  
                  delay(1000);
                }
         }
}
// 函數: right_swing()
// 描述: 使M1電機右轉動并受控制
// 參數: 無

void  right_swing()
{
     J5=0;
     J6=1;
         z=1;
         time=0;
         TMOD=0x60;
         TH1=0xff;
         TL1=0xff;
         TF1=0;
         TR1=1;
     while(z)
         {
           if(sR1_Check_IRQ(sR1_RX_Buff)){
                           relay=sR1_RX_Buff[0];        
                           if(relay!=0)
                    {
                          while(!TF1);
                          delay(10);
                          TF1=0;
                          delay(10);
                      time++;
                                             
                    }else
                          {        //time=50;
                            swing(16,time);z=0;
                          }
                 }
         }
}
                  


// 函數: left_swing()
// 描述: 使M1電機左轉動并受控制
// 參數: 無
void left_swing()
{
     J6=0;
     J5=1;
         time=0;
         z=1;
         TMOD=0x60;
         TH1=0xff;
         TL1=0xff;
         TF1=0;
         TR1=1;
         while(z)
         {
           if(sR1_Check_IRQ(sR1_RX_Buff)){
                   relay=sR1_RX_Buff[0];        
          if(relay!=0)
                      {
                                 while(!TF1);
                                 delay(10);
                                 TF1=0;
                                 delay(10);
                         time++;
                          }                                 
                  else{swing(15,time);z=0;}
       }
        }
}

// 函數: LED_Show()
// 描述: 點亮相應的LED
// 參數: kc        編碼信息
void LED_Show(uint8 kc)
{
        
        if(kc!=0)
        {
           switch (kc)                                                                             // 根據編碼執行相應動作
            {
                case 1:J2=0;J1=1;break;                                                     // P2^5        口置1,繼電器J1動作,M1電機正轉
                case 2:J1=0;J2=1;break;                                                     // P2^4        口置1,繼電器J2動作,M1電機反轉
                case 3:if(P13==0)break;else{J4=0;J3=1;break;}         // P2^3        口置1,繼電器J3動作,M2電機正轉
                case 4:if(P14==0)break;else{J3=0;J4=1;break;}         // P2^2        口置1,繼電器J4動作,M2電機反轉
                case 5:J6=0;J5=1;break;                                                     // P2^1        口置1,繼電器J5動作,M3電機正轉
                case 6:J5=0;J6=1;break;                                                     // P2^0        口置1,繼電器J6動作,M3電機反轉
                case 7:left_swing();break;                                                 // 編碼3=點亮LED3
                case 8:right_swing();break;                                                 // 編碼3=點亮LED3
        }
         }else
         {
              J1=0;J2=0;J3=0;J4=0;J5=0;J6=0;J7=0;J8=0;                 // 熄滅全部指示燈
         }
        
}

void main(void)
{
        
        Soft_Dly(100);                                                                                // 等待Si24R1模塊上電并穩定
        J1=0;J2=0;J3=0;J4=0;J5=0;J6=0;J7=0;J8=0;
        P34=1;
        sR1_Init_IO();                                                                                // 初始化Si24R1模塊IO
        sR1_Turn_RX();                                                                                // 初始化Si24R1,并將其設置為接收模式
        TMOD=0x60;
        TH1=0xff;
        TL1=0xff;
        TF1=0;
        TR1=1;
        while(1){
                if(sR1_Check_IRQ(sR1_RX_Buff)){                             // 檢查IRQ引腳狀態
                    relay=sR1_RX_Buff[0];                                                  // 接收處理
                        LED_Show(relay);                                       
                }
               
        }
}

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一级二级三级视频 | 亚洲欧美日韩在线不卡 | 91精品国产91久久久久久 | 成人在线精品视频 | 国产精品免费一区二区三区四区 | www.97zyz.com | 高清欧美性猛交xxxx黑人猛交 | 久久青视频 | 成人av大全 | 亚洲欧美一区二区三区国产精品 | 成人日韩 | 99在线免费视频 | 激情六月丁香 | 男女羞羞的网站 | 81精品国产乱码久久久久久 | 黑人巨大精品欧美一区二区免费 | 国产在线观看免费 | 国产a视频 | 国产欧美日韩在线播放 | 色爱综合网 | 欧美专区日韩 | 中文在线一区 | 日韩一级一区 | 久久久久久久久久久爱 | aa级毛片毛片免费观看久 | 99久久久99久久国产片鸭王 | 国产色网 | 日韩波多野结衣 | 成人黄色电影在线播放 | 国产a区 | 日本精品免费在线观看 | 嫩草懂你的影院入口 | 在线播放中文字幕 | 成人免费视频 | 亚洲国产精品视频一区 | 91久久综合亚洲鲁鲁五月天 | 天天色天天色 | 国家aaa的一级看片 h片在线看 | 日本中出视频 | 日韩在线精品视频 | 精品久久国产 |