<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)T89S52單片機的電機控制系統設計

基于A(yíng)T89S52單片機的電機控制系統設計

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

本次中繼電器采用的是HUIGANG HRS2H-S-DC-12V型,SN74LS07N作為繼電器的驅動(dòng)電路,低電平輸入有效,繼電器還需要并聯(lián)二極管電路,主要是為了保護SN74LS07N。當流經(jīng)繼電器線(xiàn)圈的電流迅速減小時(shí),線(xiàn)圈會(huì )產(chǎn)生很高的自感電動(dòng)勢使晶體管被擊穿,并聯(lián)上二極管后,即可將線(xiàn)圈的自感電動(dòng)勢鉗位于二極管的正向導通電壓。P3.0低電平時(shí),繼電器1常閉觸點(diǎn)斷開(kāi),常開(kāi)觸點(diǎn)閉合,正向電路導通,開(kāi)始正向轉動(dòng)。P3.1同理,P3.0和P3.1不可同時(shí)為低電平。

3 軟件
3.1 程序說(shuō)明

在KeilμVision 3 IDE中進(jìn)行程序的開(kāi)發(fā),用C語(yǔ)言編寫(xiě)。KeilμVision 3集成開(kāi)發(fā)環(huán)境是Keil Soltware開(kāi)發(fā)的80C51內核的微處理器軟件開(kāi)發(fā)平臺,可以完成從工程建立到管理、編譯、鏈接、目標代碼的生成、軟件仿真、硬件仿真等完整的開(kāi)發(fā)流程,尤其是C編譯工具在產(chǎn)生代碼的準確性和效率方面達到了較高的水平。它支持所有的Keil 80C51的工具軟件,包括C51編譯器、宏匯編器、鏈接器器/定位器和目標文件至Hex格式轉換器。鑒于此,選擇其為程序開(kāi)發(fā)環(huán)境。
系統程序由主程序、中斷處理子程序、按鍵處理程序以及顯示子程序等組成。對時(shí)間計時(shí)采用定時(shí)器定時(shí)中斷產(chǎn)生,沒(méi)有選擇用軟件延時(shí)的方式,這樣不占用CPU的時(shí)間。定時(shí)器T0產(chǎn)生50 ms定時(shí)中斷,在中斷服務(wù)程序中有一個(gè)計數器,每產(chǎn)生20次中斷,有一個(gè)1秒計數。按鍵掃描采用單個(gè)按鍵的掃描,有相應的按鍵處理子程序,程序中包括按鍵去抖動(dòng),按鍵的鍵后處理,去抖動(dòng)采用延時(shí)去抖法。顯示子程序在主程序中被調用對時(shí)間進(jìn)行實(shí)時(shí)顯示。
3.2 主程序流程圖
主程序流程圖如圖2所示,主要完成系統的初始化、按鍵掃描、顯示程序及其他子程序調用等功能。

本文引用地址:http://dyxdggzs.com/article/173351.htm


初始化時(shí)關(guān)閉定時(shí)中斷,P0.O~P0.2口輸出高電平,狀態(tài)指示燈熄滅,P3.0~P3.1口輸出高電平停止轉動(dòng),對LCD初始化顯示,顯示4行信息,2行顯示時(shí)間,格式為時(shí):分:秒,另外2行為時(shí)間的說(shuō)明文字。將所有的初始化功能寫(xiě)成一個(gè)子程序,主程序只需調用它即可完成系統初始化。初始化完成之后,掃描按鍵,如有按鍵按下,調用相應的處理程序。時(shí)間設定鍵按下時(shí),被選中的時(shí)間單位將會(huì )不斷的閃爍,區別于其他沒(méi)有被設置的時(shí)間單位,通過(guò)K1,K2鍵對時(shí)間進(jìn)行改動(dòng),按下K3鍵退出時(shí)間設定。開(kāi)始鍵被按下時(shí),開(kāi)啟定時(shí)中斷,LCD顯示時(shí)間開(kāi)始倒計時(shí),PO.1口輸出低電平,正向轉動(dòng)指示燈亮,P3.0輸出低電平,開(kāi)始正向轉動(dòng),在中斷服務(wù)程序中控制PO.0口輸出電平,使正常工作指示燈1 s閃爍一次。停止鍵被按下時(shí),P3.O~P3.1輸出高電平,電機停止轉動(dòng),P0.0~P0.2輸出高電平,狀態(tài)指示燈熄滅,關(guān)閉定時(shí)中斷,停止計數。正向轉動(dòng)時(shí)間結束時(shí),反向轉動(dòng)開(kāi)始倒計時(shí),P3.O輸出高電平,P3.1輸出低電平,電機反向轉動(dòng),P0.1輸出高電平,PO.2輸出低電平,正向轉動(dòng)指示燈熄滅,反向轉動(dòng)指示燈亮。顯示程序實(shí)時(shí)將時(shí)間的變化在LCD上顯示。

4 結語(yǔ)
該系統經(jīng)實(shí)際運行,可以滿(mǎn)足在功能鍵的操作下對時(shí)間進(jìn)行設定,控制電機的啟動(dòng)、正反向轉動(dòng)、停止,狀態(tài)指示燈正確顯示工作狀態(tài),LCD正常的顯示了時(shí)間。
本系統將應用于一個(gè)閥門(mén)的自動(dòng)打開(kāi)閉合裝置,正向轉動(dòng)時(shí)閥門(mén)打開(kāi),反向轉動(dòng)時(shí),閥門(mén)關(guān)閉,實(shí)現對液體流量的控制,具體應用時(shí)還需要對閥門(mén)打開(kāi)閉合的狀態(tài)進(jìn)行檢測。


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

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>