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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1638|回復: 10
收起左側

在一組在充電中的電池中逐個的找出單個電池的上下閥值,單片機P3口輸出相關的數據

[復制鏈接]
ID:242464 發表于 2021-12-8 12:21 | 顯示全部樓層 |閱讀模式
  大家好,本人是一個接觸C51時間不長的小白。今天做了個程序,下面的是其中的子程序。功能是在一組在充電中的電池中逐個的找出單個電池的上下閥值,然后從P3口輸出相關的數據控制執行電路運作。其中所有的變量都是全局變量,目前執行的結果是繼電器閃動一下就再也不動了,顯示是進入了“均衡”請各位論壇里的老師幫看看問題出在什么地方。均衡控制程序是直接在主程序下運行的,各變量也查了沒有沖突。

單片機源程序如下:
  1. voidjhkzcx()               //均衡控制程序/*
  2.          
  3.           {
  4. //z=a;
  5.       x=k1;
  6.       y=g1;
  7.       y0=y1;
  8.       V0=V1;
  9.       z0=0x01;
  10.       h0=0x1e;
  11.       bj();
  12.       y1=y0;             //y0要升級為全局變量???????
  13.       g1=y;
  14.       k1=x;
  15. //a=z;
  16.       
  17.       x=k2;
  18.       y=g2;
  19.       y0=y2;
  20.       V0=V2;
  21.       z0=0x02;
  22.       h0=0x1d;
  23.       bj();
  24.       y2=y0;
  25.       g2=y;
  26.       k2=x;
  27.       
  28.       x=k3;
  29.       y=g3;
  30.       y0=y3;
  31.       V0=V3;
  32.       z0=0x04;
  33.       h0=0x1b;
  34.       bj();
  35.       y3=y0;
  36.       g3=y;
  37.       k3=x;
  38.       
  39.       x=k4;
  40.       y=g4;
  41.       y0=y4;
  42.       V0=V4;
  43.       z0=0x08;
  44.       h0=0x17;
  45.       bj();
  46.       y4=y0;
  47.       g4=y;
  48.       k4=x;
  49.      
  50.       x=k5;
  51.       y=g5;
  52.       y0=y5;
  53.       V0=V5;
  54.       z0=0x10;
  55.       h0=0x0f;
  56.       bj();
  57.       y5=y0;
  58.       g5=y;
  59.       k5=x;
  60.       
  61.       _nop_();
  62.       P3=z&h;      //???
  63.       if(z>0x00)
  64.         {
  65.           LCDTestWord(0,0x98);
  66.           LCDSendWord("均衡");  
  67.          // _nop_();
  68.           P3=z&h;
  69.          // _nop_();
  70.           DelayMs(5000);
  71.         }
  72.       else
  73.             Holidays();        //顯示“充電”
  74.       }
  75. voidbj()   //比較程序
  76. {
  77. if(y0==0)
  78.     {
  79.       if(V0>=1460 )   
  80.            {   
  81.             y++;
  82.             if(y>=20)//第一個電池電壓值大于14.60V的檢測次數是否超過20次,而且繼電器從未吸動過
  83.                  {
  84.                    y0=1; //第一個繼電器的吸動標志位置1
  85.                    z=z+z0; //第一個繼電器的工作條件
  86.                    y=0;
  87.                  }
  88.                 else
  89.               _nop_();
  90.            }
  91.           else
  92.            _nop_();
  93.     }
  94. else
  95.     {
  96.            if(y0>0)
  97.                {
  98.               if(V0<=1430 )   
  99.                      {
  100.                       x=x+1;
  101.                        if(x>=50)
  102.                            {
  103.                               y0=0;
  104.                             h=h&h0;
  105.                               x=0;
  106.                            }
  107.                          else      
  108.                         _nop_();
  109.                       }
  110.                   else      
  111.                   _nop_();
  112.                }
  113.       else      
  114.      _nop_();
  115.     }
  116.   }
復制代碼
回復

使用道具 舉報

ID:8222 發表于 2021-12-8 18:29 | 顯示全部樓層
Z是什么變量?從頭到尾沒有看到Z被賦值。
回復

使用道具 舉報

ID:242464 發表于 2021-12-8 19:53 | 顯示全部樓層
h的初始值是FF,其他的初始值為0
回復

使用道具 舉報

ID:242464 發表于 2021-12-8 19:58 | 顯示全部樓層
h的初始值是FF,其他變量的初始值是0。V1~V5是實測值。
回復

使用道具 舉報

ID:908826 發表于 2021-12-8 21:46 | 顯示全部樓層
老兄你這個程序實在是有點讓人費解哎。
回復

使用道具 舉報

ID:624769 發表于 2021-12-8 23:44 | 顯示全部樓層
先確認一件事, 你這代碼, 編譯通過了么?
回復

使用道具 舉報

ID:242464 發表于 2021-12-9 20:01 | 顯示全部樓層
Z全局變量,類型CHAR初始值是0根據程序IF的結果是否賦值。編譯通過。我不知什么地方有令人費解的。就因本人查不出原因
回復

使用道具 舉報

ID:242464 發表于 2021-12-9 20:05 | 顯示全部樓層
就因為是通過了編譯,燒進片子才知道繼電器閃動一下就再也不動了
回復

使用道具 舉報

ID:242464 發表于 2021-12-9 20:16 | 顯示全部樓層
這幾天都要崩潰了
回復

使用道具 舉報

ID:743654 發表于 2021-12-10 11:26 | 顯示全部樓層
貌似變量很多,摸不著頭腦
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一区二区三区国产好 | 天天av天天好逼 | 亚洲一区 | 日韩高清国产一区在线 | 91精品一区二区三区久久久久久 | 国产亚洲精品精品国产亚洲综合 | 日韩成人在线播放 | 97精品国产97久久久久久免费 | 精品国产一区二区在线 | 天天干夜夜操 | 成人免费观看视频 | 欧美日韩在线一区二区 | 国产a区| 羞视频在线观看 | 国产精品久久久久久久久久久久久久 | 中文字幕一区二区三区四区不卡 | 在线免费观看a级片 | 国产高清一区二区 | 激情毛片 | 欧美日韩高清一区 | 久久久久久久久久久久久久国产 | 久久人体 | 国产高清一区二区三区 | 午夜网| 久久av网站 | 成人精品啪啪欧美成 | 亚洲视频三区 | 欧美99| 午夜丁香视频在线观看 | 欧美成人免费在线视频 | 中文字幕日韩三级 | 国产成人精品一区二区三区四区 | 国内精品视频一区二区三区 | 成人一区二区三区在线 | 特级做a爰片毛片免费看108 | 成人免费看黄 | 丁香六月伊人 | 在线播放中文字幕 | 国产一区二区在线播放 | 久久91 | 欧美久久久久久久 |