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

正文內容

基于步進電機的畫圓小車設計畢業(yè)論文(參考版)

2025-06-30 23:06本頁面
  

【正文】 我將在未來的工作中繼續(xù)學習電子電路方面的知識,始終本著為科學的實事求是的科學態(tài)度,更加努力,成為合格的大學畢業(yè)生。我準備在今后的工作過程中進一步完善此設計。致此本人設計基本完成了預期的目標,系統(tǒng)在硬件自動測試,鍵盤操作,實時顯示方面做的比較好。同時也AT89S52內含4KB FLASH ROM,開發(fā)環(huán)境友好,易用,方便,大大加快本系統(tǒng)設計開發(fā)。 LCD_DisplayNum(0x80+0x40+0x06, R)。 default: break。 TR0 = 1。 //清屏 LCD_DisplayStr(0x80, Car running...)。 //計算換相時間和換相次數 TurnLED(1)。 break。 case 2: //按下R鍵 R。 if(R 30) R = 5。 //在LCD上顯示輸入提示信息 while(1) { if(CarRun == 0) //小車停止繪圖時 { keycode = KeyScan()。 //步進電機端口初始化 Timer0Init()。 LCD_Init()。 //以R為半徑時的小車畫圓內徑周長S //采用控制電機換相時間長短進行調速,實際調速本程序只對內徑電機調速,外徑電機一直為全速。 //定義小車啟動標志,1 小車正在繪圖;0 小車停止繪圖 /****************************************************************** 函數名:CalculateDelay 功能描述:計算V1:V2的值,進而計算Percent內徑電機換相時間以及 小車繪制完成r為半徑的圓,所需內徑電機換相次數circlenum 函數屬性:內部 輸入參數: r 待繪制圓的半徑 輸出參數: Percent 換相時間 circlenum 換相次數 返回值:無 ******************************************************************/void CalculateDelay(unsigned char r){// V1 : V2 = r : (r + d) double x1。unsigned char R = 18。include include include define d 18 //兩車輪間距18cmdefine PI define L //extern unsigned int Percent。即控制內外兩個輪子的速度比恒定,即可畫出圓形,速度比為r/(r+d),半徑即為r。 CarRun = 0。 TL0 = (65536 23) % 256。 TurnLED(0)。 //累計左輪電機換相次數 if(addcircle = circlenum) { //小車已畫完一圈 TR0 = 0。 default: break。 MotorL_D = 1。 //LC相通電 break。 case 3: MotorL_B = 0。 MotorL_B = 1。 //LA相通電 break。 switch(MotorL_PhaseNumber) { case 1: MotorL_D = 0。 MotorL_PhaseNumber++。 } } //車輪轉動一周需要2048次換相 SpeedLnum++。 //RD相通電 break。 case 4: MotorR_C = 0。 MotorR_C = 1。 //RB相通電 break。 case 2: MotorR_A = 0。 MotorR_A = 1。 //累計右輪電機循環(huán)換相 if(MotorR_PhaseNumber = 5) MotorR_PhaseNumber = 1。 //累計右輪電機換相時間 if(SpeedRnum = 100) //外徑速度比例為1,即2300us { SpeedRnum = 0。 TL0 = (65536 23) % 256。 TR0 = 0。 EA = 1。 TH0 = (65536 23) / 256。 else LED = 1。 MotorR_D = 0。 MotorR_B = 0。 MotorL_D = 0。 MotorL_B = 0。extern unsigned char CarRun。 //內徑電機換相時間unsigned int circlenum。 //外徑,即右輪電機換相時間累計變量static unsigned int addcircle = 0。 //右輪電機循環(huán)換相累計變量static unsigned int SpeedLnum = 0。 //小車畫圓指示燈,小車進行畫圓時,指示燈亮起;停止畫圓時,指示燈熄滅static unsigned char MotorL_PhaseNumber = 0。sbit MotorR_D = P2^4。 //右輪電機控制端口sbit MotorR_B = P2^6。sbit MotorL_D = P2^3。 //左輪電機控制端口sbit MotorL_B = P2^1。通過不斷變相使電機運轉。 } } return 0。 if(key3 == 0) { while(key3 == 0)。 return 2。 } } else if(key2 == 0) { KeyDelay(1)。 if(key1 == 0) { while(key1 == 0)。 j++)。 i++) for(j = 0。 for(i = 0。sbit key3 = P1^4。按鍵檢測程序流程圖:是否有鍵按下延時確實有鍵按下判斷哪個鍵按下3鍵1鍵2鍵返回1返回2返回3三Y是否松手YNN按鍵檢測程序:/***************************************************************/include sbit key1 = P1^2。}/****************************************************************/ 按鍵檢測按鍵檢測只需要檢測低電平,并返回一個數值,程序就通過數值判斷是哪個鍵按下,1鍵是加,2鍵是減,3鍵是確定。 LCD_DisplayNum(0x80+0x40+0x06, r)。 //清屏 LCD_DisplayStr(0x80, Please input:)。 LCD_DisplayStr(address, temp)。} /****************************************************************** 函數名:LCD_DisplayNum 功能描述:在LCD上顯示數字 函數屬性:外部 輸入參數: address 數字在LCD上顯示的地址 dat 待顯示的數值 輸出參數:無 返回值:無 ******************************************************************/ void LCD_DisplayNum(uint address, unsigned long dat){ char temp[5]。039。i++) { str[i] = temp[j i 1]。 for(i = 0。 dat /= 10。 while(dat) { temp[i] = dat % 10 + 0x30。 unsigned char i = 0,j = 0。 i++)
點擊復制文檔內容
試題試卷相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1