題目:用at89c51微控制器組合語言寫個控制電動機正反轉的程式
p3.0的按鈕是控制正轉
p3.1的按鈕是控制反轉
p3.2的按鈕是停止
用最短的組合語言寫出來,如果可以的話請一句句的解釋一下。我不會弄中斷。
電路如下:
這麼簡單的問題,用不著使用中斷。
做而論道編寫的程式如下:
;直流電機控制
org 0000h
p30:jb p3.0, p31 ;檢測按鍵
call delay ;延時
jb p3.0, p31 ;消抖
jnb p3.0, $ ;等待釋放
mov p2, #01h ;正轉
;------------------------
p31:jb p3.1, p32 ;輪流檢測
call delay
jb p3.1, p32
jnb p3.1, $
mov p2, #02h ;反轉
;------------------------
p32:jb p3.2, p30
call delay
jb p3.2, p30
jnb p3.2, $
mov p2, #03h ;停轉
sjmp p30
;------------------------
delay: ;延時約10ms(fosc = 6mhz)
mov r6, #10
djnz r7, $
djnz r6, $ - 2
ret;------------------------
end;------------------------
提問者評價:小弟謝過大神了,感激
後記:這程式寫的:短小精悍,功能齊全,工作速度極快,並不低於使用中斷的方法。
51微控制器之直流電機實驗
1 直流電機的基本模型 下圖為一台最簡單的兩極直流電機模型,它的固定部分 定子 為兩個靜止的磁極n s 旋轉部分 子 為電樞線圈abcd,線圈的首端和末端分別接到兩個相互絕緣的圓弧形的換向片上。換向片與一對靜止的電刷b1 b2接觸,b1接電源正極,b2接電源負極。電樞旋轉時,電樞線圈通過換向片和電刷...
51微控制器 使用PWM對直流電機調速
pwm 脈寬調變 是靠改變脈衝寬度來控制輸出電壓,通過改變週期來控制其輸出頻率。脈衝可以理解為是io口的一次高低電平改變 使用pwm對電極調速時,是靠改變占空比 改變脈衝寬度 來控制輸出電壓的,電壓較小電機轉速就會下降 再通過改變週期 脈衝的週期 來控制其輸出頻率,脈衝頻率對電機的轉速有著決定性作用...
直流電機pwm 直流電機的調速方法
直流電機的調速方法 一 概述 一是調節電樞電壓,二是調節勵磁電流,1 常見的微型直流電機,其磁場都是固定的,不可調的永磁體,所以只好調節電樞電壓。調節電樞電壓方法 常用的一是可控矽調壓法,再就是脈寬調變法 pwm pwm的h型屬於調壓調速。pwm的h橋只能實現大功率調速。國內的超大功率調速還要依靠可...