【導讀】本文主要講解了智能家電控制系統的設計,設計思路主要圍繞以單片機為核心,將電腦作為上位機實現自動控制幾點的開關狀態(tài),從而通過單片機嵌入式系統控制按鍵,繼而控制家電的開關。此次設計控制簡單,顯示直觀,能夠完整地實現整個電路的控制系統的設計。
硬件部分包括單片機最小系統,串口通信、液晶顯示界面三大部分。最小系統部分單片機選用了AT89C51單片機,串口選用232電平轉TTL電平的MAX232)芯片,進行電平轉換。液晶選用128X64點陣的液晶模塊。
穩(wěn)壓直流電源設計
圖1
流程圖如下圖所示:
圖2
矩陣鍵盤的設計
矩陣按鍵部分由8個輕觸按鍵,單片機的P2口檢測及按鍵狀態(tài),并記錄相應的鍵值,指示相應的指示燈亮,并同步把相應信息通過串口傳給PC機。
圖3
鍵連擊現象的克服和處理
當我們按下某個鍵時,對應的功能便會通過鍵盤分析程序得以執(zhí)行,如果在操作者釋放之前,對應的功能多次執(zhí)行,如同操作者在連續(xù)不斷的操作該鍵一樣,這種現象就稱為連擊。連擊先可流程圖的軟件方法來解決:當某個鍵按下時,首先進行軟件去抖處理,確認鍵被按下后,便執(zhí)行與該鍵相對應的功能,執(zhí)行完后不是立即返回,而是等待鍵釋放之后再返回,使每一次按鍵只被響應一次,從而達到避免連擊的目的。
圖4:指示燈硬件圖
液晶顯示驅動電路的設計
圖5
現在,在市場上所使用的液晶都是液晶模塊,也就是說,現在的液晶模塊都是將液晶以及相應的驅動芯片,寄存器,驅動電源電路等一系列的輔助電路都集成在了一起,從二使用戶能夠更加的方便是液晶,即所謂的大眾化。12864采用的是點陣式液晶,分為128X64個點,即有1204個字節(jié),也就是說每一個ROM內存單元對應一個點陣。如何對其驅動是對12864的主要難點,對于其驅動大致可以分為:初始化,設置起始位顯示,輸送數據幾大塊。初始化主要的就是按照芯片手冊來,因為那些命令語句的內存單元都是定的,不能夠根據用戶的喜好來自己定義。設置起始位數據顯示位置,主要是要搞清楚ROM的對應地址。12864分為左半屏面和右半屏面。其中左邊占64列,右邊占64列。共128列。行分為64行。又將其分為8頁,每一頁占8行。列的起始地址為40H,行的起始地址為B8H。
系統仿真
圖6