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

正文內容

基于單片機的步進電機小車控制系統(tǒng)設計_畢業(yè)設計-閱讀頁

2025-07-25 18:22本頁面
  

【正文】 社,20xx [7]楊寧 .胡學軍 .單片機與控制技術 [M].北京:北京航空航天大學出版社, 20xx [8]郝建國 .趙英杰 .集成電路大全 [M].北京:人民郵電出版社, 1997 [9]王宗培 .任雷 .混合式步進電機轉矩指標的研究 [J].嗲弄技術雜志, 20xx [10]王自強 .步進電機應用技術 [M].中國輕工業(yè)出版社 [11]陳隆昌 .控制電機(第三版) [M].西安:西安電子科技大學出版社, 1993 [12]孟武盛,李亮 .基于 AT89C52 單片機的步進電機控制系統(tǒng)設計 [M].測控技術, [13]程憲平 .電機傳動與控制 [M].武漢:華中科技大學出版社, 1997 [14]劉國永 .陳杰平 .單片機控制步進電機系統(tǒng)設計 [J].安徽:安徽技術師范學院, 20xx, 16( 4) [15]段穎康 .基于 MC9S12XS128 單片機的智能循跡 [J].新特器件應用, 20xx,12 [16]周斌,李立國 .智能光電傳感器布局對路徑識別的影響研究 [J].產品世界, 20xx [17]Open Host Controller Interface Specification for USB[z].Compaq, microsoft, National Semiconductor, 1998 [18]USB Specification [z].1998 [19]MOTOROLA DSP56f803 Technical Data[z].20xx [20]余永權,李小青,陳林康 .單片機應用系統(tǒng)的功率型接口技術 .北京航空航天大學出版社, 1992 [21]劉樂善,胡盛斌,葉濟中 .微型計算機接口技術 .電子科技大學出版社, 1993 附錄Ⅰ 程序清單 25 附錄Ⅰ 程序清單 include include include include define uchar unsigned char define uint unsigned int //************************管腳定義 ************************************/ sbit en_left = P1^0。//左電機方向控制位 sbit clk_left= P1^2。//右電機使能控制位 sbit cw_right= P1^4。//右電機脈沖控制位 /////////////////////////函數聲明 //////////////////////////////////////// void timer1_init()。//左電機運動函數 void move_right(uint speed_r,uchar cw,uchar en)。 //延時函數 //////////////////變量定義 //////////////////////////////////////////////// uint n。//電機速度控制變量 /**************函數體 ******************************************/ void delay(unsigned int k) { unsigned int i,j。ik。j121。}} } /*******************************/ void timer1_init() { TMOD=0X10。 基于單片機的步進電機小車 控制 系統(tǒng)設計 26 EA=1。 TL1=(65536100)%256。//定時器啟動后 運動控制脈沖將一直產生 小車的運動方式受 cw 和 en 控制 } void move_left(uint speed_l,uchar cw,uchar en) { //speed_l 速度控制變量 cw 方向控制變量 en 使能控制變量 speed=speed_l。 } else { cw_left=0。 } else { en_left=0。 //speed 數值與速度成反比 請結合實際情況進行調節(jié), if(cw==1) //但速度不能無限加快因為步進電機有速度上限 { //而且速度加快是力矩會下降,容易導致丟步現(xiàn)象 cw_right=1。 //cw 控制電機正反轉, 1 與 0 各代表一個方向 } if(en==1) { //en 為使能位 1:能 0:不能 en_right=1。 } } void main (void) { delay(10)。 while(1) { move_left(10,0,1)。 } } void timer1_serve() interrupt 3 { TH1=(65536100)/256。 n=n+1。 clk_right=~clk_right。 } } include include include include define uchar unsigned char define uint unsigned int //************************管腳定義 ************************************/ sbit en_left = P1^0。//左電機方向控制位 基于單片機的步進電機小車 控制 系統(tǒng)設計 28 sbit clk_left= P1^2。//右電機使能控制位 sbit cw_right= P1^4。//右電機脈沖控制位 sbit ir_left=P2^5。 //右側紅外傳感器接收位 /////////////////////////函數聲明 //////////////////////////////////////// void timer1_init()。//左電機運動函數 void move_right(uint speed_r,uchar cw,uchar en)。 //延時函數 //////////////////變量定義 //////////////////////////////////////////////// uint n。//電機速度控制變量 /**************函數體 ******************************************/ void delay(unsigned int k) { unsigned int i,j。ik。j121。}} } /*******************************/ void timer1_init() { TMOD=0X10。 EA=1。 TL1=(65536100)%256。//定時器啟動后 運動控制脈沖將一直產生 小車的運動方式受 cw 和 en 控制 } void move_left(uint speed_l,uchar cw,uchar en) { //speed_l 速度控制變量 cw 方向控制變量 en 使能 控制變量 speed=speed_l。 } else 附錄Ⅰ 程序清單 29 { cw_left=0。 } else { en_left=0。 //speed 數值與速度成反比 請結合實際情況進行調節(jié), if(cw==1) //但速度不能無限加快因為步進電機有速度上限 { //而且速度加快是力矩會下降,容易導致丟步現(xiàn)象 cw_right=1。 //cw 控制電機正反轉, 1 與 0 各代表一個方向 } if(en==1) { //en 為使能位 1:能 0:不能 en_right=1。 } } void main (void) { delay(10)。 while(1) { 基于單片機的步進電機小車 控制 系統(tǒng)設計 30 if(ir_left==0amp。ir_right==0) { move_left(15,0,0)。 } if(ir_left==0amp。ir_right==1) { move_left(15,1,1)。 delay(100)。amp。 move_right(15,0,1)。 } if(ir_left==1amp。ir_right==1) { move_left(15,0,1)。 delay(40)。 TL1=(65536100)%256。 // m=m+1。 clk_right=~clk_right。 } } 附錄Ⅰ 程序清單 31 include include include include define uchar unsigned char define uint unsigned int //************************管腳定義 ************************************/ sbit en_left = P1^0。//左電機方向控制位 sbit clk_left= P1^2。//右電機使能控制位 sbit cw_right= P1^4。//右電機脈沖控制位 sbit ir_left=P1^6。 //右側紅外傳感器接收位 sbit ir_mid=P2^3。 //定時器 1 初始化函數 void move_left(uint speed_l,uchar cw,uchar en)。//右電機運動函數 void delay(unsigned int k)。//進定時器 1 中斷次數計數 uint speed。 for(i=0。i++) { for(j=0。j++) {。 ET1=1。 TH1=(65536100)/256。 TR1=1。 if(cw==1) { cw_left=1。 } if(en==1) { en_left=1。 } } void move_right(uint speed_r,uchar cw,uchar en) { //speed_r 速度控制變量 cw 方向控制變量 en 使能控制變量 speed=speed_r。 //所以實際應用當中應調節(jié)到速度可力矩比較合適的數值 } //應考慮到電池電壓,輪胎直徑等因素 else { cw_right=0。 } else 附錄Ⅰ 程序清單 33 { en_right=0。 timer1_init()。amp。amp。 move_right(15,0,1)。 } if(ir_left==0amp。ir_mid==0amp。ir_right==1)//前、左有障礙,右轉 { move_left(15,0,1)。 delay(400)。amp。amp。 move_right(15,0,1)。 } if(ir_left==0amp。ir_mid==1amp。ir_right==1)//左有障礙,右轉 { move_left(15,0,1)。 delay(400)。amp。amp。 move_right(15,1,1)。 } if(ir_left==1amp。ir_mid==0amp。ir_right==1)//前有障礙,右轉 基于單片機的步進電機小車 控制 系統(tǒng)設計 34 { move_left(15,0,1)。 delay(800)。amp。amp。 move_right(15,1,1)。 } if(ir_left==1amp。ir_mid==1amp。ir_right==1)//前左右都沒有障礙,直行 { move_left(15,0,1)。 } } } void timer1_serve() interrupt 3 { TH1=(65536100)/256。 n=n+1。 if(n==speed) { clk_left=~clk_left。 n=0。 the same time you can control the pulse frequency to control the motor rotation speed a
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1