主頁 >  其他 > 基于51單片機的洗衣機控制系統

基于51單片機的洗衣機控制系統

2020-12-05 14:27:57 其他

設計要求:
(1)設計一個電子定時器,控制洗衣機作如下運轉:定時啟動→正轉20s→暫停10s→反轉20s→暫停10s→定時未到回到"正轉20s-→暫停10s→反轉20s→暫…“定時到則停止轉動;
(2)若定時到,則停機發出音響信號;
(3)用兩個數碼管顯示洗滌的預置時間(分鐘數),按倒計時方式對洗滌程序作計時顯示,直到時間到停機;洗滌程序由“開始”信號開始;
(4)用三只LED燈表示"正轉”、“反轉”、“暫停"三個狀態,

文章目錄

  • 摘要
  • 引言
  • 1、設計方案的選擇
  • 2、硬體設計
    • 2.1 各單元模塊電路
    • 2.2 仿真結果及分析
  • 3、軟體設計
    • 3.1 系統流程圖
    • 3.2 系統程式部分
  • 4、識訓和總結
  • 5、元器件清單
  • 6、主要參考文獻資料


摘要

摘要: 根據洗衣機的控制要求,從功能要求、硬體設計、軟體設計三個方面描述了一個以AT89C51單片機為控制核心的洗衣機控制系統,給出了硬體線路框圖和相關的控制程式流程圖,
關鍵詞: AT89C51單片機;洗衣機控制系統;硬體;控制程式
Abstract: According to the washing machine control requirements, a control system with the AT89C51 SCMC as the core about washing machines were described in the following three aspects of functional requirements, hardware design, software design. The hardware circuit diagram and related control flow chart of the program were given.
Key words : AT89C51SCMC ; Washing machine control system ; Hardware ; Control program

引言

隨著單片機技術日新月異的發展,單片機以其集成度高、運算速度快、體積小、運行可靠、價格低廉等特點在程序控制、機電一體化、智能化儀表、家用電器等方面得到了廣泛應用,本文采用MCS-51單片機作為洗衣機控制系統的核心,硬體線路及控制程式的設計是該系統的重要組成部分,硬體線路設計主要包括電源、功能及控制系統、洗衣機狀態顯示、輸出控制電路的設計,控制程式設計主要包括主程式、內部定時中斷服務程式、外部中斷服務程式的設計,

1、設計方案的選擇

洗衣機控制電路是用來控制洗衣機電機的正轉反轉暫停三個狀態的,該電路可以控制洗衣機的定時啟動,洗衣機的作業狀態,而且當達到定時終點時會停止洗衣機作業同時發出報警信號,時間的顯示采用兩位數碼管(一分鐘為單位),按倒計時方式作業,直到達到定時終點而停機,
第一部分方案:本電路的計數系統因為要求實作倒計時,所以可以用雙向計數器74LS192或程式定時計數,根據自身情況,為減少制作成本和產品性價比,本設計采用程式定時計數的方法,
第二部分方案:顯示單元采用數碼管顯示或者LCD顯示,因設計要求采用兩位數碼管顯示,還有考慮到成本問題,本設計采用兩位數碼管作為顯示單元,
第三部分方案:主控制單元,采用STC89C52芯片或者AT89C51芯片作為硬體核心,STC89C52是一種帶4K位元組閃爍可編程可擦除只讀存盤器,采用Flash ROM,內部具有4KB ROM 存盤空間,能于3V的超低壓作業,而且與MCS-51系列單片機完全兼容,與工業標準的MCS-51指令集和輸出管腳相兼容,由于將多功能8位CPU和閃爍存盤器組合在單個芯片中,STC89C52是一種高效微控制器,51單片機為很多嵌入式控制系統提供了一種靈活性高且價廉的方案但是運用于電路設計中時由于不具備在線編程(ISP)技術,當在對電路進行除錯時,由于程式的錯誤修改或對程式的新增功能需要燒入程式時,對芯片的多次拔插可能對芯片造成一定的損壞,AT89C51跟STC89C52功能基本相同,但目前STC89C52型號芯片已經停產,所以此設計采用AT89C51作為主控芯片,
第四部分方案:報警的警鈴在作業時間結束后就會響起,但是根據實際情況不能一直的響下去,應此利用一個單穩電路,當暫穩態結束后就可以回到穩態,警鈴就不再響了,
綜上比較,本設計采用各分電路的最優化方案,

2、硬體設計

2.1 各單元模塊電路

定時顯示單元

此模塊選用兩個一位7段數碼管作為顯示,跟單片機的P0,P2相連接,

定時時長控制單元

