智能定時開關插座設計與制作_第1頁
智能定時開關插座設計與制作_第2頁
智能定時開關插座設計與制作_第3頁
智能定時開關插座設計與制作_第4頁
智能定時開關插座設計與制作_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

湖南商務職業(yè)技術學院畢業(yè)設計

目錄

1.產(chǎn)品功能分析......................................................1

2.單片機芯片選擇....................................................1

3.產(chǎn)品設計技術標準..................................................1

3.1單片機編程規(guī)范總則............................................1

3.2單片機編程函數(shù)規(guī)范............................................1

4.產(chǎn)品硬件設計......................................................2

4.1單片機最小系統(tǒng)................................................2

4.2單片機LCD顯示模塊............................................3

4.3LCD1602與MCU的接口電路......................................3

4.4單片機按鍵模塊設計............................................5

5.產(chǎn)品軟件設計......................................................5

6.產(chǎn)品使用說明書....................................................6

附錄1元件的清單.....................................................7

附錄2原理圖.........................................................8

附錄3PCB圖.........................................................9

附錄4作品實物照....................................................10

附錄5源代碼........................................................11

參考資料............................................................20

湖南商務職業(yè)技術學院畢業(yè)設計

智能定時開關的設計與制作

1產(chǎn)品功能分析

隨著電的發(fā)展,也越來越多的電器和智能設備出現(xiàn),在我們的日常生活中,

常常需要為電器充電或者使用電器,比如手機、熱水器,而大多年輕人喜歡邊

充電邊玩手機,或者一直充電不拔插頭,這就容易耗損電池,再比如很多年輕

人上班,熱水器要么一直插著電或者回家才插電燒水洗澡,這樣一來,要么很

耗電要么每次洗澡都要等上好一段時間,所以基于此,定時開關的出現(xiàn)就很有

必要了。

2單片機芯片選擇

方案一:采用51系列單片機作為系統(tǒng)控制器

單片機算術運算功能強,軟件編程靈活、自由度大,可用軟件編程實現(xiàn)各

種算法和邏輯控制。由于其功耗低、體積較小、技術成熟和成本低等優(yōu)點,在

各個領域應用廣泛。而且抗干擾性能好。

方案二:采用STM32系列單片機作為系統(tǒng)控制器

單片機低電壓并且節(jié)能,全系列產(chǎn)品共用大部分引腳、軟件和外設,優(yōu)異

的兼容性為開發(fā)人員帶來最大的設計靈活性,能夠在經(jīng)濟型用戶終端產(chǎn)品上實

現(xiàn)先進且復雜的功能。

因51單片機價格比STM32系列低得多,且本設計不需要很高的處理速度,

經(jīng)濟和方便使用角度考慮,本設計選擇了方案一。

3產(chǎn)品設計技術標準

3.1單片機編程規(guī)范總則

格式清晰、注釋簡明扼要、命名規(guī)范易懂、函數(shù)模塊化、程序易讀易維護、

功能準確實現(xiàn)、代碼空間效率和時間效率高、適度的可擴展性。

3.2單片機編程函數(shù)規(guī)范

正確性:程序要實現(xiàn)設計要求的功能。穩(wěn)定性和安全性:程序運行穩(wěn)定、

可靠、安全。可測試性:程序便于測試和評價。過長的代碼要分行。

1

湖南商務職業(yè)技術學院畢業(yè)設計

4產(chǎn)品硬件設計

本設計采用的是STM89c52單片機,如圖4-1所示。

U1

140

P10VCC

239

P11P00

338

P12P01

437

P13P02

536

P14P03

635

P15P04

734

P16P05

833

P17P06

932

RESETP07

1031

P30/RXDEA/VP

1130

P31/TXDALE/P

1229

P32/INT0PSEN

1328

P33/INT1P27

1427

P34/T0P26

1526

P35/T1P25

1625

P36WRP24

1724

P37/RDP23

1823

X2P22

1922

X1P21

2021

GNDP20

圖4-1SSTC89C52TC89C52單片機引腳圖

VCC:STC89C52電源正端輸入,接+5V。

GND:電源地端。

XTAL1:單芯片系統(tǒng)時鐘的反相放大器輸入端。

XTAL2:系統(tǒng)時鐘的反相放大器輸出端。

RESET:STC89C52的重置引腳。

4.1單片機最小系統(tǒng)

最小系統(tǒng)包括單片機及其所需的必要的電源、時鐘、復位等部件,能使單

片機始終處于正常的運行狀態(tài)。如圖4-2所示。

圖4-2單片機最小系統(tǒng)原理框圖

2

湖南商務職業(yè)技術學院畢業(yè)設計

