⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demo_pwm.asm

📁 用89S52进行DS1820温度读取程序
💻 ASM
字号:
   ;这是一个单片机进行脉宽调制(PWM) 直流电机调速测试程序.(2004/05/08)
   ;接线说明: p0.4跳帽选择焊盘位置,再将S51E板上"控制输入口"的"DC"(直流电机)接MCU P0.4 
   ;将直流电机接 "电机"焊盘,UNL2003提供电机驱动电流.(<=500MA/5V)
   ;使用六个按键实现六种不同速度
   ;程序编制人:蔡祥荣 2004/06/20

;------------------IT'S FOR S51E ---------------------------------------------------
              DC   BIT  P0.4
              KEY  BIT  P3.4
              speed equ 20h
              org 000h
              jmp dc_MOTOR
              ORG 100H
   dc_MOTOR:  mov  p2,#0ffh
              clr  KEY
              mov  a,p2
              mov  speed,a      ;键盘去抖动
              lcall del
              mov  a,p2
              cjne  a,speed,dc_MOTOR
              JB   ACC.7,JUD_SPD5
              MOV  SPEED,#06       ;SW1
              JMP  PWM
JUD_SPD5:     JB   ACC.6,JUD_SPD4
              MOV  SPEED,#05       ;SW2
              JMP  PWM
JUD_SPD4:     JB   ACC.5,JUD_SPD3
              MOV  SPEED,#04       ;SW3
              JMP  PWM
JUD_SPD3:     JB   ACC.4,JUD_SPD2
              MOV  SPEED,#03       ;SW4
              JMP  PWM
JUD_SPD2:     JB   ACC.3,JUD_SPD1
              MOV  SPEED,#02       ;SW5
              JMP  PWM
JUD_SPD1:     JB   ACC.2,JUD_SPD0
              MOV  SPEED,#01       ;SW6
              JMP  PWM
JUD_SPD0:     MOV  SPEED,#00   
    
PWM:          MOV  R6,SPEED
              MOV  A,#06
              CLR  C
              SUBB  A,SPEED
              MOV  R5,A
              CLR  DC
WAIT1:        LCALL  DEL
              DJNZ   R5,WAIT1
              SETB  DC
WAIT2:        LCALL  DEL
              DJNZ   R5,WAIT2
              JMP   DC_MOTOR

Del:   mov  r7,#0ffh
       djnz  r7,$
       ret
         
            END

;使用定时中断方式调速,应怎样修改程序??



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -