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

正文內(nèi)容

步進(jìn)電機(jī)速度控制系統(tǒng)設(shè)計(jì)(文件)

 

【正文】 機(jī)是系統(tǒng)的核心,主要承擔(dān)控制信號(hào)的接受,邏輯分析和運(yùn)算,控制量的輸出和顯示的運(yùn)算和輸出等功能。 串口通訊控制信號(hào)的輸入也是利用了掃描,不過(guò)單片機(jī)內(nèi)軟件所要做的,主要是定義計(jì)數(shù)器工作及串口協(xié)議,如波特率等。 頻率的快慢必然是要有時(shí)間來(lái)衡量的,顯然要使用單片機(jī)內(nèi)部的計(jì)時(shí)器進(jìn)行計(jì)時(shí) ,電平輸出指令就在計(jì)時(shí)器中斷程序中。 頻率控制原理圖如圖 7 所示 : 圖 7 頻率變化 原理 由圖可以明顯地看出,速度標(biāo)志量越小,輸出波形的頻率越快。 此外,通過(guò)取反改變輸出電平的算法簡(jiǎn)單方便,節(jié)省了單片機(jī)內(nèi)存空間的同時(shí)也節(jié)省了有限的數(shù)據(jù)口。 最后仿真串行接口的通訊與控制。 鍵盤掃描是不斷用接口數(shù)據(jù)與特定 16 進(jìn)制數(shù)進(jìn)行位運(yùn)算,位運(yùn)算的選擇也會(huì)影響到信號(hào)采集的準(zhǔn)確度和管腳的利用率。 串口通信的調(diào)試 調(diào)試串口通訊的關(guān)鍵是對(duì)串口正確地初始化 。 本設(shè)計(jì)只完成了單片機(jī)與控制口之間以字節(jié)為單位的簡(jiǎn)單通訊,所以能通信的控制功能十分有限。 另外,正如程序分析師所述, 本設(shè)計(jì)的軟件采用 了 多個(gè)變量 使單片機(jī)計(jì)時(shí)器等部分得以共享, 當(dāng)有新的控制需要時(shí)間量度時(shí),只需增加變量即可 ,大大提高了使用價(jià)值。 14 參考文獻(xiàn) [1]于海生 .微型計(jì)算機(jī)控制 技術(shù) .北京 :清華大學(xué) 出版社 , [2]常喜茂 ,孔英會(huì)等 .C51 基礎(chǔ)與應(yīng)用實(shí)例 .北京 :電子工業(yè)出版社 ,2020 [3]馬德駿 ,張建宏等 .C 語(yǔ)言程序設(shè)計(jì) .北京 :科學(xué)出版社 ,2020 [4]劉寶廷 ,程樹康等 .步進(jìn)電機(jī)及其驅(qū)動(dòng)控制系統(tǒng) .哈爾濱 :哈爾濱工業(yè)大學(xué)出版社 ,1997 [5]馬忠梅 ,籍順心等 .單片機(jī)的 C 語(yǔ)言應(yīng)用程序設(shè)計(jì) .北京 :北京航空航天大學(xué)出版社 ,2020 15 附錄 include include include int delay()。 void ShowSpeed()。 void delayms(int ms)。 sbit E=P2^6。 char SPEED2[3]=050。b39。 unsigned int t2=0。 //控制狀態(tài) (起始為按鍵控制 ) unsigned char temp。 //設(shè)定串行口工作方式 PCONamp。 //定時(shí)器工作方式 EA=1。0x00ff。 //啟動(dòng)計(jì)數(shù)器 0 Init_RS232()。 while(1) 17 { if(Contrl^P1_6) //控制方式鍵是否按下 Contrl=P1_6。 //存儲(chǔ)接受的數(shù)據(jù) delayms(10)。 ShowSpeed()。 //清除數(shù)據(jù)傳送標(biāo)志 } void delayms(int ms) //延時(shí)子程序 { int i。 } } void cod_scan() //串口掃描程序 { switch (cod) { case 0x01:{if(RunSpeed1=12) //電機(jī) 1 加速 RunSpeed1=RunSpeed12。 case 0x03:{if(RunSpeed2=12) //電機(jī) 2 加速 RunSpeed2=RunSpeed22。 case 0x05:{RunDir1=1。 //電機(jī) 1 正轉(zhuǎn) P2_2=RunDir1。 } 19 break。 default:break。 //沒(méi)有鍵按下時(shí) P3 口都為高電平 /****************K0K3 脈沖式按鍵掃描 ****************/ key=P1amp。 case 0x0d:if(RunSpeed1=100) //電機(jī) 1 減速 RunSpeed1=RunSpeed1+2。 case 0x07:if(RunSpeed2=100) //電機(jī) 2 減速 RunSpeed2=RunSpeed2+2。 //液晶顯示 while((P1amp。 ShowDir()。 TH0=(655351000)8。 t1++。} if(t2=RunSpeed2) {P2=P2^0x02。 //讀顯示器狀態(tài) RW=1。a++)。 else goto start。 P0=0x01。 //顯示打開,顯示光標(biāo),光標(biāo)閃爍 cmd_wr()。 delay()。 } 22 void cmd_wr() //寫控制字 { RS=0。 } void show_lcd(int i) //LCD 顯示子程序 { P0=i。 E=1。 delay()。 P0=0x80 | 0x4f。 //正轉(zhuǎn), forward else show_lcd(backforward)。 SPEED1[2]=(6000/RunSpeed1%10)+48。 delay()。 while(SpeedChar1[i]!=39。 i++。 i=0。 } delay()。 while(SpeedChar2[i]!=39。 i++。 i=0。 } } 。 show_lcd(SPEED2[i])。 P0=0x80 | 0x4a。) //在第二行顯示字符串 “V2(n/min): ” { delay()。 //第二行第 1 位 cmd_wr()。 24 show_lcd(SPEED1[i])。 P0=0x80 | 0x0a。) //在第一行顯示字符串 “V1(n/min): ” { delay()。 //設(shè)置顯示地址(第 0 位起) cmd_wr()。 SPEED2[1]=(6000/RunSpeed2%100/10)+48。 SPEED1[0]=(6000/RunSpeed1/100)+48。 delay()。 //正轉(zhuǎn), forward else show_lcd(backforward)。 P0=0x80 | 0x0f。 RW=0。 E=0。 //顯示打開,關(guān)閉光標(biāo)
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1