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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

制作個有反充功能的點焊機 單片機仿真演示程序!

[復制鏈接]
跳轉到指定樓層
樓主
本帖最后由 qq88046220 于 2022-2-6 22:55 編輯

現在不能出門,做個多功能的點焊機+升壓反充+汽車啟動點焊時間根據大家用的單片機自行調試,充電可以自行用ADC檢測開關EN腳也可以根據法拉電容容量改一下時間!仿真演示只寫了一個延時程序!代碼雖然有點亂,學習過程中至少實現了所需要的功能!自己過年學習了51黑論壇的各種帖子純手工碼的!
S1升壓充電鍵,EN升壓模塊開關。 點焊機 反充啟動器.zip (50.15 KB, 下載次數: 14)
S2放電并開啟OUT,
S3沒用NC,
S4脈沖時間調整,
S5點焊觸發。
對于LED可以用P0=0xff;表示,代碼會更短,只是那樣跟我一樣的小白可能就看不懂了!


單片機功能演示程序如下:
#include<reg52.h>
#include <intrins.h>

sbit S1=P3^7;   
sbit S2=P3^6;
sbit S3=P3^5;
sbit S4=P3^4;
sbit S5=P1^7;

sbit LED1=P0^0;
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;

sbit LED5=P0^4;
sbit LED6=P0^5;
sbit LED7=P0^6;

sbit OUT=P1^5;
sbit EN=P1^6;
unsigned char XX;
unsigned int OO=0;
void dianhan();

void delay(xms)
{
unsigned char i,j;
        while(xms--)
        {
        i=12;j=169;
                do
                {
                while(--j);
                }while(--i);
        }
}

void dianhan()//S4選擇脈沖時間
{
if(S4==0)
        {
                                delay(10);
                                if(S4==0)
                                 LED6=0;
                                        {
                                        OO++;
                                        if(OO==8)
                                        OO=0;
                                        }
        while(!S4);
                                       
        }
                                 if(OO==0)  
          {
                                        XX=0;LED1=1;LED2=1;LED3=1;LED4=1;
          }
        if(OO==1)  
          {
                                        XX=1;LED1=1;LED2=1;LED3=1;LED4=0;
          }
                                if(OO==2)  
          {
                                        XX=2;LED1=1;LED2=1;LED3=0;LED4=1;
          }       
                                if(OO==3)  
          {
                                        XX=5;LED1=1;LED2=0;LED3=1;LED4=1;
          }       
                                if(OO==4)  
          {
                                        XX=10;LED1=0;LED2=1;LED3=1;LED4=1;
          }       
                                if(OO==5)  
          {
                                        XX=20;LED1=0;LED2=1;LED3=1;LED4=0;
          }       
                                if(OO==6)  
          {
                                        XX=30;LED1=0;LED2=1;LED3=0;LED4=0;
          }                       
                                if(OO==7)  
          {
                                        XX=50;LED1=0;LED2=0;LED3=0;LED4=0;
          }                                                      
}

void main(void)
{
          while(1)
     {
                         dianhan();//PUL
       if(S1==0)  //S1充電
                         {
                                 delay(10);
                                 if(S1==0)
            {
              EN=0;LED7=0;LED6=1;
                                                        LED1=0;LED2=1;LED3=1;LED4=1;delay(500)EN=1;LED7=1;
            }
                                        }
                         if(S2==0)//S2放電
                         {
                                 delay(10);
                                 if(S2==0)
            {
                                                        OUT=0;LED5=0;LED6=1;
                                                        LED1=0;LED2=0;LED3=0;LED4=0;delay(500);OUT=1;LED5=1;
            }
                                        }
                                 if(S5==0)//點焊觸發
                         {
                                 delay(1);
                                 if(S5==1)
            {
              OUT=0;delay(1*XX);OUT=1;delay(10);//雙脈沖輸出
        OUT=0;delay(1*XX);OUT=1;
            }
                                        }
                 }
   }








15W408.jpg (449.27 KB, 下載次數: 121)

