天堂草原最受欢迎的角色,天堂动漫,天堂在线,色天堂下载,天堂中文在线资源,亚洲男人天堂

技術熱線: 4007-888-234
設計開發

專注差異化嵌入式產品解決方案 給智能產品定制注入靈魂給予生命

開發工具

提供開發工具、應用測試 完善的開發代碼案例庫分享

技術支持

從全面的產品導入到強大技術支援服務 全程貼心伴隨服務,創造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產品競爭力

新聞中心

提供最新的單片機資訊,行業消息以及公司新聞動態

如何用8051單片機控制步進電機?

更新時間: 2021-10-27
閱讀量:2717

在本文中,講解了怎么用8051單片機控制步進電機。步進電機廣泛用于工業、醫療、消費電子應用。簡而言之,它用于任何需要物體精確旋轉或定位的地方。

一、什么是步進電機?

stepper-motor.jpg

步進電機是一種無刷電機,可將電脈沖轉換為機械旋轉。顧名思義,它根據輸入脈沖逐步旋轉。步進電機通常具有多個勵磁線圈(相)和帶齒轉子。電機的步長由轉子上的相數和齒數決定。步長是轉子在一步中的角位移。如果步進電機有4相50個齒,則需要50×4=200步才能旋轉一整圈。所以步距角將為360/200=1.8°。

我們使用的步進電機有4極和一個1/64減速齒輪機構,用于增加扭矩。電機的步距角為5.64°。但考慮減速機時,輸出軸的步距角為5.64/64°。步進電機的內部示意圖如下:

stepper-motor.png

步進電機通過在給定時間內一一打開各個相位來旋轉。序列如下圖所示:

stepper-motor-timing-diagram.png

二、原理圖

將步進電機連接到8051的電路圖如上所示。P1.0、P1.1、P1.2、P1.3引腳分別用于控制步進電機的A1、A2、A3、A4相。ULN2003用于驅動步進電機的各個相位。ULN2003是一種達林頓晶體管陣列,用于驅動繼電器和電機等大電流負載。ULN2003有8個獨立的通道,每個通道的容量為1A。通道可以并聯以增加電流容量。每個通道都配有獨立的續流二極管。ULN2003工作在電流吸收模式。每個通道通過在相應輸入處提供邏輯低電平來激活。例如,如果我們將ULN2003的引腳1設為低電平,則步進電機的A1相被接通。

stepper-motor-circuit.png


程序首先清除P1.0以激活步進電機的第1相(A1)。該條件保持65毫秒,然后設置P1.0以停用電機的第1階段。然后對端口引腳P1.1到P1.3重復相同的過程,整個循環一遍又一遍地重復,使電機順時針旋轉。

單片機的定時器0配置為模式1以產生65毫秒的延遲,65mS是每個控制脈沖的寬度。

三、程序代碼

A1 EQU P1.0
A2 EQU P1.1
A3 EQU P1.2
A4 EQU P1.3
ORG 00H
MOV TMOD,#00000001B
MAIN:
CLR A1
ACALL DELAY
SETB A1
CLR A2
ACALL DELAY
SETB A2
CLR A3
ACALL DELAY
SETB A3 
CLR A4
ACALL DELAY
SETB A4
SJMP MAIN
      
DELAY:MOV R6,#1D       
BACK: MOV TH0,#00000000B   
      MOV TL0,#00000000B   
      SETB TR0             
HERE2: JNB TF0,HERE2        
      CLR TR0              
      CLR TF0             
      DJNZ R6,BACK
      RET
END

以上就是英銳恩單片機開發工程師分享的“如何用8051單片機控制步進電機”。英銳恩專注單片機應用方案設計與開發,提供8位單片機、16位單片機、32位單片機。

联系我们: 定结县| 乐清市| 芜湖县| 宾阳县| 邵阳市| 崇义县| 藁城市| 溧水县| 逊克县| 太原市| 祁连县| 博爱县| 和平区| 武宁县| 沧州市| 黔南| 通江县| 石屏县| 蓝山县| 克拉玛依市| 文化| 谢通门县| 岢岚县| 台东市| 河间市| 延寿县| 都昌县| 吉木萨尔县| 白河县| 南康市| 邵东县| 新余市| 新巴尔虎右旗| 堆龙德庆县| 洱源县| 郑州市| 景洪市| 随州市| 抚松县| 灵武市| 乌苏市|