赵荫祥 0902040131 09级电气自动化一班(7)

2019-04-22 21:14

参考文献

[1] 单片机原理与应用研究[M]. 王迎旭编著.北京: 机械工业出版社 ,2004.7 [2] 80C51单片机原理与应用[M]. 吴炳胜,王桂梅等编著.冶金工业出版社,2001.10 [3] 多单片机系统应用技术[M]. 宗光华,李大寨编著.北京:国防工业出版社,2003.10 [4] 单片机C语言编程与实例[M]. 赵亮,侯国锐编著.北京:人民邮电出版社,2003.9 [5] 单芯片8051实务与应用[M]. 杨忠煌,黄博俊,李文昌编著.北京:中国水利水电出版社,2001.5

[6] 2003年全国大学生电子设计竟赛论文[G]. 作 者:刘月龙,曹中平,王善磊.作者单位:吉林大学.指导教师:曹军胜,李宝华,王剑钢

[7] 2003年全国大学生电子设计竟赛论文[G]. 作者:张茗,郭伟华,黄团团.作者单位:中原工学院.指导教师:张五一陈旭

[8] 2003年全国大学生电子设计竟赛论文[G].作者:赵兆俞,怡炜章,鹤麟.作者单位:上海交通大学.赛前辅导教师:马伟敏,文稿整理辅导教师:诸勤敏,袁焱 [9] 单片机技术实用教程[M]. 胡锦等编著.北京:高等教育出版社,2003 [10] 通信原理与电路[M]. 罗伟雄等编著.北京:北京理工大学出版社,2001 [11] IAR System[M]. M SP430 C Complier Programming Guide Dallas TX:TI,1996 [12] 单片机原理及应用[M].孙涵芳等编著. 北京:北京航空航天大学出版社,1998 [13] Digital Signal Processing[M]. Paulo S.R.Diniz.电子工业出版社,2002 [14 ] 实用计算机控制技术[M].王新贤 .济南:山东科学技术出版社,1994 [15] 数字电路与逻辑设计[M].邓元庆.北京:电子工业出版社,2001 [16] 电子设计自动化[M].刘润华.北京:石油大学出版社,2001

[17] 单片微型计算机技术[M]. 刘国荣主编.北京:机械工业出版社,1996 [18] MCS-51系列单片机系统原理与设计[M].苏凯,刘国庆,陈国平编著.北京:治金工业出版社,2003

[19] 单片机原理及应用[M].刘大茂主编. 上海:上海交通大学出版社,2001 [20] MCS-51单片机原理及使用技术[M].张振荣主编.北京:人民邮电大学出版社,2000 [21] 单片机原理及应用[M]. 李建忠编著. 西安:西安电子科技大学出版,2002

26

JMP LLL2

LLL1: MOV A,TL0 ;检测滴速是否处于警戒范围内 CLR C

SUBB A,22H ;22H为保存滴速最大警戒值单元 JNC WARN ;滴速大于最大警戒值,则报警 JMP LLL2 CLR C MOV SUBB JC MOV LLL2: CALL CALL MOV A,20H

SUBB A,21H JZ MOV PUSH MUL MOV MOV JZ MOV JUDG: POP JC FOR : MOV START2: MOV MOV A,TL0

A,#23H ;23H为保存滴速最小警戒值单元 WARN ;滴速小于最小警戒值,则报警 20H,TL0

S_BINBCD ;将滴速数值转化为BCD码,以供显示 DISP ;调用显示子程序,显示滴速实际值 ;21H为保存滴速设定值单元 START ;实际滴速=设定滴速,则返回

B,#m ;调入步进系数m,m反映了滴速差与步进 ;电机转动步数之间的倍数关系 PSW A,B

R4,A ;保存乘积的低8位 A,B

JUDG ;如果高8位为0,即步数小于或等于255,;则转步进电机正反转判断

R4,#255 ;如果高8位不为0,即步数大于255, ;则设定本监控周期最大转动步数为255 PSW

;如果C=1,则N实〈 N设

,控制步进电机反转

R0,#00H ;否则C=0,正转,正转取码指针初值 ;取码指针载入A DPTR,#BU_TABLE ;数据指针指到BU-TABLE

27

REV A,R0

MOV A,@a+BU-TABLE ;至BU-TABLE取值 JZ FOR ;取到结束码,跳至FOR CPL A

MOV P2,A ;将取到的码输出到P2口 CALL DELAY ;20毫秒延时(速度) INC R0 ;取码指针加1,取下一个码 DJNZ R4,START2 JMP START

REV: MOV R0,#05H ;反转取码指针初值 START3: MOV A,R0

MOV DPTR,#BU_TABLE MOV A,@A+DPTR

JZ REV ;取到结束码00H,则跳至REN CPL A MOV P2,A

CALL DELAY ;延时20毫秒 INC R0

DJNZ R4,START3 ;未走完步数,则继续 JMP START

********************步进电机控制程序***********************

#include #include uchar pulse; sbit phase_1=P1^0; sbit phase_2=P2^1 sbit

phase_3=P1^2;

sbit phase_4=P2^3; /*对P1口位操作进行定义*/

void stepping_motors(void) interrupt 1 /*定时器中断子程序,控制步进电机转动速度*/ { switch(pules)

28

{case 0:

{ phase_1=1; /*步进电机的第一相通电,其余相断电*/ phase_2=1; phase_3=0; phase_4=0;

pulse =1; /*保证下次中断程序执行case 1*/

}

break; case 1:

{ phase_1=0

phase_2=1; /*步进电机的第二相通电,其余相断电*/ phase_3=1; phase_4=0;

pulse =2; /*保证下次中断程序执行case 2*/

} break; case 1:

{ phase_1=0 phase_2=0;

phase_3=1; /*步进电机的第三相通电,其余相断电*/ phase_4=1;

pulse =3; /*保证下次中断程序执行case 3*/

}

break;

case 3: { phase_1=1; phase_2=0; phase_3=0;

phase_4=1; /*步进电机第四相通电,其余想断电*/ pulse =0; /*保证下次中断程序执行 case 0*/ } break;

29

}

th0=-(20000/256);

tl0=-(20000%6); /*重载定时器0的时间常数*/ }

void main(void) { pluse=0;

tmod=0x11; /*定时器0和1均工作在方试1*/ th0=-(20000/256); tl0=-(20000%6); et0=1; ea=1; tr0=1; while(1)

{ ; } }

***********************键盘显示程序****************************

Z8279 EQU 08701H ;8279 状态/命令口地址 D8279 EQU 08700H ;8279 数据口地址 LEDMOD EQU 10H ;右端输入八位字符显示

;译码方式,双键互锁

LEDFEQ EQU 39H ;设置分频系数为25,产生100KHz扫描频率 LEDCLS EQU 0D1H ;清除

LEDWR0 EQU 80H ;设定的将要写入的显示RAM地址 KEY: PUSH ACC ;保护现场 PUSH PSW JNB INT0,$ AJMP START ORG 0003H START:

MOV SP,#60H

30


赵荫祥 0902040131 09级电气自动化一班(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:绿色循环有限责任公司创业计划书(完稿)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: