基于单片机的直流电机调速系统软件设计(8)

2019-05-26 22:50

参考文献

[1] 柴钰. 单片机原理及应用[M]. 西安:西安电子科技大学出版社,2009.

[2] 唐继贤.51单片机应用系统开发实例精解[M].上海:上海科学技术出版社,2012. [3]常喜茂,孔英会,付小宁.C51基础与应用实例[M].北京:电子工业出版社,2009 [4]皮大能,南广群,刘金华.单片机课程设计指导书[M].北京:北京理工大学出版社,2010

[5]杨欣,王玉凤,张延强.51单片机应用实例详解[M].北京:清华大学出版社,2010 [6] 李全利,迟荣强. 单片机原理及接口技术[M]. 北京:高等教育出版社,2004. [7] 余永权. ATMEL 89系列单片机应用技术[M]. 北京:北京航空航天大学出版社,2002.

[8] 胡汉才. 单片机原理及系统设计[M]. 北京:清华大学出版社,2002.

[9]谢维成,杨加国.单片机原理与应用及C51程序设计[M].北京:清华大学出版社,2009 [10]唐颖.单片机原理应用C51程序设计[].北京:北京大学出版社,2008

[11]马斌,韩忠华,王长涛,夏兴华.单片机原理及应用[M]:C语言程序设计与实现[M]-北京:人民邮电出版社,2009

[12]李玮,赵江,刘建业.一种实用的单片机控制的数字式调速系统。

[ 13] 浦龙梅, 李私. 单片机控制的直流PWM 调速装置的研究[ J] . 变频器世界, 2006, ( 03): 48) 51.

[ 14]王志良. 电力电子新器件及其应用技术[M ].北京:工业出版社, 1995.

[15]何涛.数字式电机调速系统的设计与分析[D].西安交通大学硕士学位论文,2002 [16]王立红.基于单片机的直流电机控制系统设计[J].知识与经济,2011 [17]邸春芳.车载MP3的系统设计[D].西南石油大学硕士学位论文,2006

- 32 -

附 录 一

参考程序清单

主程序清单:

#include

unsigned int HigCount = 0xFF00; unsigned int LowCount = 0xFA00; unsigned int SpeedCount = 0; unsigned int DisplayCount = 0; float FI;

unsigned int NI; int FLAG_DIS = 0;

unsigned char ID7,ID6,ID5,ID4,ID3,ID2,ID1,ID0,ID; //unsigned char ID;

void Inittimer(void) //定时器初始化 {

TMOD = 0X11; //两个定时器都是方式1 EA = 1; ET0 = 1; ET1 = 1; TR0 = 0; TR1 = 0; IT0 = 1; //外部中断是脉冲触发方式的 }

void time0_int(void) interrupt 1 using 3 //TIMER0_ISR {

TR0=0; //停定时器0 ENB = 1;

TH1 = HigCount/256; TL1 = HigCount%6; TR1=1; //开定时器1 DisplayCount++; //测速计数的变量 if(DisplayCount>=0x1F4) { EX0 = 0; TR1 = 0; START = 0; START = 1;

- 33 -

START = 0; while(EOC==1){} //AD转换的输出高组态 while(EOC==0){} // AD转换结束 ChuLi(); SpeedCount = SpeedCount * 120; if(FLAG_DIS ==0) displaydata_SP(); SpeedCount = 0; DisplayCount = 0; EX0 = 1; TR1 = 1; } }

void time1_int(void) interrupt 3 using 3 {

TR1=0; ENB = 0; TH0 = LowCount/256; TL0 = LowCount%6; TR0=1; }

void INT0_ISR(void) interrupt 0 using 3 { SpeedCount++; }

void ChuLi(void) { OE = 1; delay(1); ID7 = P0<<7 & 0x80; ID6 = P0<<5 & 0x40; ID5 = P0<<3 & 0x20; ID4 = P0<<1 & 0x10; ID3 = P0>>1 & 0x08; ID2 = P0>>3 & 0x04; ID1 = P0>>5 & 0x02; ID0 = P0_7;

//TIMER1_ISR //INT0_ISR - 34 -

ID = ID7|ID6|ID5|ID4|ID3|ID2|ID1|ID0; //将模数转换出来的值变成一个8位数 FI = ID * 4.78; //转换求出所求的电压 NI = FI; OE = 0; P0 = 0XFF; displaydata_I(); if(NI<100||NI>210) P1_2=1; }

void main(void) {

ENB = 0; OE = 0; Inittimer(); inputcom(0x80); displaychar(\ while(1) { if(P1_0==0) { delay(500); ZhengZ(); } if(P1_1==0) { delay(500); FanZ(); } if(P1_3==0) { delay(500); SpeedUp(); } if(P1_5==0) { delay(500); SlowDown(); }

- 35 -

if(P1_7==0) { delay(500); STOP(); } } }

驱动程序清单:

#include extern speed; extern HigCount; extern LowCount; extern FLAG_DIS;

void ZhengZ(void) {

IN3 = 0; IN4 = 1; EX0 = 1; FLAG_DIS = 0; init1602() ; inputcom(0x80); displaychar(\ }

void FanZ(void) {

IN3 = 1; IN4 = 0; EX0 = 1; FLAG_DIS = 0; init1602(); inputcom(0x80); displaychar(\ }

void STOP(void) {

IN3 = 1; IN4 = 1;

//正转处理 \//反转处理 \//急停 - 36 -


基于单片机的直流电机调速系统软件设计(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:课程设计2

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

马上注册会员

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