新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 電梯控制系統(tǒng)的實(shí)現(xiàn),附軟硬件架構(gòu)圖

電梯控制系統(tǒng)的實(shí)現(xiàn),附軟硬件架構(gòu)圖

作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò) 收藏

#define repairMode 00

#define generalrunMode 01

#define direcltyrunMode 10

int setModeR_G(int currentMode int premode); //負(fù)責(zé)狀態(tài)之間的切換

int setModeG_R(int currentMode int premode); //mode為兩位變量,由撥碼開(kāi)關(guān)在I/O口讀入

int setModeG_D(int currentMode int premode);

int setModeD_G(int currentMode int premode);

//狀態(tài)切換會(huì)返回置位bool量 modechange

int getmode() //讀取mode的當(dāng)前的值,并且刷新mode和premode

Void lcd_initialize(void) //負(fù)責(zé)顯示屏的初始化

Void port_initalize(void) //負(fù)責(zé)端口的初始化

Void motor_initalize(void) //負(fù)責(zé)電機(jī)的初始化

Void lighting_initalize(void) //負(fù)責(zé)照明的初始化

Void elevatordoor_initalize(void) //負(fù)責(zé)電梯門(mén)的初始化

Void lcd_display(int temperature); //負(fù)責(zé)溫度的顯示

Void eledoor_allopen(); //電梯門(mén)在檢修模式下常開(kāi)

Void eledoor(); //電梯門(mén)在其他兩個(gè)模式下的運(yùn)行方式

Void motor_stop();

int motor_genrun();

int motor_dirrun(); //返回一個(gè)Int值dooropen為1,控制電梯門(mén)的開(kāi)啟

//電梯在三種模式下的運(yùn)行方式

Void light_display(int pressure); //電燈的開(kāi)關(guān)控制

Void communicate(); //通信方法

Void repair() //檢修模式下的工作方式

{

While(modechange==0)

{

Communicate();

Eledoor_allopen();

Light_display();

Lcd_display(int temperature);

Int getmode();

If(premode==01&&mode==00)

setModeG_R();

}

}

Void generalrun() //一般運(yùn)行模式下的工作方式

{

While(modechange==0)

{

Communicate();

Light_display();

Lcd_display(int temperature);

If(premode==01&&mode==00)

setModeG_R();

If(premode==01&&mode==10)

setModeG_D();

}

}

Void directlyrun() //直接運(yùn)行下的工作方式

{

While(modechange==0)

{

Communicate();

Light_display();

Lcd_display(int temperature);

Int getmode();

If(premode==10&&mode==01)

setModeD_G();

}

}

Void initialize(void) //負(fù)責(zé)總體的初始化

{

currentMode=generalrunMode;

Lcd_initialize();

Port_initialize();

motor_initalize();

lighting_initalize();

elevatordoor_initalize();

}

Int main()

{

Initialize();

While(1)

{

Switch(currentMode)

{

Case repairMode;

Repair();

Break;

Case generalrunMode;

Generalrun();

Break;

Case directltyrunMode;

Directltyrun();

Break;

}

}

}


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