九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

基于51單片機的光電編碼器測速.doc

  • 資源ID:116395871       資源大?。?span id="24d9guoke414" class="font-tahoma">3.24MB        全文頁數(shù):21頁
  • 資源格式: DOC        下載積分:20積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要20積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

基于51單片機的光電編碼器測速.doc

課程設(shè)計報告課程名稱: 微機原理課程設(shè)計 題 目: 基于51單片機的光電編碼器測速 摘要光電編碼器是高精度位置控制系統(tǒng)常用的一種位移檢測傳感器。在位置控制系統(tǒng)中,由于電機既可能正轉(zhuǎn),也可能反轉(zhuǎn),所以要對與其相連的編碼器輸出的脈沖進行計數(shù),要求相應(yīng)的計數(shù)器既能實現(xiàn)加計數(shù),又能實現(xiàn)減計數(shù),即進行可逆計數(shù)。其計數(shù)的方法有多種,包括純粹的軟件計數(shù)和硬件計數(shù)。文中分別對這兩種常用的計數(shù)方法進行了分析,對其優(yōu)缺點進行了對比,最后提出了一種新的計數(shù)方法,利用80C51單片機內(nèi)部的計數(shù)器實現(xiàn)對光電編碼器輸出脈沖的加減可逆計數(shù),既節(jié)省了硬件資源,又能得到較高的計數(shù)頻率。本設(shè)計就是由單片機STC89C52RC芯片,光電編碼器和1602液晶為核心,輔以必要的電路,構(gòu)成了一個基于51單片機的光電編碼器測速器。該系統(tǒng)有兩個控制按鍵,分別用于控制每秒的轉(zhuǎn)速和每分鐘的轉(zhuǎn)速,并將速度用1602液晶顯示出來。該測速器測速精準,具有實時檢測的功能,操作簡單。關(guān)鍵詞:光電編碼器,51單片機,C語言,1602液晶目錄一、設(shè)計任務(wù)與要求41.1 設(shè)計任務(wù)41.2 設(shè)計要求4二、方案總體設(shè)計52.1 方案一52.2 方案二52.3 系統(tǒng)采用方案5三、硬件設(shè)計73.1 單片機最小系統(tǒng)73.2 液晶顯示模塊73.3 系統(tǒng)電源83.4光電編碼器電路83.5 整體電路9四、軟件設(shè)計104.1 keil軟件介紹104.2 系統(tǒng)程序流程10五、仿真與實現(xiàn)125.1 proteus軟件介紹125.2 仿真過程125.3 實物制作與調(diào)試135.4 使用說明14六、總結(jié)156.1 設(shè)計總結(jié)156.2 經(jīng)驗總結(jié)15七、參考文獻16一、設(shè)計任務(wù)與要求1.1 設(shè)計任務(wù)1).對更多小器件的了解2).鞏固51單片機和C語言的知識,熟悉單片機和C語言的實際操作運用3).掌握仿真軟件的運用和原理圖的繪制4).加深焊接的技巧,提高焊接的能力5).熟悉調(diào)試方法和技巧,提高解決實際問題的能力6).熟悉設(shè)計報告的編寫過程1.2 設(shè)計要求1).兩個按鍵控制顯示每分鐘和每秒鐘的功能2).74LS74輔助光電編碼器測轉(zhuǎn)向3).光電編碼器輸出脈沖計數(shù)4).1602液晶顯示轉(zhuǎn)速二、方案總體設(shè)計設(shè)計一個基于51單片機的光電編碼器測測速。設(shè)計一個電路來實現(xiàn)光電編碼器測量;利用單片機內(nèi)部精確到微妙的定時計數(shù)器來實現(xiàn)一個周期的時間來統(tǒng)計脈沖數(shù);74LS74作為輔助芯片來完善光電編碼器測轉(zhuǎn)向的功能;P0和P2口控制1602液晶顯示轉(zhuǎn)速;利用P11和P12來實現(xiàn)液晶顯示每秒鐘和每分鐘轉(zhuǎn)速的功能;利用復(fù)位按鍵功能來實現(xiàn)復(fù)位操作。調(diào)節(jié)藍白滑動變阻器來調(diào)節(jié)液晶亮度。2.1 方案一51單片機的定時/計數(shù)器工作在模式2時是一個可以自動重裝載的8位定時/計數(shù)器。工作時高八位和低八位裝入相同的初值,當?shù)桶宋谎b滿時,高八位的值自動裝入到第八位中,從而可以省去用戶軟件中重裝初值常數(shù)的語句,可產(chǎn)生相當精確的定時時間。由于只有八位參與計數(shù),所以其計數(shù)周期最大為256微妙。采用初值裝入0 x38,每個200微妙進入一次中斷,5000次中斷為100毫秒,即實現(xiàn)周期為1秒的脈沖計數(shù)。光電編碼器的A相接在單片機的外部中斷,光電編碼器的B相接在單片機的P10。A相發(fā)出的脈沖每觸發(fā)一次中斷就就計數(shù)一個脈沖,并且再對P10的高低電平進行檢測,如果為高電平則為反轉(zhuǎn),如果是低電平則為正轉(zhuǎn)。反向器中的兩個作為放大作用。再接兩個三極管作為開關(guān)作用,組成一個直流電機的驅(qū)動電路。P11和P12分別控制液晶顯示每分鐘的轉(zhuǎn)速和每秒鐘的轉(zhuǎn)速。P2口控制1602液晶的數(shù)據(jù)口,P0的三個引腳控制1602液晶的數(shù)據(jù)/命令選擇端、讀/寫選擇端、使能端來顯示速度。2.2 方案二51單片機的定時/計數(shù)器工作在模式0時是一個16位位定時/計數(shù)器。工作時高八位和低八位各裝入初值,當?shù)桶宋谎b滿時,高八位加1。由于是16位參與計數(shù),所以其計數(shù)周期最大為65536微妙。采用初值高八位裝入0 xfc,初值低八位裝入0 x18,每個1000微妙進入一次中斷,1000次中斷為1秒,即形成周期為1秒的脈沖計數(shù)。本方案在方案1的基礎(chǔ)上外接一個74LS74的芯片。光電編碼器的A相接在單片機的P34的引腳,利用單片機的計數(shù)器1進行脈沖計數(shù),同時接在74LS74的時鐘信號接口。光電編碼器的B相接在74LS74的D接口。Q端接在P32引腳,Q非端接在P33引腳。利用兩個外部中斷來判斷正反轉(zhuǎn)。P11和P12分別控制液晶顯示每分鐘的轉(zhuǎn)速和每秒鐘的轉(zhuǎn)速。P2口控制1602液晶的數(shù)據(jù)口,P0的三個引腳控制1602液晶的數(shù)據(jù)/命令選擇端、讀/寫選擇端、使能端來顯示速度。2.3 系統(tǒng)采用方案1)總體設(shè)計圖1為設(shè)計總體框架圖,通過該圖大致的介紹了一下整個光電編碼器測速系統(tǒng)的各個主要部分。圖1 系統(tǒng)總體框架2)總體工作原理由于定時器工作模式2是八位,可裝入的值太小,每進行一個周期的脈沖統(tǒng)計需要進入5000次定時器中斷,由于進入中斷的次數(shù)太多,所以很容易出現(xiàn)在低八位裝滿本應(yīng)觸發(fā)而程序還在中斷子程序中運行,而無法觸發(fā)中斷的情況,所以不采用工作模式2。工作模式0只需要進入定時中斷1000次就可以進行一個周期的脈沖統(tǒng)計,所以選擇功能模式0。方案一中用,用純軟件計數(shù)雖然電路簡單,但是計數(shù)速度慢,難以滿足實時性要求,而且容易出錯。我們可以用單片機內(nèi)部的計數(shù)器來實現(xiàn)加減計數(shù)。單片機片內(nèi)有兩個16位定時計數(shù)器都可以用來脈沖計數(shù),用兩個外部中斷來檢測正反轉(zhuǎn),避免了每一個脈沖都要進行高低電平檢測的步驟。控制按鍵,液晶和復(fù)位方面的設(shè)計在方案一和方案二中一樣。綜上考慮,最終方案確定為方案二。三、硬件設(shè)計3.1 單片機最小系統(tǒng)單片機要正常工作,首先要產(chǎn)生片內(nèi)時鐘信號。在單片機內(nèi)部的振蕩器的輸入端XTAL1和輸出端XTAL2之間接一個石英晶振就可以夠成一個自激振蕩器。再在兩端之間串聯(lián)接個電容并且在兩個電容之間接地以便于穩(wěn)定頻率還對振蕩頻率有微調(diào)作用。電容通常選30PF左右,振蕩脈沖頻率范圍為024MHZ。該電路中選用12MHZ晶振。時鐘電路圖如下:圖2 時鐘電路圖單片機在啟動時與其他微處理器一樣,要讓CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始開始工作。這就需要復(fù)位操作。復(fù)位電路有兩種方式:上電自動復(fù)位和按鍵自動復(fù)位。上電自動復(fù)位只是在開始接通電源瞬間復(fù)位,接下來想要再次復(fù)位就需要斷電重啟,不方便。按鍵自動復(fù)位不僅可以在開始接通電源瞬間復(fù)位還可以通過按下按鍵復(fù)位隨時復(fù)位。所以選擇按鍵復(fù)位方式。復(fù)位電路如下:圖3 復(fù)位電路圖3.2 液晶顯示模塊該可調(diào)直流電機最大速度為每分鐘1200轉(zhuǎn),采用1602液晶顯示。控制1602液晶亮度的是藍白滑動變阻器。1602液晶有16個管腳。編號為1,2管腳為電源正負極管腳,15,16為背光源正負極管腳;714為dataI/O管腳與單片機的P0口相連,負責(zé)液晶與芯片之間的信息傳送;4,5,6分別為數(shù)據(jù)/命令選擇端、讀/寫選擇端、使能端,與單片機的, P20、P21、P22相連,負責(zé)控制液晶與芯片之間數(shù)據(jù)命令的讀寫操作;3為液晶顯示偏壓信號端,用于調(diào)整液晶顯示對比度。1602液晶顯示原理圖如下:圖4 液晶顯示系統(tǒng)圖3.3 系統(tǒng)電源為了方便控制系統(tǒng)的上電與斷電,系統(tǒng)電源中連接了一個藍白自鎖開關(guān)。此開關(guān)兩邊各有三個引腳,不同的連接方式,開關(guān)的控制方法就不同。電源的正負極各接在此開關(guān)的兩邊。為了方便觀察電源是否接上,在電路中的VCC與GND之間接一個發(fā)光二極管并且加一個限流電阻防止發(fā)光二極管燒壞,電源通電時發(fā)光二極管亮,斷電時,則暗。再接四個排針便兩邊的兩個排針用于外部電源給系統(tǒng)上電,中間的兩個排針是用于單片機燒錄程序。如圖所示:圖5 系統(tǒng)電源圖3.4光電編碼器電路這是一張光電編碼器部分的電路原理圖。圖上的74LS74芯片上就是兩個D觸發(fā)器。A相接在P34的引腳用于計數(shù)器0采集脈沖。A相同時接在CLK端,B相接在D端,Q接在P3.2引腳,外部中斷0檢測和Q非接在P3.3外部中斷1來檢測。另外A相和B相各需接一個上拉電阻,阻值為1K。這樣輸出的脈沖就可以直接接在單片機上,進行檢測了。另外74LS74芯片的SET引腳,CLR引腳,VCC引腳都接電源,GND引腳接地。整個電路就連接完成了。圖6 光電編碼器電路3.5 整體電路這是采用網(wǎng)絡(luò)標號的畫出的以一張整體電路圖。它將整張可調(diào)直流電機的電路原理圖分為七個部分:電源模塊,P0口上拉電阻,1602液晶模塊,51單片機,復(fù)位晶振電路,控制按鍵和光電編碼器電路。整張原理看起來美觀,明了并且根據(jù)標號很容易找到與之對應(yīng)的引腳。圖7 整體電路圖四、軟件設(shè)計4.1 keil軟件介紹Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng)。Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種Keil軟件圖標是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于MCS-51單片機的匯編軟件有早期的A51,隨著單片機開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對于使用51系列單片機的愛好者來說是十分必要的,如果你使用C語言編程,那么Keil幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。4.2 系統(tǒng)程序流程1) 主程序流程圖8為光電編碼器測速系統(tǒng)的主程序流程圖。通過該圖可以直觀的了解到整個調(diào)控程序的大致走向為先掃描每秒鐘速度和每分鐘速度的控制按鍵,確定了是顯示速度的方式之后,再執(zhí)行液晶顯示程序,顯示出速度。接著又重新回到控制按鍵掃描的程序中,如此不斷重復(fù)循環(huán)。圖8 主程序流程圖2)中斷程序流程圖9為光電編碼器測速系統(tǒng)的中斷程序流程圖。脈沖計數(shù)周期主要是由單片機內(nèi)部精確到毫秒的定時器每次以間隔相同的時間進入中斷,中斷1000次才形成一個周期。一個周期的時間到了,就進行一次脈沖計算。一個周期時間沒到就進入主程序。從而控制每個周期的方波高電平和低電平各自持續(xù)的時間,即控制了方波的占空比。通過該圖也可以清晰明了的知道,該中斷程序主要涉及的就是方波的調(diào)控。先是判斷高電平是否未達到調(diào)控的時間,如果未達到則讓gdp+1,即讓繼續(xù)高電平保持。如果gdp為100則說明主程序已經(jīng)把方波調(diào)控到一直保持高電平,就讓gdp為0,就可以一直輸出高電平了。如果高電平達到了調(diào)控的時間,就讓控制電機的兩個引腳都為低電平并讓ddp+1,即讓繼續(xù)低電平保持。如果低電平未達到了調(diào)控的時間,就進入主程序繼續(xù)保持低電平等待下一次中斷。如果低電平達到了調(diào)控的時間,就讓ddp=gdp=0,即重新開始下一個方波。圖9 定時器中斷程序流程圖五、仿真與實現(xiàn)5.1 proteus軟件介紹Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持KEIL,IAR和MPLAB等多種編譯器。PROTEUS不僅可將許多單片機實例功能形象化,也可將許多單片機實例運行過程形象化。前者可在相當程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機實驗硬件高度對應(yīng)。這在相當程度上替代了傳統(tǒng)的單片機實驗教學(xué)的功能,例:元器件選擇、電路連接、電路檢測、電路修改、軟件調(diào)試、運行結(jié)果等。使用Proteus軟件進行單片機系統(tǒng)仿真設(shè)計,是虛擬仿真技術(shù)和計算機多媒體技術(shù)相結(jié)合的綜合運用,有利于培養(yǎng)學(xué)生的電路設(shè)計能力及仿真軟件的操作能力;在單片機課程設(shè)計和全國大學(xué)生電子設(shè)計。實踐證明,在使用Proteus進行系統(tǒng)仿真開發(fā)成功之后再進行實際制作,能極大提高單片機系統(tǒng)設(shè)計效率。因此,Proteus有較高的推廣利用價值。由于該設(shè)計的光電編碼器測速在仿真軟件中無法仿真,只能仿真液晶顯示部分,所以仿真原理圖忽略。5.2 仿真過程圖10為使用keil軟件編寫程序時的調(diào)試過程圖。我用的是C語言來編寫。第一次編寫完程序后,然后編譯一下,出現(xiàn)的對話框中顯示有幾個錯誤,點擊錯誤提示,主程序會出現(xiàn)光標只向錯誤的地方,根據(jù)這個錯誤提示,然后進行更改,再編譯一下,程序還是顯示有錯誤,再重復(fù)上次的操作,進過了幾次修改后,就如圖所示沒有錯誤提示了。編寫程序就是這樣,需要不斷修改,程序才能準確。程序編寫好,還要編譯成HEX文件。只有HEX文件才能燒錄到到單片機上。圖10 keil軟件仿真圖5.3 實物制作與調(diào)試圖11為實物圖的背面,圖12為實物圖的正面。原理圖和洞洞板圖畫好,程序?qū)懞煤缶涂梢蚤_始焊接了。在剛開始焊好后,燒錄程序進去,但液晶卻不能顯示,于是我就在protues中仿真了液晶顯示部分,仿真中能實現(xiàn)正確顯示,再檢查一下有沒有焊接錯誤,也沒有發(fā)現(xiàn)任何錯誤,我就想如果我能正確控制1602液晶的引腳,它就應(yīng)該能夠顯示,于是我在出現(xiàn)中令P2=0 xaa,en=1,rw=0,rs=1,然后用萬用電表檢查液晶上的液晶是否是如我所設(shè)定的那樣,電平引腳和我設(shè)置的一樣。我再令P2=0 x55,en=0,rw=1,rs=0,結(jié)果我發(fā)現(xiàn)rs液引腳為高電平,而我設(shè)置的為低電平。我用萬用電表檢查,發(fā)現(xiàn)rs引出的那根導(dǎo)線與電源短路了,可是我根本看不出來哪里短路了,我就先把rs引出的那根導(dǎo)線焊開分成兩段,再檢查其中有一段是短路的,接著再焊開成兩段,繼續(xù)檢查,最后找到了短路的地方,原來是兩個焊盤本身就是連在一起。我就把其中一個焊盤用電烙鐵焊掉,用走線連接,一上電,液晶立刻就顯示正常。圖11 實物圖背面圖12 實物圖正面5.4 使用說明如圖12所示:此光電編碼器測速系統(tǒng)包含的元器件有:STC89C52單片機一塊,光電編碼器,一塊74LS74芯片,40個腳IC插座一個,14個腳IC插座一個排阻一個,一個16腳的排母,1602液晶一塊,一個3M紅色LED燈,六個排針,三個四腳輕觸開關(guān),四個個電阻,一個電解電容,兩個瓷片電容,一個六角自鎖開關(guān),一個晶振和一個103藍白滑動變阻器。整個光電編碼器測速系統(tǒng)布置在一塊2010大小的洞洞板上。1602液晶用于顯示所測的轉(zhuǎn)速,單片機下方的兩個按鍵為控制按鍵,從左往右第一個為顯示每秒轉(zhuǎn)速控制鍵,第二個為顯示每分鐘的轉(zhuǎn)速??刂瓢存I右邊為一塊74LS74芯片,四個排針(用于接光電編碼器)和兩個1K電阻組成組成光電編碼器測速電路部分。單片機右邊藍白滑動變阻器,通過調(diào)節(jié)藍白滑動變阻器來調(diào)節(jié)液晶亮度。那個按鍵為復(fù)位按鍵,每按一次系統(tǒng)就復(fù)位一次,回到初始狀態(tài)。復(fù)位按鍵下方的藍白自鎖開關(guān)為電源開關(guān),當排針接好電源后,按下藍白自鎖開關(guān)則系統(tǒng)上電,按起藍白自鎖開關(guān)則系統(tǒng)斷電。藍白自鎖開關(guān)上方的紅色發(fā)光二極管為電源指示燈,當系統(tǒng)接通電源時,指示燈亮,當系統(tǒng)斷開電源時,指示燈暗。藍白自鎖開關(guān)下方的四個排針從上至下依次接5V的VCC,RXD,TXD,GND。使用前應(yīng)先上電。接上電源后由于開關(guān)斷開系統(tǒng)還未上電,按下藍白自鎖開關(guān)后,電源接通。通上電時,首先單片機連接電源時,先是1602液晶第一行顯示welcome to use的字樣,第二行顯示real_speed: 0000??梢园达@示每秒速度的按鍵,也可以按每分鐘顯示的速度,轉(zhuǎn)動主軸,液晶上就會顯示與所按下的控制鍵相對應(yīng)得轉(zhuǎn)速。如果是正轉(zhuǎn),液晶第二行就會顯示real_speed: xxxx,如果為反轉(zhuǎn),液晶上就會顯示real_speed:-xxxx。如果不按控制鍵液晶第二行就顯示real_speed: 0000。六、總結(jié)6.1 設(shè)計總結(jié)我的課題是基于51單片機的光電編碼器測速。當我選擇了這個課題的時候,我就先開始想在平常生活中光電編碼器是怎樣的,可以怎樣測速,需要一些什么器件。在確定了自己要設(shè)計一個怎樣的測速系統(tǒng)之后就開始列出做這個測速系統(tǒng)所需要的元器件。這個光電編碼器測速系統(tǒng)是基于給定的顯示系統(tǒng)上設(shè)計的,所以在設(shè)計電路原理圖之前,我先要掌握給定的顯示系統(tǒng)原理圖的連接方式和連接原理。這一些都弄明白之后,我再考慮如何在現(xiàn)有的基礎(chǔ)上進行外圍設(shè)計使之達到預(yù)想的功能。經(jīng)過一番斟酌,確定我的外圍硬件只需添加兩個輕觸開關(guān),一些電阻,一塊74LS74芯片就可以實現(xiàn)光電編碼器測速的功能。由于我的希望焊得盡量緊湊。所以為了以后方便焊接,減少焊接錯誤,需要在洞洞板軟件中的畫出洞洞板圖,設(shè)計線路的時候要盡量減少飛線的使用,畫完之后和給出的圖進行對照,確定我沒有連接錯誤之后,修正洞洞板圖,使線路沒有斷路并且更加筆直,接點處沒有連線出頭,修正完后保存洞洞板圖。硬件設(shè)想好了,接下來,我就要給我所要設(shè)計的光電編碼器測速系統(tǒng)進行軟件設(shè)計,使之實現(xiàn)智能化。進過了幾次調(diào)試之后,在keil軟件中我的程序顯示0 error。就開始畫DXP原理圖,采用網(wǎng)絡(luò)標號的形式更加方便,只需要把系統(tǒng)分成各個小模塊,在元器件的接口上標明該接口所連接單片機的對應(yīng)的引腳,再分區(qū)放置標明模塊。圖的大體結(jié)構(gòu)畫完之后再和給出的圖進行對照,確定我沒有連接錯誤之后,修正DXP原理圖,使線路沒有斷路并且更加筆直。DXP原理圖畫完后,整個電路設(shè)計就算完成了。我的設(shè)計過程與思路大體就是這樣子。6.2 經(jīng)驗總結(jié)我覺得一個課題設(shè)計中的心得體會是非常重要的一部分,這是一個經(jīng)驗的積累與總結(jié)。通過這次單片機課程設(shè)計,我不僅加深了對單片機理論的理解,將理論很好地應(yīng)用到實際當中去,而且我還學(xué)會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新可以是在原有的基礎(chǔ)上進行改進,使之功能不斷完善,成為真己的東西。們安排了這次單片機課程設(shè)計,給了我們學(xué)以致用的做好的實踐。對于這次課程設(shè)計,我們花費了比較多的心思,既是對課程理論內(nèi)容的一次復(fù)習(xí)和鞏固,還讓我們豐富了更多與該專業(yè)相關(guān)的其他知識,比如軟件應(yīng)用等,在摸索中學(xué)習(xí),在摸索中成長,在學(xué)習(xí)的過程中帶著問題去學(xué)我發(fā)現(xiàn)效率很高,這是我做這次課程設(shè)而應(yīng)該讓人一看就能明白你的思路,這樣也能為資料的保存和交流提供了方便;我覺得在設(shè)計課程過程中遇到問題是很正常,但我們應(yīng)該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題的課程設(shè)計又出錯了。此次的設(shè)計,其實也是我們所學(xué)知識的一次綜合運用,讓我深深的認識到了學(xué)習(xí)單片機要有一定的基礎(chǔ),要有電子技術(shù)方面的數(shù)字電路和模擬電路等方面的理論基礎(chǔ),特別是數(shù)字電路;也要有編程語言的匯編語言或C語言。要想成為單片機高手,我們首先要學(xué)好匯編語言,然后轉(zhuǎn)入C語言學(xué)習(xí),所以我們不能學(xué)到后面就忘了前面的知識,更應(yīng)該將所學(xué)的知識緊緊的結(jié)合在一起,綜合運用,所謂設(shè)計,就是要求創(chuàng)新,只有將知識綜合運用起來才能真正的設(shè)計好。七、參考文獻1 楊長興、劉衛(wèi)國.C+程序設(shè)計:中國鐵道部出版社2 李朝青.單片機原理及接口技術(shù)(第三版):北京航空航天大學(xué)出版社3 康華光.電子技術(shù)基礎(chǔ)(第五版):高等教育出版社4 劉坤、趙紅波、張憲棟.51單片機C語言運用(第二版):人民郵電出版社5 閻石 數(shù)字電子計數(shù)基礎(chǔ)(第五版):高等教育出版社附錄源程序#include#define uchar unsigned char#define uint unsigned intsbit en=P02; /使能位sbit rw=P01;/讀/寫選擇位sbit rs=P00;/數(shù)據(jù)/命令選擇位sbit fensu=P11;/分速鍵sbit miaosu=P12;/秒速鍵float w;float a=0;uchar k=2;/實際正反轉(zhuǎn)標志位 uchar real_gw,real_sw,real_bw,real_qw,expc_gw,expc_sw,expc_bw;/設(shè)置速度與實際速度的各個四位uchar num1,num2;float real;uint t;/定時器1中斷次數(shù)uchar code table1= welcome to use ; / 顯示設(shè)定速度uchar code table2=real_speed: 0000; /顯示實際速度void delay(uchar z) uchar x,y; for(x=100;x0;x-) for(y=z;y0;y-);void write_com(uchar com) /寫命令函數(shù) rw=0;rs=0;en=0;P2=com;delay(5);en=1;delay(5);en=0; void write_date(uchar date) /寫數(shù)據(jù)函數(shù) rw=0;rs=1;en=0;P2=date;delay(5);en=1;delay(5);en=0; void display(uchar add,uchar expc_date) /顯示速度 write_com(0 x80+add); /寫命令 指針指向要寫數(shù)據(jù)的地址 write_date(expc_date); /寫數(shù)據(jù) delay(10);/延時顯示 void init() TCON=0X0F; TMOD=0X15; EX1=1; EX0=1; EA=1;/開總中斷 ET1=1;/開啟T1中斷 TR1=1; /允許T1中斷 IP=0X08;/設(shè)置定時器1為優(yōu)先級 TH0=0; TL0=0; TH1=(65536-1000)/256; TL1=(65536-1000)%256; write_com(0 x38);/顯示模式 write_com(0X0c);/不顯示光標 write_com(0X06);/ 顯示光標移動位置 write_com(0X01);/清屏 write_com(0X80);/顯示welcome to use for(num1=0;num116;num1+) write_date(table1num1); delay(20); write_com(0X80+0X40);/顯示real_speed 0000 for(num2=0;num216;num2+) write_date(table2num2); delay(20); void keyskan() if(miaosu=0) /判斷秒速鍵是否按下 delay(5); if(miaosu=0) a=1; while(miaosu=0); delay(5); while(miaosu=0); if(fensu=0)/判斷分速鍵是否按下 a=60; while(fensu=0); delay(5); while(fensu=0); void real_speed() real=real*a; real_gw=(int)real%10; real_sw=(int)real%100/10;real_bw=(int)real%1000/100;real_qw=(int)real/1000; display(0 x4f,(0 x30+real_gw);display(0 x4e,(0 x30+real_sw);display(0 x4d,(0 x30+real_bw);display(0 x4c,(0 x30+real_qw); if(k=0) display(0 x4b,0 x2d);if(k=1) display(0 x4b,0 x20); /主程序void main() init(); while(1) keyskan(); /外部中斷0程序 void exter0() interrupt 0 /反轉(zhuǎn)觸發(fā) k=0 ; EX0=0; EX1=1; TH0=TL0=0;/外部中斷1程序 void exter1() interrupt 2 /正轉(zhuǎn)觸發(fā) k=1; EX1=0; EX0=1; TH0=TL0=0; /定時器1中斷程序 void timer1() interrupt 3 TH1=(65536-1000)/256; /重設(shè)置初值 TL1=(65536-1000)%256; t+; if(t=1000) t=0; TR0=0;w=(TH0*256+TL0);real=w/200; TH0=0;TL0=0; real_speed(); TR0=1; 21

注意事項

本文(基于51單片機的光電編碼器測速.doc)為本站會員(good****022)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!