電路圖

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

使用道具 舉報

沙發
ID:857072 發表于 2022-1-20 23:37 來自手機 | 只看該作者
看到大堆的Delay_ms(9000);Delay_ms(2000);這要是能跑才怪了。
回復

使用道具 舉報

板凳
ID:23606 發表于 2022-1-21 06:20 | 只看該作者
死循環的現象指的是哪些?
回復

使用道具 舉報

地板
ID:844772 發表于 2022-1-21 08:35 | 只看該作者
unsigned int mosi=3;//計數變量 把3改成0.
回復

使用道具 舉報

5#
ID:213173 發表于 2022-1-21 09:25 | 只看該作者
樓主這代碼實在是不......。既然選定用STC15W408AS,建議增加點元件,用數碼管顯示電池電壓、設置脈沖寬度。以便監測電池電量,任意選擇點焊時長。并把調節數據保存在EEPROM中。
回復

使用道具 舉報

6#
ID:161164 發表于 2022-1-21 13:19 | 只看該作者
if(mosi==3)          //點焊模式
/**********************************************************/
        if(MODE==0)
        {
                Delay_ms(10);
                if(MODE==0)
                {
                mosi++;
                if(mosi==4)//<<<<<<<<<<<<<<<<<<改為4
                mosi=0;
        }
回復

使用道具 舉報

7#
ID:216120 發表于 2022-2-7 20:03 | 只看該作者
glinfei 發表于 2022-1-21 08:35
unsigned int mosi=3;//計數變量 把3改成0.

這個操作是正確的!改后就OK了!
回復

使用道具 舉報

8#
ID:216120 發表于 2022-2-7 20:05 | 只看該作者
wulin 發表于 2022-1-21 09:25
樓主這代碼實在是不......。既然選定用STC15W408AS,建議增加點元件,用數碼管顯示電池電壓、設置脈沖寬度 ...

參考了你的方法,申明了一個變量,設置變量值就實現了,多謝!
回復

使用道具 舉報

9#
ID:216120 發表于 2022-2-18 22:20 | 只看該作者
這前是這樣寫的LED流水:
                        LED1=1;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=0;delay(50);
                        LED1=1;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=0;delay(50);
                        LED1=1;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=0;delay(50);
                        LED1=1;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=0;delay(50);

找了個方法可以這樣寫:

void CHG_LED()       //LED子程序
{
        char aa;     //變量aa
                for(aa = 0; aa <= 10; aa ++)   //運行10次
                        {
                        LED1=1;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=1;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=1;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=1;delay(200);
                        LED1=0;LED2=0;LED3=0;LED4=0;delay(50);       
                        }
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品无码久久久久久国产 | 成人无遮挡毛片免费看 | 99热这里都是精品 | 欧美亚洲免费 | 亚洲欧美精品一区 | 一区二区免费在线观看 | 国产精品日韩欧美一区二区三区 | 亚洲精品福利在线 | 天天干天天爽 | 日韩不卡一二区 | 无码日韩精品一区二区免费 | 国产免费观看久久黄av片涩av | 国产一区二区在线免费观看 | 日韩一级免费观看 | 伊人伊成久久人综合网站 | 99久久99| 久久精品国产一区二区电影 | 美国黄色毛片 | 一级片aaa| 日韩精品一区二区三区视频播放 | 亚洲成人免费在线 | 精品欧美一区二区三区久久久 | 日韩欧美在线观看 | 99久久精品国产一区二区三区 | 欧美一级在线免费 | 欧美一级片在线看 | 国产性网| 精品久| 天天看天天爽 | 伊人网影院| 在线免费观看a级片 | 日韩精品久久一区二区三区 | 免费观看日韩精品 | 国产精品国产三级国产aⅴ原创 | 成人视屏在线观看 | 国产成人免费视频网站高清观看视频 | 欧美中文字幕一区二区三区亚洲 | 国产精品久久久久久久免费观看 | 中文字幕精品视频 | 欧洲视频一区 | 亚洲综合资源 |