久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
51單片機直流電機pwm調速匯編程序
[打印本頁]
作者:
daniu
時間:
2014-12-27 13:27
標題:
51單片機直流電機pwm調速匯編程序
;以下是直流電機調速的程序,芯片選用2051
;晶振用12M
;選用2051單片機
;2006.05.18
; _____________
;|RST VDD |
;LED1 |P3.0 P1.7|G
;LED2; |P3.1 P1.6|D
;|XTAL2 P1.5|H
;|XTAL1 P1.4|E
; |P3.2 P1.3|C
;過零檢測 |P3.3 P1.2|F
;設定按鍵盤 |P3.4 P1.1|A
;加一按鍵盤 |P3.5 P1.0|B
;|VSS P3.7|電機輸出
;-------------
LED1 BIT P3.0
LED2 BIT P3.1
KEY1 BIT P3.4
KEY2 BIT P3.5
OUT BIT P3.7
KG BIT P3.2
OFF BIT 02H
ON BIT 03H
NC BIT 04H
NO BIT 05H
POWER DATA 7FH
YAS DATA 7EH
DATA1 DATA 40H
;*********************************************
;*********************************************
;********************************************* ;晶振為12M
ORG 0000H
AJMP MAIN ;轉入主程序
ORG 0003H ;外部中斷DATA_IN腳INT0入口地址
NOP
NOP
NOP ;轉入外部中斷服務子程序(解碼程序)
LJMP ERR ;軟件陷阱
NOP
NOP
LJMP ERR ;軟件陷阱
ORG 000BH
LJMP ERR
NOP
NOP
LJMP ERR ;軟件陷阱
ORG 0013H
LJMP TS
NOP
NOP
LJMP ERR ;軟件陷阱
ORG 001BH
LJMP YAS_1MS
NOP
NOP
LJMP ERR ;軟件陷阱
ORG 0023H
LJMP ERR ;軟件陷阱
NOP
NOP
LJMP ERR ;軟件陷阱
;************************************************
;以下為主程序進行CPU中斷方式設置
;******************************************************
;******************************************************************
;以下對單片機的所有引腳進行初始化,全部設置成高電平
;**********************************************************************
MAIN: MOV PSW,#00H ;設為0號寄存器
MOV P1,#0FFH
MOV P3,#0FFH
MOV 20H,#00H ;清除所有標志位
MOV 30H,#0BH
MOV 31H,#03H
MOV 32H,#00H
MOV 33H,#00H
MOV 34H,#00H
MOV 35H,#00H
MOV 36H,#00H
MOV 37H,#00H
SETB IT1 ;設定INT1的觸發方式為脈沖負邊沿觸發
SETB EX1 ;打開INT1中斷請求
; MOV TH0,#0B1H
;MOV TL0,#0E0H
MOV TH1,#0FCH
MOV TL1,#18H
;SETB ET0
SETB ET1
; SETB TR0
; SETB PT0
SETB PT1 ;啟動T0計數
MOV TMOD,#11H ;設置T0為方式1工作狀態
SETB EA ;打開CPU總中斷請求
MOV SP,#60H ;設置堆棧地址為60H開始
NOP
XS_1: LCALL XS
NOP
NOP
AJMP XS_1
;*************************************************
;************顯示子程序***************************
;*************************************************
XS: MOV R0,#30H
MOV R1,#32H
MOV B,#0AH
MOV A,@R0
DIV AB
MOV @R1,B
INC R1
MOV @R1,A
MOV A,@R1
MOV DPTR,#TAB
MOVC A,@A+DPTR
DEC R1
MOV P1,A
CLR LED1
LCALL YAS_300
SETB LED1
MOV A,@R1
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P1,A
CLR LED2
LCALL YAS_300
SETB LED2
MOV P1,#0FFH
XS4: RET
;*********************************************
;*************過零觸發加鍵盤掃描************
;********************************************
TS: INC 37H
MOV A,37H
SUBB A,#0EH
JC EE2
MOV 37H,#00H
JB KEY1,EE
MOV A,30H
SUBB A,#19H
JNC EE
INC 30H
;********************************************
EE: JB KEY2,EE1
CLR C
MOV A,30H
SUBB A,#0CH
JC EE1
DEC 30H
EE1: JB KG,EE2
NOP
NOP
CPL ON
JNB ON,EE3
MOV 38H,#03H
MOV 39H,#255
AJMP EE2
EE3: MOV 38H,#00H
MOV 39H,#0
CLR ON
CLR OFF
;********************************************
EE2: JNB ON,EXIT2
CLR EX1
PUSH ACC
PUSH PSW
MOV PSW,#10H
;MOV A,34H
;JNZ EXIT
MOV A,#1EH
SUBB A,30H
MOV 40H,A
JNB OFF,TS1
MOV 40H,#05H
TS1: LCALL XS
NOP
DJNZ 40H,TS1
CLR OUT
LCALL YS3
SETB OUT
MOV 40H,#09H
SETB TR1
TS3: LCALL XS
NOP
NOP
MOV A,40H
JNZ TS3
CLR OUT
LCALL YS3
SETB OUT
NOP
NOP
;**********************************************
EXIT: DJNZ 39H,EXIT2
SETB OFF
DJNZ 38H,EXIT3
CLR ON
CLR OFF
AJMP EXIT2
EXIT3: MOV 39H,#256
EXIT2: POP PSW
POP ACC
CLR TR1
SETB EX1
MOV 40H,#00H
NOP
NOP
RETI
;*************************************************
YAS_1MS:
MOV TH1,#0FCH
MOV TL1,#18H
PUSH ACC
PUSH PSW
MOV A,40H
JZ EXIT_1
DEC 40H
EXIT_1: POP PSW
POP ACC
NOP
NOP
RETI
;*****************************************************
;精確延時1000微秒************************************
;***************************************************
YS3: MOV R4,#02H ;延時程序3,精確延時1000微秒
D3: MOV R5,#0F7H
DJNZ R5,$
DJNZ R4,D3
RET
;*****************************************************
;*************精確延時100微秒***********************
;***************************************************
YAS_300: MOV R5,#31H
DJNZ R5,$
RET
;*************************************************
;***********顯示碼******************************
;*************************************************
TAB: DB 0A0H,0F6H,2CH,34H
DB 72H,31H,21H,0F4H
DB 20H,30H,60H,23H
DB 0A9H,26H,29H,69H
;*************************************************
;********軟件復位***************
;************************************************
WTD: PUSH ACC
PUSH PSW
MOV TH1,#3CH
MOV TL1,#0B0H
POP PSW
POP ACC
RETI
ERR: CLR EA
MOV DPTR,#ERR1
PUSH DPL
PUSH DPH
RETI
ERR1: MOV POWER,#0AAH
CLR A
PUSH ACC
PUSH ACC
RETI
END
復制代碼
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
91视频专区
|
福利视频午夜
|
韩日一级片
|
www.黄色网
|
黄色一区二区三区
|
免费一级黄色片
|
国产综合一区二区
|
久久久久女人精品毛片九一
|
成人精品一区二区三区
|
精品久久久久久久久久久
|
蜜桃成人在线
|
青青草久久
|
综合网av
|
中文字幕有码在线
|
青青草av
|
成人毛片在线播放
|
日韩特级毛片
|
久久精品国产视频
|
深夜免费福利
|
国产精品不卡视频
|
中文字幕免费观看
|
国产精品欧美一区二区
|
国产黄色在线
|
黄色一级大片
|
韩国精品一区二区
|
久久精品视频一区二区
|
日本视频一区二区三区
|
亚洲一级免费视频
|
久久精品国产亚洲
|
一区二区国产精品
|
老司机免费福利视频
|
免费成人毛片
|
国产精品大全
|
欧美性视频在线
|
国产成人精品一区
|
国产又粗又猛又黄又爽无遮挡
|
欧美一级黄色录像
|
九色在线观看
|
国产精品国产精品国产专区不片
|
国产精品免费一区二区三区
|
一级特黄妇女高潮
|