freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機控制的數(shù)控xy工作臺系統(tǒng)設(shè)計-精品-資料下載頁

2024-11-07 21:33本頁面

【導(dǎo)讀】本設(shè)計是基于單片機控制的數(shù)控XY工作臺系統(tǒng)設(shè)計與虛擬仿真。在系統(tǒng)控制電路設(shè)計上,CPU采用的是AT89C51單片機。驅(qū)動,并確定了XY工作臺的傳動方式。單片機的復(fù)位方式為上電自動復(fù)位,時鐘電路為內(nèi)部時鐘方式。在CPU及外圍電路芯片的選擇上,以盡量節(jié)省I/O. 結(jié)構(gòu)簡單,性能更優(yōu)越。

  

【正文】 ion, 2020. 4446 湖北理工學院 畢業(yè)設(shè)計(論文) 29 附 錄 附錄 A 步進電機驅(qū)動數(shù)控 XY軸仿真原理圖 湖北理工學院 畢業(yè)設(shè)計(論文) 30 附錄 B C 語言程序設(shè)計 //本程序為 AT89C51 單片機控制的數(shù)控 XY 平臺步進電機正反轉(zhuǎn) include sbit S1=P1^4。 //將 S1 位定義為 引腳 sbit S2=P1^5。 //將 S2 位定義為 引腳 sbit S3=P1^6。 //將 S3 位定義為 引腳 sbit S4=P1^0。 //將 S4 位定義為 引腳 sbit S5=P1^1。 //將 S5 位定義為 引腳 sbit S6=P1^2。 //將 S6 位定義為 引腳 sbit S7=P1^3。 //將 S7 位定義為 引腳 unsigned char keyval。 //儲存按鍵值 unsigned char ID。 //儲存功能標號 void delay(void) { unsigned char i,j。 for(i=0。i150。i++) for(j=0。j100。j++) 。 } void motor_delay(void) { unsigned int i。 for(i=0。i5000。i++) 。 } void forward( ) { 湖北理工學院 畢業(yè)設(shè)計(論文) 31 P2=0xfc。 //P2 口低四位脈沖 1100 P0=0xfc。 //P0 口低四位脈沖 1100 motor_delay()。 P2=0xf6。 //P2 口低四位脈沖 0110 P0=0xf6。 //P0 口低四位脈沖 0110 motor_delay()。 P2=0xf3。 //P2 口低四位脈沖 0011 P0=0xf3。 //P0 口低四位脈沖 0011 motor_delay()。 P2=0xf9。 //P2 口低四位脈沖 1001 P0=0xf9。 //P0 口低四位脈沖 1001 motor_delay()。 } void backward() { P2=0xfc。 //P2 口低四位脈沖 1100 P0=0xfc。 motor_delay()。 P2=0xf9。 //P2 口低四位脈沖 1001 P0=0xf9。 motor_delay()。 P2=0xf3。 //P2 口低四位脈沖 0011 P0=0xf3。 motor_delay()。 P2=0xf6。 //P2 口低四位脈沖 0110 P0=0xf6。 motor_delay()。 } void stop(void) 湖北理工學院 畢業(yè)設(shè)計(論文) 32 { P2=0xff 。 //停止輸出脈沖 P0=0xff 。 } void forward1( ) { P0=0xfc。 //P0 口低四位脈沖 1100 P2=0xff。 motor_delay()。 P0=0xf6。 //P0 口低四位脈沖 0110 P2=0xff。 motor_delay()。 P0=0xf3。 //P0 口低四位脈沖 0011 P2=0xff。 motor_delay()。 P0=0xf9。 //P0 口低四位脈沖 1001 P2=0xff。 motor_delay()。 } void backward1() { P0=0xfc。 //P0 口低四位脈沖 1100 P2=0xff。 motor_delay()。 P0=0xf9。 //P0 口低四位脈沖 1001 P2=0xff。 motor_delay()。 湖北理工學院 畢業(yè)設(shè)計(論文) 33 P0=0xf3。 //P0 口低四位脈沖 0011 P2=0xff。 motor_delay()。 P0=0xf6。 //P0 口低四位脈沖 0110 P2=0xff。 motor_delay()。 } void forward2( ) { P2=0xfc。 //P2 口低四位脈沖 1100 P0=0xff。 motor_delay()。 P2=0xf6。 //P2 口低四位脈沖 0110 P0=0xff。 motor_delay()。 P2=0xf3。 //P2 口低四位脈沖 0011 P0=0xff。 motor_delay()。 P2=0xf9。 //P2 口低四位脈沖 1001 P0=0xff。 motor_delay()。 } void backward2() { P2=0xfc。 //P2 口低四位脈沖 1100 P0=0xff。 motor_delay()。 P2=0xf9。 //P2 口低四位脈沖 1001 湖北理工學院 畢業(yè)設(shè)計(論文) 34 P0=0xff。 motor_delay()。 P2=0xf3。 //P2 口低四位脈沖 0011 P0=0xff。 motor_delay()。 P2=0xf6。 //P2 口低四位脈沖 0110 P0=0xff。 motor_delay()。 } void main(void) { TMOD=0x01。 //使用定時器 T0 的模式 1 EA=1。 //開總中斷 ET0=1。 //定時器 T0 中斷允許 TR0=1。 //啟動定時器 T0 TH0=(65536500)/256。 //定時器 T0 賦初值,每計數(shù) 200 次( 217 微秒)發(fā)送一次中斷請求 TL0=(65536500)%6。 //定時器 T0 賦初值 keyval=0。 //按鍵值初始化為 0,什么也不做 ID=0。 while(1) { switch(keyval) //根據(jù)按鍵值 keyval 選擇待執(zhí)行的功能 { case 1:forward()。 break。 case 2:backward()。 break。 case 3:stop()。 湖北理工學院 畢業(yè)設(shè)計(論文) 35 break。 case 4:forward1()。 break。 case 5:backward1()。 break。 case 6:forward2()。 break。 case 7:backward2()。 break。 } } } void Time0_serve(void) interrupt 1 using 1 { TR0=0。 //關(guān)閉定時器 T0 if((P1amp。0xff)!=0xff) //第一次檢測到有鍵按下 { delay()。 //延時一段時間再去檢測 if((P1amp。0xff)!=0xff) //確實有鍵按下 { if(S1==0) //按鍵 S1 被按下 keyval=1。 if(S2==0) //按鍵 S2 被按下 keyval=2。 if(S3==0) //按鍵 S3 被按下 keyval=3。 if(S4==0) //按鍵 S4 被按下 keyval=4。 if(S5==0) //按鍵 S5 被按下 keyval=5。 湖北理工學院 畢業(yè)設(shè)計(論文) 36 if(S6==0) //按鍵 S6 被按下 keyval=6。 if(S7==0) //按鍵 S7 被按下 keyval=7。 } } TH0=(65536200)/256。 //定時器 T0 的高 8 位賦初值 TL0=(65536200)%6。 //定時器 T0 的低 8 位賦初值 TR0=1。 //啟動定時器 T0 }
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1