




免费预览已结束,剩余3页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于51单片机的直流电机调速程序(单片机课程设计所做)2008-10-25 12:44kg bit B.1 ;用来判断开机等待t bit B.2 ;用来判断正反转,t=1正转,t=0反转w bit B.3 ;用来辅助正反转判断,选择了就为1,不选则为0KK1 BIT B.4 ;用来辅助加速按键,使其不用延时可以按一次速度指甲一档KK2 BIT B.5 ;同上cctv bit b.7 ;用来辅助中断显示程序计时 org 0000h lJMP MAIN ORG 000BH LJMP CTC0 ORG 0034hGraphemic: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,84H,0FFH;共阳09字型码 ;PN1 EQU 30H ;PN1用来记脉冲的低二位数;PN2 EQU 31H ;PN2用来记脉冲的高二位数PN3 EQU 32H ;PN3用来做延时程序PN4 EQU 33H ;PN4用来做延时程序 ORG 100HMAIN: MOV R6,#00H ;用R6来辅助显示计时 MOV B, #00H CLR KG CLR W MOV TMOD,#01H ;T1和T0都是方式一计数 MOV TL0,#18H MOV TH0,#0E0H ;MOV TL1, #0AFH ; MOV TH1, #3CH SETB EA SETB ET0 ;T0中断允许 SETB TR0 SETB P3.4 ; SETB ET1 ;T1中断允许 ;SETB TR1 SETB PT0 ;设置T1T2的中断优先,都设其为高级中断 ; SETB PT1 MOV R1,#5H ;默认开始的时候速度为5档 SETB KK1 SETB KK2 MOV A,#00H ;把PN1,PN2都清零 ;MOV PN1,A ; MOV PN2,A MOV DPTR,#Graphemic ANL P1,#0FH ;ANL P0,#00Hmainline: jb p2.2,ks ;关机等待 clr w clr kg setb p1.0 setb p1.1 clr p1.2 clr p1.3ks: jnb kg,wait ;是否开机?开了就往下执行,不开就跳到开机等待 ANL P1,#00011111B ;显示最后一位为1,即是可以工作了的意思 SETB P1.4 MOV A,#1H MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAYSPD2: JB P2.1,KEY1 CLR KK1KEY1: JNB P2.1,KEY2 ;当p2.1高电平时就往下执行,但是只要执行一次后,kk就为1,往后就不再执行 JB KK1, KEY2 INC R1 SETB KK1 ;这段的任务是不用延时也能消除按键抖动的程序KEY2: JB P2.4,KEY3 CLR KK2KEY3: JNB P2.4,pos JB KK2, pos SETB KK2 DEC R1 pos: jb p2.0,rev ;正转按钮 setb t setb wrev: jb p2.3,tt ;反转按钮 clr t setb wtt: jnb w,pos ;选择正反转了吗,选了电机就开始转了,不选电机就不转,等待正反转按钮 jb t,positive jnb t,reversepositive: ;电机正转 setb p1.0 clr p1.1 clr p1.2 setb p1.3 lcall BIJIAO0 ;PWM调制 ; lcall ShowSpeed ;显示速度程序 LCALL showdigit1 Ljmp mainlinereverse: ;电机反转 clr p1.0 setb p1.1 setb p1.2 clr p1.3 lcall BIJIAO0 ;PWM调制 ; lcall ShowSpeed ;显示速度程序 LCALL showdigit2 Ljmp mainline wait: mov a,#00h ;如果不开始,那么程序就在这里等待, mov p0,a wait1: setb p0.6 setb p0.7 anl p1,#0fh setb p1.4 setb p1.5 setb p1.6 setb p1.7 SETB P3.6 NOP CLR P3.6 lcall delay jb p2.5,wait1 ;开机等待 setb kg Ljmp mainlineshowdigit1: ANL P1,#10001111B ;显示12在首位 SETB P1.7 MOV A,#1H MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAY ANL P1,#01001111B SETB P1.6 MOV A,#2H MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAY RETshowdigit2: ANL P1,#10001111B ;显示21在首位 SETB P1.7 MOV A,#2H MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAY ANL P1,#01001111B SETB P1.6 MOV A,#1H MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAY RETBIJIAO0: MOV A,R1 SUBB A,#0H JZ JJ0BIJIAO1: MOV A,R1 SUBB A,#1H JZ JJ1 BIJIAO2: MOV A,R1 SUBB A,#2H JZ JJ2 BIJIAO3: MOV A,R1 SUBB A,#3H JZ JJ3 BIJIAO4: MOV A,R1 SUBB A,#4H JZ JJ4 BIJIAO5: MOV A,R1 SUBB A,#5H JZ JJ5 BIJIAO6: MOV A,R1 SUBB A,#6H JZ JJ6 BIJIAO7: MOV A,R1 SUBB A,#7H JZ JJ7 BIJIAO8: MOV A,R1 SUBB A,#8H JZ JJ8 BIJIAO9: MOV A,R1 SUBB A,#9H JZ JJ9 BIJIAO10:MOV A,R1 SUBB A,#0AH JZ JJ10 MOV A,R1 ;如果R1的值小于零,则速度和pwm0的速度不变。 SUBB A,#0FFH JNZ PWM100 ;这一小段是限制调速范围只能在0-10之间 MOV R1,#0H AJMP PWM0PWM100: MOV R1,#0AH ;如果r110则直接给r1赋值10,然后转速和最大速度不变 LJMP PWM10 JJ0: LJMP PWM0 ;由于JZ跳转的距离不够长,所以这里只能用以下几句转跳转来辅助跳转JJ1: LJMP PWM1JJ2: LJMP PWM2JJ3: LJMP PWM3JJ4: LJMP PWM4JJ5: LJMP PWM5JJ6: LJMP PWM6JJ7: LJMP PWM7JJ8: LJMP PWM8JJ9: LJMP PWM9JJ10: LJMP PWM10PWM0: MOV R2,#0FFH MOV R3,#0FFH MOV R4,#0f8H MOV R5,#02fH MOV A,#0H LCALL SHOW LJMP MAINLINE1PWM1: MOV R2,#0FFH MOV R3,#037H MOV R4,#0F8H MOV R5,#0F7H MOV A,#1H LCALL SHOW LJMP MAINLINE1PWM2: MOV R2,#0FEH MOV R3,#06FH MOV R4,#0F9H MOV R5,#0BFH MOV A,#2H LCALL SHOW LJMP MAINLINE1PWM3: MOV R2,#0FDH MOV R3,#0A7H MOV R4,#0FAH MOV R5,#087H MOV A,#3H LCALL SHOW LJMP MAINLINE1PWM4: MOV R2,#0FCH MOV R3,#0DFH MOV R4,#0FBH MOV R5,#4FH MOV A,#4H LCALL SHOW LJMP MAINLINE1PWM5: MOV R2,#0FCH MOV R3,#18H MOV R4,#0FCH MOV R5,#18H MOV A,#5H LCALL SHOW LJMP MAINLINE1PWM6: MOV R2,#0FBH MOV R3,#4FH MOV R4,#0FCH MOV R5,#0DFH MOV A,#6H LCALL SHOW LJMP MAINLINE1PWM7: MOV R2,#0FAH MOV R3,#087H MOV R4,#0FDH MOV R5,#0A7H MOV A,#7H LCALL SHOW LJMP MAINLINE1PWM8: MOV R2,#0F9H MOV R3,#0BFH MOV R4,#0FEH MOV R5,#6FH MOV A,#8H LCALL SHOW LJMP MAINLINE1PWM9: MOV R2,#0F8H MOV R3,#0F7H MOV R4,#0FFH MOV R5,#37H MOV A,#9H LCALL SHOW LJMP MAINLINE1PWM10: MOV R2,#0f8H MOV R3,#02FH MOV R4,#0FFH MOV R5,#0FFH MOV A,#0AH LCALL SHOW LJMP MAINLINE1MAINLINE1: RETshow: ANL P1,#00101111B;显示速度档次 SETB P1.5 MOVC A,A+DPTR MOV P0,A SETB P3.6 NOP NOP CLR P3.6 LCALL DELAY RETDELAY: MOV PN4,#08H ;40ms延时子程序L7: MOV PN3,#0FAH L8: DJNZ PN3,L8 DJNZ PN4,L7 RET
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 不良品退换货管理制度
- 二手机械设备管理制度
- 面试需要问公司管理制度
- 严格加强值班管理制度
- 书法协会人员管理制度
- 业务系统单证管理制度
- 仓储部门卫生管理制度
- 优化正面清单管理制度
- 中学宿舍卫生管理制度
- 终端厂消防设备管理制度
- 2025年福建省中考道德与法治试卷真题(含标准答案)
- 工程中机电设备安装与调试技术
- 悬挑式钢管脚手架专项施工方案
- 2025年湖北襄阳市检察机关-襄阳市城郊地区检察院招聘67人历年真题
- 2025春季学期国开电大本科《管理英语4》一平台机考真题及答案(第三套)
- 水系统中央空调项目可行性研究报告
- 学生高层宿舍管理制度
- 家庭学校社会协同育人课件
- 2023年广东省广州市南沙区横沥镇七一村社区工作人员考试模拟题及答案
- 丰炜PLC-VB系列安装使用手册
- 变压器运输运行和维护要点
评论
0/150
提交评论