新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 電梯控制系統的實現,附軟硬件架構圖

        電梯控制系統的實現,附軟硬件架構圖

        作者: 時間:2016-11-29 來源:網絡 收藏

        #define repairMode 00

        #define generalrunMode 01

        #define direcltyrunMode 10

        int setModeR_G(int currentMode int premode); //負責狀態之間的切換

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

        int setModeG_D(int currentMode int premode);

        int setModeD_G(int currentMode int premode);

        //狀態切換會返回置位bool量 modechange

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

        Void lcd_initialize(void) //負責顯示屏的初始化

        Void port_initalize(void) //負責端口的初始化

        Void motor_initalize(void) //負責電機的初始化

        Void lighting_initalize(void) //負責照明的初始化

        Void elevatordoor_initalize(void) //負責電梯門的初始化

        Void lcd_display(int temperature); //負責溫度的顯示

        Void eledoor_allopen(); //電梯門在檢修模式下常開

        Void eledoor(); //電梯門在其他兩個模式下的運行方式

        Void motor_stop();

        int motor_genrun();

        int motor_dirrun(); //返回一個Int值dooropen為1,控制電梯門的開啟

        //電梯在三種模式下的運行方式

        Void light_display(int pressure); //電燈的開關控制

        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() //一般運行模式下的工作方式

        {

        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() //直接運行下的工作方式

        {

        While(modechange==0)

        {

        Communicate();

        Light_display();

        Lcd_display(int temperature);

        Int getmode();

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

        setModeD_G();

        }

        }

        Void initialize(void) //負責總體的初始化

        {

        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;

        }

        }

        }


        上一頁 1 2 3 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 丰宁| 泰宁县| 府谷县| 东明县| 永清县| 新昌县| 海宁市| 海口市| 高州市| 盐城市| 福海县| 廉江市| 阜宁县| 新乡县| 浦县| 仁布县| 中江县| 浑源县| 花莲县| 若尔盖县| 仁怀市| 法库县| 广州市| 肥东县| 文登市| 濮阳市| 六盘水市| 永胜县| 墨玉县| 临清市| 仙居县| 金乡县| 邹平县| 孟州市| 枣庄市| 乾安县| 文山县| 濮阳市| 阳城县| 梁平县| 湖州市|