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

正文內(nèi)容

單片機課程設(shè)計--步進電機驅(qū)動器-在線瀏覽

2025-03-05 11:21本頁面
  

【正文】 拍三種工作方式。單(單相繞組通電)四拍(ABCDA。),八拍 (AABBBCCCDDDAA。這里選取的是八拍的工作方式。 20 101 201 300 4 10 510 610 700 801 第2章 總體設(shè)計思路 方案與設(shè)計思路因為步進電機的控制是通過脈沖信號來控制的,將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。用單片機來產(chǎn)生這個脈沖信號,通過單片機的P1口輸出脈沖信號,因為所選電機是四相的,~。~,可以顯示當前的電機轉(zhuǎn)速、運行狀態(tài)、運行方向和檔位。 總框圖圖21 總體設(shè)計方框圖第3章 程序設(shè)計 主程序進入主程序,首先是對LCD進行初始化,然后依次進行鍵盤掃描,調(diào)用步進電機相關(guān)數(shù)據(jù)顯示子函數(shù),若檢測到有鍵按下,則進去相應(yīng)的處理。液晶上顯示有電機運行的狀態(tài)(RUNNING或STOP)、當前檔位(DW)、運行方向(或)以及其運轉(zhuǎn)速度(r/min)?;谶@次課程設(shè)計的要求不高,我們可以選用51系列或52系列單片機,其有可靠性高,易于擴展以及實用性好等特點,完全可以滿足我們的控制要求。其接線圖如下圖53:圖43 液晶與單片機接口原理圖 按鍵電路設(shè)計鍵盤接口按不同標準有不同分類方法,按鍵盤排布,可以分為獨立方式(一組相互獨立的鍵盤)和矩陣(一行列組成矩陣)方式。其原理圖如下圖54:圖44 按鍵與單片機接口原理圖 時針產(chǎn)生電路,其原理圖如下:圖44 時針電路 硬件的總體電路連接圖 45 總體原理圖第5章 調(diào)試與故障分析 軟件編寫及調(diào)試此次編程及調(diào)試是用keil軟件進行的,程序的編寫及調(diào)試步驟如下:1. 根據(jù)步進電機24BYJ48的相序,編好正反轉(zhuǎn)相序表,這個是關(guān)鍵,不能編錯。uchar code cdis1[ ] = { STEPPING MOTOR }。uchar code cdis3[ ] = {STOP }。uchar code cdis5[ ] = {RUNNING}。3. 定義各個按鍵:sbit K1 = P3^2。 //加速sbit K3 = P3^4。 //方向轉(zhuǎn)換sbit BEEP = P3^6。5. 編寫主程序,進入主程序即開始進行鍵盤掃描及調(diào)用液晶顯示。 調(diào)試過程及相關(guān)顯示結(jié)果 將程序下載到單片機中,LCD初始化顯示如下:之后進入步進電機初始化的畫面顯示,電機運行狀態(tài)顯示為STOP,檔位為5檔,如下:按下啟動鍵K1后,轉(zhuǎn)向顯示出顯示》,即電機順時針轉(zhuǎn),顯示如下:按K2鍵一次,檔位加一,高位檔為10檔,此時對應(yīng)電機轉(zhuǎn)速為最慢,,如下圖: 故障分析及解決方法故障一:首先在設(shè)計總體方案時,思路上出現(xiàn)了一些問題,我首先是想在中斷里完成許多應(yīng)在中斷之外完成的事,經(jīng)過同學的指點,后來想清楚了。故障二:由于編寫程序的經(jīng)驗不多,在計算電機轉(zhuǎn)速,并將其顯示在液晶時,遇到了一些問題,速度轉(zhuǎn)換公式是找出來了,但怎樣將其小數(shù)點表示出來,困惑了好久,最后還是請教了同學,才搞定。 故障四:在做好硬件后,將程序下載到芯片后,單片機沒有工作,沒有實現(xiàn)所要的功能,后來經(jīng)過同學的幫助下,發(fā)現(xiàn)我將電容的管腳焊錯了,糾正后,單片機就正常工作了。在用軟件仿真時,出現(xiàn)了一些問題,比如,電機不轉(zhuǎn)動,液晶屏不顯示,經(jīng)過同學的指導下,發(fā)現(xiàn)了其中的問題:電機的線路接錯,液晶屏的電路沒加電阻。由于自己以前沒有做過PCB板,第一次做板對我有一定的挑戰(zhàn),在制作PCB板中,忽略了一些細節(jié)的東西,仔細檢查后,沒有這些細節(jié),就不可能成功,才發(fā)現(xiàn)細節(jié)的重要性。那時我就用萬用表對單板仔細檢查,檢查一遍后,還是沒能找出問題的所在;后面自己想了想,是不是單片機還沒工作???在同學的幫助下,對照PCB圖和實物單板,發(fā)現(xiàn)了我將兩個電容的管腳焊錯了,導致晶振不起振,單片機無法工作;糾正過來以后,液晶屏正常顯示,電機也轉(zhuǎn)動了,心情非常激動,非常感謝同學的幫助,謝謝你們。define uchar unsigned chardefine uint unsigned intdefine delayNOP()。_nop_()。_nop_()。uchar code FFW[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9}。//反轉(zhuǎn)相序編碼表sbit K1 = P3^2。 //加速sbit K3 = P3^4。 //方向轉(zhuǎn)換sbit LCD_RS = P2^0。sbit LCD_EN = P2^2。 //運行與停止標志bit direction=1。uchar code cdis1[ ] = { STEPPING MOTOR }。uchar code cdis3[ ] = {STOP }。uchar code cdis5[ ] = {RUNNING}。uchar code cdis7[ ] = {RATE:}。uchar rate=5。 uint zs,data_temp。 while(t) { for(k=0。 k++) { } }}bit lcd_busy() //檢查LCD是否為忙狀態(tài),lcd_busy為1時,忙,等待。 { bit result。 LCD_RW = 1。 delayNOP()。0x80)。 return(result)。{ while(lcd_busy())。 LCD_RW = 0。 _nop_()。 P0 = cmd。 LCD_EN = 1。 LCD_EN = 0。{ while(lcd_busy())。 LCD_RW = 0。 P0 = dat。 LCD_EN = 1。 LCD_EN = 0。 lcd_wcmd(0x38)。 lcd_wcmd(0x38)。 lcd_wcmd(0x38)。 lcd_wcmd(0x0c)。 lcd_wcmd(0x06)。 lcd_wcmd(0x01)。} /********************************************************/void lcd_pos(uchar pos)//設(shè)定顯示位置{ lcd_wcmd(pos | 0x80)。 //延時 lcd_init()。 //設(shè)置顯示位置為第一行的第1個字符 m = 0。\039。 m++。 lcd_wcmd(0x01)。 //清屏以后的這個延時不能少,給LCD一定的緩沖,否則下一條指令不一定被執(zhí)行 lcd_pos(0x1
點擊復制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1