此模塊作為洗衣機定時時間加、減,以及啟動洗衣機作業開關,用三個微動開關來控制,

單片機最小系統單元

此電路是單片機的最小系統,用來作為主控芯片,

電機狀態顯示單元

此模塊是電機運轉顯示正反轉以及停止狀態,

洗衣機運作單元

報警單元

此單元模塊用作定時結束洗衣機停止作業,發出報警信號,

2.2 仿真結果及分析

proteus仿真軟體采用直觀的圖形界面創建電路:在計算機螢屏上模仿真實實驗室的作業臺,繪制電路圖需要的元器件、電路仿真需要的測驗儀器均可直接從螢屏上選取;軟體儀器的控制面板外形和操作方式都與實物相似,可以實時顯示測量結果,proteus軟體帶有豐富的電路元件庫,提供多種電路分析方法,作為設計工具,它可以同其它流行的電路分析、設計和制板軟體交換資料,EWB還是一個優秀的電子技術訓練工具,利用它提供的虛擬儀器可以用比實驗室中更靈活的方式進行電路實驗,仿真電路的實際運行情況,熟悉常用電子儀器測量方法,可用proteus仿真軟體對各單元電路和整體電路進行元器件仿真和運行仿真,便于對設計方案的理解和分析,
用proteus仿真的總圖如圖 2.2所示

3、軟體設計

3.1 系統流程圖

3.2 系統程式部分

/******************************************************************************************************************************
 ******************************************************************************************************************************/
//----------------------------------------------------------------------------------------------------------------------------//
//																				                                              //
//標題:基于51單片機的洗衣機控制系統									 									 					  //			                                                                                                                        //
//創建人:朽木自雕i		 1547013894@qq.com														 							  //
//日期:2020/11/14					修改日期:2020/11/15													 	            	  //
//描述:																										 									 	 
//     設計要求:
//      (1)設計一個電子定時器,控制洗衣機作如下運轉:定時啟動→正轉20s→暫停10s→反轉20s→暫停10s→定時未到
//         回到"正轉20s-→暫停10s→反轉20s→暫.......“定時到則停止轉動;
//		(2)若定時到,則停機發出音響信號;
//		(3)用兩個數碼管顯示洗滌的預置時間(分鐘數),按倒計時方式對洗滌程序作計時顯示,直到時間到停機;洗滌
//         程序由“開始”信號開始
//		(4)用三只LED燈表示"正轉”、“反轉”、“暫停"三個狀態,
//
//宣告:									 									 									 									 
//      以下代碼僅免費提供給學習用途,但參考或修改后必須在檔案中宣告出處,		 					          	                   //
//      如有商業用途請與作者聯系,																					           //
//																													  		   //				 	                                                            
//-----------------------------------------------------------------------------------------------------------------------------//
#include"reg51.h"//此檔案中定義了單片機的一些特殊功能暫存器
void DelayMs(unsigned int x);//延時函式宣告
unsigned char code Ledcode[16]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};//定義字符型陣列
unsigned int i,j,disp;//定義兩個無符號整型變數i 和 disp
sbit K1=P3^5;
sbit K2=P3^6;
sbit K3=P3^7;
sbit MA   = P1^3;
sbit MB   = P1^4;
sbit LED1 = P1^5;
sbit LED2 = P1^6;
sbit LED3 = P1^7;
sbit BEEP=P2^7;
void DelayMs(unsigned int x)//定義延時函式
{
	unsigned char i;
	while(x--)
	{
		for(i=0;i<120;i++);//大約1ms
	}
}
void Beep()
{
	BEEP=~BEEP;
	DelayMs(3000);
	BEEP=1;
}
void zheng()          //模擬電機正反向轉動大概20S鐘
{
	for(i=0;i<20;i++)
	{
		DelayMs(800);//延時1s
		LED1 = 0;
		LED2 = 1;
		LED3 = 1;
		MA   = 0;
		MB   = 1;
	}
}
void fan()            //模擬電機反反向轉動大概20S鐘
{	
	for(i=0;i<20;i++)
	{
		DelayMs(800);//延時1s
		LED1 = 1;
		LED2 = 0;
		LED3 = 1;
		MA   = 1;
		MB   = 0;
	}
}
void ting()           //模擬電機停止轉動大概10S鐘
{
	for(i=0;i<10;i++)
	{
		DelayMs(800);//延時1s
		LED1 = 1;
		LED2 = 1;
		LED3 = 0;
		MA   = 0;
		MB   = 0;
	}
}
void keyscan()
{
	if(K1==0)
	{
		DelayMs(5);
		if(K1==0)
		{
			for(j=disp;j>0;j--)
			{
				zheng();
				ting();
				fan();
				ting();
				disp--;
				P0=Ledcode[disp/10%10];//把十位數的值賦給P2口,即第一位數碼管
				P2=Ledcode[disp%10];	//把個位數的值賦給P3口,即第二位數碼管	
				if(disp==0)
				{
					Beep();
				}
			}
		}
	}
	else if(K2==0)
	{
		DelayMs(5);
		if(K2==0)
		{
			disp++;
			P0=Ledcode[disp/10%10];//把十位數的值賦給P2口,即第一位數碼管
			P2=Ledcode[disp%10];	//把個位數的值賦給P3口,即第二位數碼管
			if(disp==90)     //最多定時90分鐘,即1.5小時
			{
				disp=0;
			}
		}
		while(!K2);
	}
	else if(K3==0)
	{
		DelayMs(5);
		if(K3==0)
		{
			disp--;
			P0=Ledcode[disp/10%10];//把十位數的值賦給P2口,即第一位數碼管
			P2=Ledcode[disp%10];	//把個位數的值賦給P3口,即第二位數碼管
			if(disp==0)
			{
				disp=91;     //最多定時90分鐘,即1.5小時
			}
		}
		while(!K3);
	}
}