4.2單片機LCD顯示模塊

LED1602基本操作時序如下:

1)讀狀態(tài):RS=L,RW=H,E=H

2)寫指令:RS=L,RW=L,D0~D7=指令碼,E=高脈沖

3)讀數(shù)據(jù):RS=H,RW=H,E=H

4)寫數(shù)據(jù):RS=H,RW=L,D0~D7=數(shù)據(jù),E=高脈沖

4.3LCD1602與MCU的接口電路

LCD的D0~D7分別接單片機的P0口,作為數(shù)據(jù)線,因為P0口內(nèi)部沒有上

拉電阻,所以外部另外加上4.7K的上拉電阻;P2.5—P2.7分別接LCD的RS、

RW、E三個控制管腳;RV1用來調(diào)節(jié)LCD的顯示灰度;BLK、BLA為背光的陰極和

陽極,接上相應電平即點亮背光燈。

圖4-3顯示電路

3

湖南商務職業(yè)技術學院畢業(yè)設計

4.4單片機按鍵模塊設計

本系統(tǒng)用到了4個按鍵,其中一個用作系統(tǒng)手動復位,另外4個采用獨立

按鍵,該種接法查詢簡單,程序處理簡單,可節(jié)省CPU資源,按鍵電路如圖4-4

所示,4個獨立按鍵分別與STC89C52的P3.0、P3.1、P3.2、P3.3接口相連。

圖4-4按鍵模塊

5產(chǎn)品軟件設計

本系統(tǒng)的軟件部分主要進行時間計算程序設計,按鍵的掃描輸入等。程序

開始運行后首先要進行初始化,把單片機的各引腳的狀態(tài)按程序里面的初始化

命令進行初始化,初始化完成后日期信息,再運行按鍵掃描程序,檢測有無按

鍵按下,計算完成后運行顯示程序,顯示程序?qū)⒌玫降臅r間信息送給對應的液

晶讓其顯示。

4

湖南商務職業(yè)技術學院畢業(yè)設計

圖5.0程序流程圖

5

湖南商務職業(yè)技術學院畢業(yè)設計

6產(chǎn)品使用說明書

本產(chǎn)品定時開關有四個模式:on(開)、OFF(關)、AUTOon(自動開)、

Autooff(自動關)

設定當前時間

先按住“設置”鍵三秒,星期閃爍,再按最左邊或者最右邊的鍵調(diào)整

再按住“設置”鍵三秒,小時閃爍,再按最左邊或者最右邊的鍵調(diào)整

再按住“設置”鍵三秒,分鐘閃爍,再按最左邊或者最右邊的鍵調(diào)整

再按住“設置”鍵完成設置,顯示設置后的當前時間并開始運行。

設定定時程序

在顯示當前時間的狀態(tài)下,按下右鍵即進入定時設定模式。

6

湖南商務職業(yè)技術學院畢業(yè)設計

附錄1元件的清單

7

湖南商務職業(yè)技術學院畢業(yè)設計

附錄2原理圖

8

湖南商務職業(yè)技術學院畢業(yè)設計

附錄3PCB圖

9

湖南商務職業(yè)技術學院畢業(yè)設計

附錄4作品實物圖

10

湖南商務職業(yè)技術學院畢業(yè)設計

附錄5源代碼

#defineucharunsignedchar

#defineuintunsignedint

sbitlcdrs=P3^7;

sbitlcdrw=P3^6;

sbitlcden=P3^5;

sbitinf=P3^3;

sbitSCLK=P0^7;

sbitIO=P0^6;

sbitRST=P0^5;

11

湖南商務職業(yè)技術學院畢業(yè)設計

#include<reg52.h>

#defineucharunsignedchar

#defineuintunsignedint

sbitbeep=P0^4;

sbitP0_2=P0^2;

sbitP0_1=P0^1;

sbitP0_0=P0^0;

sbits1=P2^0;

sbits2=P2^1;

sbits3=P2^2;

sbits4=P2^3;

ucharcodetable1[]=":::";

ucharcodetable2[]=":::";

ucharcodetable3[]="Welcometo";

ucharcodetable4[]="TimingSockets";

ucharcodetable5[]="20--";

ucharcodetable6[]="::";

ucharcodetable7[]="MON";

ucharcodetable8[]="TUE";

ucharcodetable9[]="WED";

ucharcodetable10[]="THR";

ucharcodetable11[]="FRI";

ucharcodetable12[]="SAT";

ucharcodetable13[]="SUN";

ucharcodetable14[]="SettheCalendar";

ucharcodetable15[]="SettheMode";

ucharcodetable16[]="SettheTiming";

