数字阀的步进电机驱动控制系统设计

数字阀的步进电机驱动控制系统设计

ID:35343915

大小:58.60 KB

页数:9页

时间:2019-03-23

数字阀的步进电机驱动控制系统设计_第1页
数字阀的步进电机驱动控制系统设计_第2页
数字阀的步进电机驱动控制系统设计_第3页
数字阀的步进电机驱动控制系统设计_第4页
数字阀的步进电机驱动控制系统设计_第5页
资源描述:

《数字阀的步进电机驱动控制系统设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、#include#inckidc#defineucharunsignedchar#defineuintunsignedintunsignedcharcodeFFW⑻二{0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};//正转unsignedcharcodeREV[8J={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//反转sbitkl=PlA2;//运行与停止sbitk2=PlA3;//设定圈数sbitk3=PlAl;//方向转换sb

2、itk4=P3A0;//速度调整sbitLCD_RS=P0A7;sbitLCD_RW=P0A6;sbitLCD_EN=P0A5;biton_off=0;〃运行与停止标志bitdirection=1;〃方向标志bitratc_di-1;//速度标志bitsnum_dr=1;//圈数标'忐ucharcodecdisl[J={"welcome");ucharcodecdis2[]={"2015/3/12"};ucharcodecdis3[]={"STOP”};ucharcodecdis4[]={HNUM:RATE:H);ucharcodecdis5[

3、口”RUNNING”};ucharm,v=0,q=0;ucharnumbei-(),number1=0;ucharsnum=20,snum1=20;〃预设圈数ucharrate=3;〃预设速率uchardata_temp,data_temP2,data_temp2;〃延时tmsvoiddelay(uintt)〃延时约1ms,时钟11.0592MHZ{uchark;while(t-){for(k=0;k<120;k++){}voiddelayB(ucharx)//x*0.14Ms{uchari;while(x—){for(i=0;i<13;i++

4、){}bitLCD_busy()〃检查LCD忙状态{bitresult;LCD_RS=();LCD_RW=1;LCD_EN=1;delay(5);result=(bit)(P2&0x80);LCD_EN=();rcturn(rcsult);}voidlcd_wcmd(ucharcmd)//写指令数据到LCDwhile(lcd_busy());LCD_RS=0;LCD_RW=0;LCD_EN=();_nop_();_nop_();P2=cmd;delay(5);LCD_EN=();voidlcd_wdat(uchardat)//7^显示数据到LC

5、D{while(lcd_busy());LCD_RS=1;LCD_RW=0;LCD_EN=0;P2=dat;dclay(5);LCD_EN=1;delay(5);LCD_EN=O;}voidlcd_init()//LCD初始化设定{delay(30);lcd_wcmd(0x38);//16*2显示,5*7点阵,delay⑸;lcd_wcmd(0x38);delay(5);lcd_wcmd(0x38);delay(5);lcd_wcmd(0x0c);〃显示开,光标关delay(5);lcd_wcmd(0x()6);//移动光标delay(5);l

6、cd_wcmd(OxO1)“/清屏delay(5);voidlcd_pos(ucharpos)〃设置显示位置{lcd_wcmd(posl0x80);//数据指针=80+地址变量}voidLCD」nit_DIS()//LCD1602初始显示了程序{delay(IO);lcd_init();//初始化LCDlcd_pos(0);〃设置显示位置为第一行的第1个字符m=0;while(cdisl[m]!='){〃显示字符lcd_wdat(cdisl[m]);m++;}lcd_pos(0x40);〃设置显示位置为第二彳亍的笫1个字符m=0;while

7、(cdis2[m]!=A0')lcd_wdat(cdis2[m]);m++;}delay(3000);lcd_pos(0);〃设置显示位置为笫一•行的笫1个字符m=0;while(cdis3[m]!=*){〃显示字符lcd_wdat(cdi$3[m]);m++;}lcd_pos(0x40);〃设置显示位置为第二行的第1个字符m=();whilc(cdis4[m]!=*'){lcd_wdat(cdis4[m]);//显示字符m++;}for(m=0;m<2;m++){lcd_pos(0x0c+m);//显示方向符号Icd_wdat(()x

8、3e);voiddata_conv()//数据转换子程序{data_temP2=data_temp/10;〃高位if(data_temP2==0){d

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。