找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2342|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

沖壓車床51單片機(jī)自動(dòng)關(guān)閉電動(dòng)機(jī)程序+PCB電路

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
可以做到在自動(dòng)車床停止工作一段時(shí)間后,把電動(dòng)機(jī)關(guān)閉,用以節(jié)省電能,延時(shí)關(guān)閉時(shí)間可控,數(shù)碼管顯示控制時(shí)間,單片機(jī)工作狀態(tài)有數(shù)碼管顯示
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)


單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #include<intrins.h>
  3. unsigned char yanshishu,xianshishu,yanshishu2,xianshishu2,qqq;

  4. sbit kaiqi=P1^0;//    自動(dòng)關(guān)閉啟動(dòng)開關(guān)
  5. sbit stop=P1^1;//    連動(dòng)停止檢測
  6. sbit ka=P1^2;        // 繼電器輸出
  7. sbit on=P1^3;  //  電源狀態(tài)指示
  8. sbit off=P1^4; //        工作狀態(tài)指示
  9. code unsigned char dis1[]={0xc0,0xf9,0xa4,
  10. 0xb0,0x99,0x92,0x83,0xf8,0x80,0x98};//數(shù)碼管顯示碼
  11. void csh(void)
  12. {
  13.         IT0=1;
  14.         IT1=1;
  15.         EX0=1;
  16.         EX1=1;
  17.         EA=1;
  18. }




  19. void delay(unsigned int amt)                //@12.000MHz
  20. {                unsigned int w;         

  21. unsigned char i, j, k;
  22.     for(w=amt;w>0;w--)
  23.        
  24.         {
  25.         _nop_();
  26.         i = 8;
  27.         j = 154;
  28.         k = 122;
  29.         do                         
  30.         {
  31.                 do
  32.                 {
  33.                         while (--k);
  34.                 } while (--j);
  35.         } while (--i);
  36.           if(kaiqi==0)
  37. {
  38. on=0;
  39. off=1;
  40. }
  41. if(kaiqi==1)
  42. {
  43. on=1;
  44. off=0;
  45. }
  46.    }

  47. }



  48.                

  49. void main()
  50. {  csh();
  51. yanshishu=1;  
  52.         xianshishu=1;
  53.         yanshishu2=0;  
  54.         xianshishu2=0;
  55.         P2=dis1[xianshishu2];
  56.                 P0=dis1[xianshishu];
  57.         while(1)
  58.         {        kaiqi=1;
  59.             stop=1;
  60.                 ka=1;
  61.                           if(kaiqi==0)
  62. {
  63. on=0;
  64. off=1;
  65. }
  66. if(kaiqi==1)
  67. {
  68. on=1;
  69. off=0;
  70. }
  71.              if(kaiqi==0)
  72.                  {                   if(kaiqi==0)
  73. {                                         
  74. on=0;
  75. off=1;
  76. }
  77. if(kaiqi==1)
  78. {
  79. on=1;
  80. off=0;
  81. }
  82.                           delay(3);
  83.                           if(stop==0)
  84.                           {
  85.                                qqq=yanshishu2*60+yanshishu*10;
  86.                                         delay(qqq);
  87.                                    if(stop==0)
  88.                                    {
  89.                                        ka=0;
  90.                                           
  91.                                            delay(3);
  92.                                            ka=1;
  93.                                    }
  94.                           }
  95.                  }
  96.         }
  97. }
  98. void wzd0(void) interrupt 0
  99. {
  100.     yanshishu++;  
  101.         xianshishu++;
  102.         P0=dis1[xianshishu];
  103.         if(xianshishu==7)
  104.         {
  105.            xianshishu=1;
  106.            yanshishu=1;
  107.         }

  108. }
  109. void wzd1(void) interrupt 2
  110. {
  111.    yanshishu2++;xianshishu2++;
  112.    P2=dis1[xianshishu2];
  113.            if(xianshishu2==10)
  114.         {
  115.            xianshishu2=0;
  116.            yanshishu2=0;
  117.         }       
  118. }
復(fù)制代碼

所有資料51hei提供下載:
關(guān)沖床.zip (755.97 KB, 下載次數(shù): 15)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

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

使用道具 舉報(bào)

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表