【正文】
logy and new technologies is small by its volume, the function is strong, low in price, use nimble and so on superiority, demonstrated the very strong vitality. From the aerospace, the geological petroleum, metallurgy mining, profession and so on mechanical electron distributed systems and the intelligent control as well as the integration of machinery equipment and the product to the posts and telemunications correspondence, the everyday use equipment and the machinery, the monolithic integrated circuit have played the tremendous role. This article mainly introduced the monolithic integrated circuit in the control direct current machine aspect application. Along with the people living standard39。s signal control PWM signal pulse width, uses the PWM signal again which with the different pulse width control electrical machinery rotational speed, serves the purpose which by this rotates with the monolithic integrated circuit control direct current machine. It has provided one effective method for the realization of the direct current machine speed control system. This article mainly elaborated the topic development background, the goal and the significance, the programming uses language, the system simulation tool Proteus and the programming use realizes the principle, the system software design, as well as software and hardware39。s control 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 III 頁 according to the request operation. The system debugging mainly introduced the basic software and the software and hardware system debugging method and the step. Have carried out a summary on to be used for problem and what one has learned from work designing that process middle meets finally. Completes this system39。由于其體積小,價(jià)格低,具有邏輯判斷、定時(shí)計(jì)數(shù)、程序控制等多種功能,在各個(gè)領(lǐng)域、各個(gè)行業(yè)都得到了廣泛應(yīng)用,不僅有常用的 8 位機(jī),而且 4 位單片機(jī)和 16 單片機(jī)也得到了普及,年銷售量逐年增加,至 1995 年世界范圍內(nèi)銷售量就達(dá)近億塊,掩膜產(chǎn)品就超過了 2021 萬塊。最典型的機(jī)電產(chǎn)品機(jī)器人,每個(gè)關(guān)節(jié)或動(dòng)作部位都是一個(gè)單片機(jī)控制系統(tǒng)。根據(jù)物料流程,有多個(gè)加工工序,每一個(gè)工序都要根據(jù)總的流程精加工或者操作,單片機(jī)就可作為這個(gè)分步操作或控制的控制器,進(jìn)行數(shù)據(jù)采集,反饋計(jì)算,數(shù)據(jù)輸出,并在上級計(jì)算機(jī)命令指揮下進(jìn)行相應(yīng)協(xié)調(diào)工作。 隨著家用電器產(chǎn)品變頻技術(shù)的發(fā)展,電機(jī)的變頻調(diào)速已經(jīng)成為 一種可行性的方法,在這種調(diào)速系統(tǒng)中,脈寬調(diào)制 (PWM)技術(shù)仍然是提高調(diào)速性能的主要手段。 80C52 與 80C51 相比還增加了一個(gè)定時(shí) / 計(jì)數(shù)器、中斷源從 5 個(gè)增加到 6 個(gè),將程序存儲空間增加到 8KB,數(shù)據(jù)存儲器增加 到 256 字節(jié)地址,更強(qiáng)大的地址空間,和更多的定時(shí)中斷資源為設(shè)計(jì)提供了很大的方便,也為提高系統(tǒng)的控制性能提供了基礎(chǔ) 目的和意義 隨著科技的高速發(fā)展,單片機(jī)技術(shù)也不斷發(fā)展,單片機(jī)能實(shí)現(xiàn)更加靈活的邏輯控制功能,具有很強(qiáng)的數(shù)據(jù)處理能力。 ( 2)隨著硬件的發(fā)展, 80C51 軟件工具也取得很大的發(fā)展, 80C51 系列已形成從低到高的不同檔次、價(jià)格合理的開發(fā)裝置。不同的鼠標(biāo)指針類型顯示該對象將進(jìn)行的不同操作 , 高效率非模態(tài)選擇、布線。 (2) 全新的設(shè)計(jì)瀏覽器: 設(shè)計(jì)瀏覽器是 Proteus 特有的一種工具,它提供 Windows 風(fēng)格 的用戶界面,用戶可以利用它就設(shè)計(jì)的不同層次進(jìn)行導(dǎo)航和檢查。 (4)全新的仿真診斷系統(tǒng): 提供對仿真運(yùn)行跟蹤模式的完全控制 ,關(guān)于系統(tǒng)信 息、 CPU及外設(shè)的詳盡診斷信息 , 可以在警告、每個(gè)分組的跟蹤或調(diào)試時(shí)使能診斷 ,強(qiáng)大的調(diào)試幫助包括仿真行為的完整文本報(bào)告。 一種語言之所以能存在和發(fā)展,并具有生命力,總是有其不同于 (或 優(yōu)于 )其他語言的特點(diǎn)。 (2) 運(yùn)算符豐富。 C 的數(shù)據(jù)類型有整型、實(shí)型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等。 (5) 語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大。 能進(jìn)行位 (bit)操作,能實(shí)現(xiàn)匯編語言的大部分功能,可以直接對硬件進(jìn)行操作。 (7) 生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。 鑒于以上 C 語言和匯編語言的比較,本次設(shè)計(jì)采用 C 語言 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 6 頁 第 2 章 方案論證與系統(tǒng)原理 方案論證 我們在確定開發(fā)題目后,要先進(jìn)行方案論證,這個(gè)過程非常重要,制定出一個(gè)好的方案會使我們后面的開發(fā)工作較為順利。 ( 4)單片機(jī)應(yīng)用開發(fā)技術(shù)是軟硬件結(jié)合的技術(shù),方案設(shè)計(jì)要權(quán)衡任務(wù)的軟硬件分工。 ( 5)我們在設(shè)計(jì)中應(yīng)該盡量采用可借鑒的成熟技術(shù),以減少重復(fù)性勞動(dòng)。 系統(tǒng)實(shí)現(xiàn)原理 單片機(jī)應(yīng)用系統(tǒng)有軟件和硬件兩部分組成。 但 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 7 頁 它的最基本的原 理是一樣的 , 即 : (1) 從輸入接口接收來自外界的信息存入存儲器 。 如繼電器 , 電機(jī) , LED 顯示電路等。 定時(shí)器/計(jì)數(shù)器的核心是一個(gè)加 1 計(jì)數(shù)器.其基本功能是計(jì)數(shù)加 1。 GATE= 1 時(shí),由外部中斷引腳、和 TR0、 TR1 共同來啟動(dòng)定時(shí)器。 C/T= 1 時(shí),選擇計(jì)數(shù)功能; C/T= 0 時(shí),選擇定時(shí)功能。當(dāng)采用 12MHz 的晶體時(shí),計(jì)數(shù)速率為 1MHz。若前一機(jī)器周期采樣值為 1, 下一機(jī)器周期采樣值為 0,則計(jì)數(shù)器增 1,此后的機(jī)器周期 S3P1 期間,新的計(jì)數(shù)值裝入計(jì)數(shù)器。 TMOD 中的 M1= l、 M0= 1 (3) 定時(shí)器/計(jì)數(shù)器 T2 80C52 中的 T2 是一個(gè) 16 位的、具有自動(dòng)重裝載和捕獲能力的定時(shí)器/計(jì)數(shù)器。 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 9 頁 T2 有 3 種工作方式∶自動(dòng)重裝載、俘獲和波特率發(fā)生器方式,由 T2 TCON 中相關(guān)位決定。在自動(dòng)控制系統(tǒng)中,要求各控制參量隨機(jī)地在任何時(shí)刻可向計(jì)算機(jī)發(fā)出請求, CPU 必須做出快速響應(yīng)、及時(shí)處理。每一個(gè)中斷源都能被程控為高優(yōu)先級或低優(yōu)先級。 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 10 頁 單片機(jī)應(yīng)用系統(tǒng)的開發(fā)過程 (1) 單片機(jī)軟硬件開發(fā)流程如圖( 2—1)所示: 圖 2— 1 單片機(jī)軟硬件開發(fā)流程 ( 2)控制系統(tǒng)組成 PWM 控制電機(jī)轉(zhuǎn)速系統(tǒng)由單片機(jī) 80C52,單片機(jī)控制電路,電機(jī)驅(qū)動(dòng)電路和系統(tǒng)軟件所組成(如圖 22) 圖 2—2 控制系統(tǒng)組成 ( 3) 總體設(shè)計(jì) 我們通過 555 定時(shí)器給單片機(jī)產(chǎn)生輸入信號,用兩個(gè)按鍵控制電機(jī)的轉(zhuǎn)動(dòng)停止和正反轉(zhuǎn),用 PWM 信號占空比控制電機(jī)轉(zhuǎn)速。 (3) 研制一種算法 , 從有限步的輸入中獲 取輸出。每個(gè)句子對應(yīng)一個(gè)簡單的程序操作。當(dāng)使用自上而下的設(shè)計(jì)方法時(shí) , 你要把程序分 割成幾段來完成。將程序分為幾項(xiàng)任務(wù)只是對程序的初步設(shè)計(jì)。這一級一級的設(shè)計(jì)過程 稱為逐步求精法。 在這一步 , 把模塊的偽代碼翻譯成 Turbo C 語 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 13 頁 句。 程序的編輯、編譯和運(yùn)行 C語言是一種中級語言 , 用戶用 C語言編寫的程序稱為源程序 , 存放用 C 語言所寫源程序文件名字最后的兩個(gè)字符一般必須為 .c。 連接 的目的是使程序變成在計(jì)算機(jī)上可以執(zhí)行的最終形式。 在 DOS 提示符下鍵入 TC, 即可進(jìn)入 Turbo C 了。就可以輸入或修改源程序了 , 源程序輸入或修改完畢以后 , 按 Ctrl+F9, 則立即進(jìn)行編譯、連接和執(zhí)行 , 這三項(xiàng)工作是連續(xù)完成的。 } 則程序進(jìn)入計(jì)算機(jī)存貯器。 (2). 按 F10 鍵返回主菜單 , 選擇 Compile 項(xiàng) , 屏幕顯示 Compile 下拉菜單 , 從下拉菜單中選擇 Compile to .OBJ 項(xiàng) , 按回車鍵。對源程序進(jìn)行修改 , 重新進(jìn)行編譯。 程序投入運(yùn)行時(shí) , 屏幕會出現(xiàn)一個(gè)連接窗口 , 顯示 Turbo C 正在連接和程序所需的庫函數(shù)??煽吹皆摮绦蛑挥?42 個(gè)字節(jié)。 這也就是編程,編輯,編譯和運(yùn)行的全過程。 首先對系統(tǒng)進(jìn)行初始化,檢測控制電機(jī)啟停的 是否按下,如果按下則電機(jī)啟動(dòng),如果沒有按下則繼續(xù)等待按鍵動(dòng)作 。設(shè)置定時(shí) /計(jì)數(shù)器 T0、 T1的工作方式,允許定時(shí) /計(jì)數(shù)器 T0、 T1 計(jì)數(shù)滿中斷和外部中斷,執(zhí)行循環(huán)等待程序,等待功能選擇信號,并對各個(gè)子程序進(jìn)行調(diào)用。 //載入定時(shí)初值 TL0=(6553650000)%256。 // 允許定時(shí)器 0 中斷 IT1=1。 //首先掃描鍵盤 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 19 頁 if((n=0)amp。save[1]=a1/100。 // 這里是轉(zhuǎn)換要顯示 Display(save)。amp。a2=a1%100。//led 顯示此時(shí)頻率 if (key==1) { Speed_A30()。(n=4999)) //大于 3KHz,小于 5KHZ { save[0]=n/1000。save[2]=a2/10。 } else 華北水利水電學(xué)院畢業(yè)設(shè)計(jì) 第 20 頁 { Speed_B50()。a1=n%1000。save[3]=a2%10。} } else if((n=7000)amp。save[1]=a1/100。 Display(save)。 if(bittime