历史上的今天
今天是:2025年01月10日(星期五)
2018年01月10日 | 单片机进行脉宽调制(PWM) 直流电机调速测试程序
2018-01-10 来源:eefocus
单片机 进行脉宽调制(PWM) 直流电机调速测试程序
;UNL2003提供电机驱动电流.(<=500MA/5V)
;使用六个按键实现六种不同速度
DC BIT P1.0
speed equ 20h
org 000h
jmp dc_MOTOR
ORG 100H
dc_MOTOR:
MOV a,p1
MOV speed,a ;键盘去抖动
lcall del
MOV a,p1
cjne a,speed,dc_MOTOR
JB P3.3,JUD_SPD5
MOV SPEED,#6 ;SW1
JMP PWM
JUD_SPD5: JB P3.2,JUD_SPD4
MOV SPEED,#5 ;SW2
JMP PWM
JUD_SPD4: JB P3.1,JUD_SPD3
MOV SPEED,#04 ;SW3
JMP PWM
JUD_SPD3: JB P3.0,JUD_SPD2
MOV SPEED,#03 ;SW4
JMP PWM
JUD_SPD2: JB P3.5,JUD_SPD1
MOV SPEED,#02 ;SW5
JMP PWM
JUD_SPD1: JB P3.6,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
上一篇:数码管显示数字钟程序
下一篇:7段数码管静态显示程序
史海拾趣
|
void __irq watchdogIRQ(void) { ledblink(); isBlink=~isBlink; if(isBlink==0) { ...… 查看全部问答> |
|
关于多普达-蓝牙发送文件 多普达中选择一个文件->打开下拉菜单->选择\"蓝牙发送文件\"->蓝牙发送界面 现在我放做一个button,click button时进入蓝牙发送界面,文件还是原来的文件. 请问mobile c++能否实现 … 查看全部问答> |
|
大四实习找工作-----嵌入式软件开发-----计算机科学技术专业 大四实习,嵌入式软件开发。 看看我能不能成为您们公司的一员。 学历:本科 性别:男 专业:计算机科学与技术 &n ...… 查看全部问答> |
|
求 用Borland c/c++ 4.5编译 uCOS-II时的一个插件 用Borland c/c++ 4.5编译 uCOS-II时,需要对Borland c/c++ 兼容汇编语言,需要一个TASM.EXE 插件,哪位兄弟有的话,给兄弟传一下。谢谢! 20weiliaoshei08@163.com … 查看全部问答> |




