新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于89C55和GAL16V8,MC1413的步進(jìn)電機驅(qū)動器的設(shè)計(06-100)

        基于89C55和GAL16V8,MC1413的步進(jìn)電機驅(qū)動器的設(shè)計(06-100)

        ——
        作者:哈爾濱圣邦微電子有限公司 任明巖 孫金英 錢海波 時間:2008-04-07 來源:電子產(chǎn)品世界 收藏

          軟件設(shè)計

        本文引用地址:http://www.104case.com/article/81278.htm

          通常,的脈沖控制是由邏輯電路實現(xiàn)的。在計算機控制的系統(tǒng)中,也可以通過編制程序,由擴展I/O口輸出脈沖來決定電機的運行方式、方向及轉(zhuǎn)速。這種方式電路簡單、控制靈活,但占用CPU的時間過多,每次驅(qū)動電機時,PC機都得被占用。GAL器件有多種型號,根據(jù)設(shè)計的需要,同時從經(jīng)濟的角度考慮,選用GALl6V8來實現(xiàn)四相混和式進(jìn)行控制。使用ABEL語言編程,原碼如下:

         module motor
         title
         Operation of the simulator on devices with
         motor
                              DATA I/O Corp.      21 10 2002
                  FB1     device 'P16V8R';
                  D1,D2,D3,D4        pin 2,3,4,5;
                  F1,F2,F3,F4,F5,F6,F7,F8      pin
          19,18,17,16,15,14,13,12;
          equations
                  F8      = D1&D2&D3&D4;
                  F7      = D1&D2&D3&!D4;
                  F6      = D1&D2&!D3&D4;
                  F5      = D1&D2&!D3&!D4;
                  F4      = D1&!D2&D3&D4;
                  F3      = D1&!D2&D3&!D4;
                  F2      = D1&!D2&!D3&D4;
                  F1      = D1&!D2&!D3&!D4;
        end motor。

          設(shè)置軟件陷阱

          當(dāng)程序進(jìn)入到非程序區(qū),只要在非程序區(qū)設(shè)置攔截措施,使程序進(jìn)入陷阱,然后強迫程序回到初始狀態(tài)。如對CPU的RST指令對應(yīng)的字節(jié)碼為0FFH,如果不用的程序存儲區(qū)預(yù)先寫入0FFH,則當(dāng)程序因干擾而“飛”到該區(qū)域執(zhí)行代碼時,就相當(dāng)于執(zhí)行1條RST指令,從而達(dá)到系統(tǒng)復(fù)位的目的。

          程序流程圖如圖2。



        關(guān)鍵詞: Atmel 步進(jìn)電機 單片機

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 大悟县| 广水市| 太白县| 克东县| 藁城市| 富源县| 郑州市| 叙永县| 修武县| 武冈市| 南木林县| 潜江市| 花垣县| 博白县| 麻阳| 新竹市| 江华| 黔西县| 巴中市| 海丰县| 宝应县| 安图县| 台南县| 巴青县| 平舆县| 南平市| 北票市| 白银市| 东莞市| 绍兴县| 聂拉木县| 蕲春县| 焉耆| 巴彦县| 九寨沟县| 辽宁省| 蒙阴县| 河源市| 楚雄市| 白朗县| 九龙城区|