void main()
{
	disp=15;
	P0=Ledcode[disp/10%10];//把十位數的值賦給P2口,即第一位數碼管
	P2=Ledcode[disp%10];	//把個位數的值賦給P3口,即第二位數碼管
	while(1)
	{	
		keyscan();
	}
}

4、識訓和總結

課程設計是一個探索與實踐的程序,雖然我們沒有用實際電路來連接除錯,但是由于現在的軟體功能強大,用軟體來仿真也是很好的方法,
雖然在設計的程序中遇到了這樣或那樣的困難,但是通過示波器的波形分析,電路的不斷改進,困難都一一的克服了,我認為我們在設計的程序中不僅是熟悉了軟體的用法,更重要的是學會了設計的方法以及設計的精神,當然說設計的精神似乎有點不恰當,但我認為設計就是一種精神意志的磨練,我曾多次想放棄,想直接去抄襲別人的,但是始終有一股精神支撐著我——課程設計是鍛煉的機會,是對將來作業的一種積累,糊弄只會是害了自己,于是我硬著頭皮把電路拆了又接接了又拆,雖然很麻煩,也很頭疼(到處是線,看的眼睛都花了),不過也是有樂趣在其中的,每當解決一個問題,或者一部分電路實作了其作業都感覺到很高興,這些細小的成功帶給我完成整個設計的力量,于是通過不斷的除錯,不斷的改進終于是把電路弄出來了,雖然我設計出的這個電路能夠作業,不過在有些地方還是不夠很好的,但是我還是堅持自己原創,比方說,彩燈顯示回圈控制部分,如果用一個譯碼器的話很簡單的就實作了,不過我還是采用了門電路來搭建,一來是我自己設計的,而來也是復習一下組合邏輯電路的設計,還有BO的置數問題,我幾乎是頭疼了很長時間,后來大家一起討論,用示波器觀察波形,才知道了原因,然后加以改進,這里我體會到了團結協作的力量,我們將來出去作業也是一個個的團隊,自己是團隊中的一員,既要獨立思考努力為團隊作出貢獻也要從團隊中吸收經驗,
總而言之,受益匪淺,在知識水品上學到了數字電路的知識,體會到了數字電路的巧妙;但更重要的是學會了方法,學會了堅韌,相信只要具備正確的設計方法和堅忍不拔的拼搏意志無論多么復雜多么龐大的電路都會設計的出來!

5、元器件清單

6、主要參考文獻資料

[1] 李朝青.單片機原理及介面技術(簡明修訂版)[M].北京:北京航空航天大學出版社,1998.
[2] 李全利.單片機原理及介面技術[M].高等教育出版社,2003.
[3] 楊將新,李華軍,劉到駿等.單片機程式設計及應用(從基礎到實踐)[J].電子工業出版社,2006.
[4] 黃智偉.全國大學生電子設計競賽訓練教程[M].北京:電子工業出版社, 2005.
[5] 陳有卿.集成電路妙用巧用300例.北京:人民郵電出版社,1999.
[6] 陳安凱.最新集成電路資料手冊.北京:人民郵電出版社,1996.
[7]瞿安連.應用電子技術.北京:科學出版社,2003.

創作不易,分享更需勇氣! 喜歡的可以給點個 ?贊? 嗎?歡迎評論區留言交流~

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/230357.html

標籤:其他

上一篇:ROS2機器人筆記20-12-04

下一篇:學習linux,你會選擇STM32MP157開發板嗎?(ST官網23講課程分享)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more