馮禮益++王來志
摘 要:此設計采用AT89S51單片機作為微控制器,采用按鍵和無線遙控兩種控制方式,用解碼芯片SC2262/SC2272組成無線發(fā)送接收模塊;通過控制直流電機的正反轉來控制窗簾的開關,并且可以指示運行狀態(tài),利用限位開關來控制窗簾停止,防止過卷。
關鍵詞:遙控窗簾;圖書館;AT89S52
隨著生產(chǎn)力發(fā)的高速發(fā)展,人們物質條件的不斷改善,人們對家庭生活條件的要求越來越高,為了生活的更加舒適,對窗簾的操作便利性提出更高要求。窗簾的基本作用是遮陽及保護戶主的個人隱私,但傳統(tǒng)的窗簾您必須手動操作,每天早開晚關也是挺麻煩的,特別是圖書館的窗簾,比較重,比較多,而且長,需要很大的力量才能開關窗簾,非常方便。
文章主要以利用單片機的無線遙控電路的設計來實現(xiàn)窗簾的自控控制。
1 智能遙控窗簾總體設計方案
文章是基于單片機的遙控窗簾,采用低功耗、高性能的STC89C52單片機做為控制器,用C語言編寫程序;窗簾的開關控制通過直流電機正反轉來實現(xiàn);無線收發(fā)模塊用編碼解碼芯片SC2262/SC2272組成,單片機由編碼解碼芯片四個輸出信號控制;再通過單片機來控制直流電機;窗簾的是否過卷信號用傳感器來實現(xiàn)。系統(tǒng)框如圖1所示。
2 硬件電路設計
本系統(tǒng)主要由單片機最小系統(tǒng)、無線發(fā)射、接收模塊、按鍵部分、電機控制執(zhí)行部分和限位開關組成。
工作原理是基于STC89C52單片機的遙控窗簾。它采用無線遙控控制方式,其中SC2262/SC2272編碼解碼芯片組成無線發(fā)送接收模塊;通過控制直流電機的正反轉來控制窗簾的開關,并且可以指示運行狀態(tài);利用限位開關來控制窗簾停止,防止過卷。硬件電路設計如圖2、圖3所示。
解碼的芯用SC2272,編碼芯片用SC2262。編碼芯片發(fā)出編碼信號,解碼芯片接收并進行兩次驗證后,把VT腳置為高電平,對應數(shù)據(jù)腳輸出也是高電平。如果發(fā)射機無按鍵按下時,編碼芯片不通電,其高頻發(fā)射電路停止工作;如果按鍵按下,編碼芯片通電,開始工作,高頻發(fā)射電路工作,向外發(fā)射高頻信號。
3 系統(tǒng)軟件設計
采用C語言編程,主要使用了if、while等判斷語句,按鍵設為高電平工作方式。如果有按鍵按下,有信號從無線發(fā)射模塊發(fā)出,相應功能通過接收模塊解碼后響應,如果限位開關閉合,表示窗簾開關已到位,將不再轉動。自動模式部分程序如下:
#include
#include
#include
#define uc unsigned char
#define ui unsigned int
sbit in_go = P1^3;
sbit in_back = P1^2;//手動前進后退按鍵
sbit out_go = P3^0;
sbit out_back = P3^5;//電機控制輸出
sbit limit_go = P3^4;
sbit limit_back = P3^6;//前進后退限位開關
sbit led_go = P1^4;
sbit led_back = P1^5;//前進后退限位指示燈
sbit light = P1^0;//光線傳感器
sbit change = P1^1;//手動自動切換按鍵(默認自動)
sbit led_zhishi = P1^7;
sbit buzz = P1^6;
bit bdata flag1,flag2,change_flag,flag_shan,flag_shan1,flag_shan2;
uc m,n,shan;
void delay(ui x)//延時函數(shù)
{
ui i,j;
for(i=0;i for(j=0;j<110;j++); } void work()//工作函數(shù) { if(change==0)//判斷切換是否按下 { buzz=1; delay(50); if(change==0) change_flag=~change_flag;//手動,自動切換 buzz=0; while(!change);//釋放 } led_zhishi=change_flag; if(change_flag==0)//自動模式 { if(light==0)//夜間(無光)時關閉窗簾 { delay(50); if(light==0) { if((limit_go==0)&&(flag_shan==0)) { out_go=1; out_back=1; led_go=1; for(shan=0;shan<6;shan++) { led_go=~led_go; buzz=~led_go; delay(500); } flag_shan=1; } else if(limit_go==1) { out_go=1; out_back=0; led_back=1; led_go=0; flag_shan=0; } } } 4 結語 此基于單片機的智能遙控窗簾是單片機應用、無線遙控技術和傳感器技術的綜合應用,這種窗簾操作簡單方便,用戶可以靈活控制,并且遙控距離遠。該設計來自平時教學制作案例,如果稍加擴展,將具有一定的實用價值。