ucharcodetable17[]="ModeChoice";

12

湖南商務職業(yè)技術學院畢業(yè)設計

ucharcodetable18[]="123456";

uintbuf_key_code=0;

uintcount_T=0,buf_CT=0;

ucharkey=255;

ucharkey_bit_count=0;

ucharcommon_code_count=0;

ucharinf_status=0;

uchardd[7];

ucharaa[7]={0,0,11,17,4,6,11};

ucharee[3]={11,0,0};

ucharff[3]={11,1,0};

ucharkk[2]={11,2};

ucharhh[2]={11,3};

uchargg[6];

bitflag,flag2,flag3,flag4,flag5,flag6,flag7,flag8,flag9,flag10,fla

g11,flag12,flag13,flag14;

charmiao,fen,shi,ri,yue,zhou,nian;

ucharsw,gw;

uchars1num,s2num;

voiddisplay(void);

voiddelay(uinti)

{

uintj;

for(;i>0;i--)

for(j=100;j>0;j--);

}

voidwrite_com(ucharcom)//lcd寫指令

{

13

湖南商務職業(yè)技術學院畢業(yè)設計

lcdrs=0;

lcden=0;

P1=com;

delay(5);

lcden=1;

delay(5);

lcden=0;

}

voidwrite_data(uchardat)//lcd寫數(shù)據(jù)

{

lcdrs=1;

lcden=0;

P1=dat;

delay(5);

lcden=1;

delay(5);

lcden=0;

}

voidinit()//lcd初始化

{ucharnum;

lcdrw=0;

write_com(0x38);

write_com(0x0c);

write_com(0x06);

write_com(0x01);

write_com(0x80);

write_com(0x01);

write_com(0x80);

14

湖南商務職業(yè)技術學院畢業(yè)設計

for(num=0;num<16;num++)

{

write_data(table3[num]);

delay(5);

}

write_com(0xc0);

for(num=0;num<16;num++)

{

write_data(table4[num]);

delay(5);

}

delay(5);

write_com(0x01);

write_com(0x80);

for(num=0;num<8;num++)

{

write_data(table5[num]);

delay(1);

}

write_com(0xc0);

for(num=0;num<8;num++)

{

write_data(table6[num]);

delay(1);

}

}

15

湖南商務職業(yè)技術學院畢業(yè)設計

/*********DS1302程序*********/

voiddelay1(uintnum)

{

while(--num);

}

voidDS1302_wbyte(ucharinbyte)//ds1302寫數(shù)據(jù)

{

uchari;

for(i=8;i>0;i--)

{

SCLK=0;

if(inbyte&0x01)

IO=1;

else

IO=0;

SCLK=1;

delay1(1);

inbyte=inbyte>>1;

}

}

ucharDS1302_rbyte()//ds1302讀數(shù)據(jù)

{

uchari,temp=0;

IO=1;

for(i=7;i>0;i--)

{

SCLK=0;

if(IO==1)

16

湖南商務職業(yè)技術學院畢業(yè)設計

temp=temp|0x80;

else

temp=temp&0x7f;

SCLK=1;

temp=temp>>1;

}

return(temp);

}

//----------往ds1302的某個地址寫入數(shù)據(jù)-------------

voidWrite_DS1302(ucharcmd,ucharindata)

{

RST=1;

DS1302_wbyte(cmd);

DS1302_wbyte(indata);

RST=0;

SCLK=0;

}

//----------讀ds1302某地址的的數(shù)據(jù)-----------------

ucharRead_DS1302(ucharaddr)

{

ucharbackdata;

RST=1;

DS1302_wbyte(addr);

backdata=DS1302_rbyte();//先寫地址,然后讀數(shù)據(jù)

RST=0;

SCLK=0;

return(backdata);

}

17

湖南商務職業(yè)技術學院畢業(yè)設計

//------------設置初始時間-------------------

voidSet_DS1302(ucharaddr,uchar*p,ucharn)//寫入n個數(shù)據(jù)

{ucharbb;

Write_DS1302(0x8e,0x00);//寫控制字,允許寫操作

for(;n>0;n--)

{sw=(*p)/10;

gw=(*p)%10;

bb=(sw<<4)|gw;

Write_DS1302(addr,bb);

p++;

addr=addr+2;

}

Write_DS1302(0x8e,0x80);//寫保護,不允許寫

}

//-----------讀取當前時間-------------------

voidRead_nowtime(ucharaddr,uchar*p,ucharn)

{

for(;n>0;n--)

{

*p=Read_DS1302(addr);

p++;

addr=addr+2;

}

}

voidinit_DS1302()

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論