




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢業(yè)設(shè)計(jì)(論文)課 題 名 稱 基于單片機(jī)的步進(jìn)電機(jī)控制設(shè)計(jì) 學(xué) 生 姓 名 學(xué) 號(hào) 系、年級(jí)專業(yè) 信息工程系電子信息工程專業(yè) 指 導(dǎo) 教 師 職 稱 講 師 2009年 5 月 22 日摘 要本論文主要介紹了基于單片機(jī)的步進(jìn)電機(jī)控制的規(guī)則、硬件結(jié)構(gòu)、軟件代碼的編寫及工作原理、以及液晶模塊12864LCD的詳細(xì)介紹以及指令集。模擬出單片機(jī)系統(tǒng)下的步進(jìn)電機(jī)轉(zhuǎn)速控制,具有任意轉(zhuǎn)速選擇、轉(zhuǎn)動(dòng)時(shí)間、正反轉(zhuǎn)、加速和減速設(shè)置、系統(tǒng)低功耗、可實(shí)現(xiàn)在線調(diào)試等特點(diǎn)。本系統(tǒng)是以單片機(jī)為其控制核心,以有源晶振構(gòu)成的電路作為時(shí)鐘信號(hào),通過(guò)鍵盤輸入選擇向單片機(jī)控制系統(tǒng)發(fā)出步進(jìn)轉(zhuǎn)動(dòng)控制命令,控制系統(tǒng)接收命令后做出一系列必
2、要的判斷后,控電機(jī)的轉(zhuǎn)速、轉(zhuǎn)向等。本設(shè)計(jì)已通過(guò)了實(shí)驗(yàn)仿真,運(yùn)行穩(wěn)定,達(dá)到了基本的設(shè)計(jì)要求。本設(shè)計(jì)要分為兩大塊:一塊為硬件電路組成部分,一塊為軟件程序設(shè)計(jì)部分。在硬件電路里主要包括有源晶振部分、鍵盤輸入控制部分、電機(jī)驅(qū)動(dòng)電路及液晶顯示部分等與單片機(jī)的接線設(shè)計(jì);軟件編程方面主要是子程序和主程序的編寫,包括:初始化代碼、液晶驅(qū)動(dòng)代碼、時(shí)間記錄代碼、表格數(shù)據(jù)代碼等。關(guān)鍵詞:?jiǎn)纹瑱C(jī);步進(jìn)電機(jī);12864LCD;指令集Abstract This thesis is mainly introduce the Prepared and working principles about regulation、s
3、tructure of hardware、software code of stepping motor control based on MCU as well as detail information and instruction set on LCD Module 12864LCD.This thesis also simulates that under the system of single-chip stepping motor speed control has the disadvantages of changing speed、time arbitrary、Posit
4、ive and negative transfer、installation of accelerated and deceleration、low-power system and online debugging. Single-chip as core of control and the circuit made up by active crystal as clock signal, the stepper motor speed control system starts to making a series of necessary judgment and then cont
5、rol rotate speed and change direction when it receive the command of stepper transfer control from single-chip control system by keyboard. As run steady, this project has already passed the simulation and has achieved the basic purpose. This project consists of two parties. One is hardware circuit a
6、nd the other is software programming. In the part of hardware circuit is include active crystal、control system of keyboard input 、system of motor drive circuit and liquid crystal system. In the second part, Design of connection of single-chip、software prepared is the mainly prepared of Subroutine an
7、d Main program including initialization code 、liquid drive code 、the timing of recording code form data code8.Key words: MCU;stepper motor;12864LCD;Instruction Set.目 錄摘 要IAbstractII第1章 緒論11.1 課題的來(lái)源11.2 課題研究的意義11.3 課題國(guó)內(nèi)研究現(xiàn)狀11.4 課題研究的目的和主要內(nèi)容2第2章 步進(jìn)電機(jī)方案設(shè)計(jì)與分析3 2.1 方案提出32.2 可行性分析42.3 主要器件選擇4第3章 系統(tǒng)硬件設(shè)計(jì)63.
8、1 AMPIRE128*64液晶屏介紹63.2 HD61202及其指令集介紹73.3 晶振、復(fù)位、驅(qū)動(dòng)電路93.4 液晶顯示屏與單片機(jī)接口電路113.5 控鍵與單片機(jī)接口電路11第4章 系統(tǒng)軟件設(shè)計(jì)134.1 電機(jī)流程圖134.2 液晶屏驅(qū)動(dòng)代碼設(shè)計(jì)144.3 固定字符顯示代碼184.4 中斷子程序194.5 漢字表194.6 字符表224.7 延時(shí)子程序224.8 主函數(shù)程序23第5章 系統(tǒng)仿真255.1 Keil2編譯環(huán)境介紹255.2 Proteus 仿真平臺(tái)265.3 建立工程項(xiàng)目285.4 Proteus中原理圖的繪制及文件的加載325.5 開(kāi)機(jī)界面顯示325.6 控制界面顯示335
9、.7 仿真結(jié)果分析及解決方法34 第6章 PCB板設(shè)計(jì)356.1加載網(wǎng)絡(luò)表及元件封裝356.2 PCB板參數(shù)設(shè)置366.3元件布局及布線設(shè)計(jì)38結(jié)束語(yǔ)40參考文獻(xiàn)41致 謝42附錄 總體電路圖43第1章 緒論1.1 課題的來(lái)源 步進(jìn)電機(jī)作為執(zhí)行元件,是機(jī)電一體化的關(guān)鍵產(chǎn)品之一, 廣泛應(yīng)用在各種自動(dòng)化控制系統(tǒng)中。隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。 步進(jìn)電機(jī)廣泛應(yīng)用在生產(chǎn)實(shí)踐的各個(gè)領(lǐng)域。它最大的應(yīng)用是在數(shù)控機(jī)床的制造中,因?yàn)椴竭M(jìn)電機(jī)不需要A/D轉(zhuǎn)換,能夠直接將數(shù)字脈沖信號(hào)轉(zhuǎn)化成為角位移,所以被認(rèn)為是理想的數(shù)控機(jī)床的執(zhí)行元件。早期的步進(jìn)電機(jī)輸出轉(zhuǎn)矩比
10、較小,無(wú)法滿足需要,在使用中和液壓扭矩放大器一同組成液壓脈沖馬達(dá)。隨著步進(jìn)電動(dòng)機(jī)技術(shù)的發(fā)展,步進(jìn)電動(dòng)機(jī)已經(jīng)能夠單獨(dú)在系統(tǒng)上進(jìn)行使用,成為了不可替代的執(zhí)行元件。比如步進(jìn)電動(dòng)機(jī)用作數(shù)控銑床進(jìn)給伺服機(jī)構(gòu)的驅(qū)動(dòng)電動(dòng)機(jī),在這個(gè)應(yīng)用中,步進(jìn)電動(dòng)機(jī)可以同時(shí)完成兩個(gè)工作,其一是傳遞轉(zhuǎn)矩,其二是傳遞信息。步進(jìn)電機(jī)也可以作為數(shù)控蝸桿砂輪磨邊機(jī)同步系統(tǒng)的驅(qū)動(dòng)電動(dòng)機(jī)。除了在數(shù)控機(jī)床上的應(yīng)用,步進(jìn)電機(jī)也可以并用在其他的機(jī)械上,比如作為自動(dòng)送料機(jī)中的馬達(dá),作為通用的軟盤驅(qū)動(dòng)器的馬達(dá),也可以應(yīng)用在打印機(jī)和繪圖儀中。 步進(jìn)電動(dòng)機(jī)以其顯著的特點(diǎn),在數(shù)字化制造時(shí)代發(fā)揮著重大的用途。伴隨著不同的數(shù)字化技術(shù)的發(fā)展以及步進(jìn)電機(jī)本身技術(shù)
11、的提高,步進(jìn)電機(jī)將會(huì)在更多的領(lǐng)域得到應(yīng)用。1.2 課題研究的意義 對(duì)基于單片機(jī)控制的步進(jìn)電機(jī)的轉(zhuǎn)速控制進(jìn)行設(shè)計(jì):一方面是對(duì)所學(xué)知識(shí)的綜合運(yùn)用,可以更好地學(xué)習(xí)單片機(jī)的應(yīng)用技術(shù),另一方面步進(jìn)電機(jī)可以發(fā)揮其結(jié)構(gòu)簡(jiǎn)單、可靠性高和成本低的特點(diǎn)。使用恰當(dāng)?shù)臅r(shí)候,甚至可以和直流伺服電動(dòng)機(jī)性能相媲美。1.3 課題國(guó)內(nèi)研究現(xiàn)狀 上個(gè)世紀(jì)就出現(xiàn)了步進(jìn)電動(dòng)機(jī),它是一種可以自由回轉(zhuǎn)的電磁鐵,動(dòng)作原理和今天的反應(yīng)式步進(jìn)電動(dòng)機(jī)沒(méi)有什么區(qū)別,也是依靠氣隙磁導(dǎo)的變化來(lái)產(chǎn)生電磁轉(zhuǎn)矩。在本世紀(jì)初,由于資本主義列強(qiáng)爭(zhēng)奪殖民地,造船工業(yè)發(fā)展很快,同時(shí)也使得步進(jìn)電動(dòng)機(jī)的技術(shù)得到了長(zhǎng)足的進(jìn)步。到了80年代后,由于廉價(jià)的微型計(jì)算機(jī)以多功能
12、的姿態(tài)出現(xiàn),步進(jìn)電動(dòng)機(jī)的控制方式更加靈活多樣。原來(lái)的步進(jìn)電機(jī)控制系統(tǒng)采用分立元件或者集成電路組成的控制回路,不僅調(diào)試安裝復(fù)雜,要消耗大量元器件,而且一旦定型之后,要改變控制方案就一定要重新設(shè)計(jì)電路。計(jì)算機(jī)則通過(guò)軟件來(lái)控制步進(jìn)電機(jī),更好地挖掘出電動(dòng)機(jī)的潛力。因此,用計(jì)算機(jī)控制步進(jìn)電機(jī)已經(jīng)成為了一種必然的趨勢(shì),也符合數(shù)字化的時(shí)代趨勢(shì)。步進(jìn)電機(jī)和普通電動(dòng)機(jī)不同之處是步進(jìn)電機(jī)接受脈沖信號(hào)的控制。步進(jìn)電機(jī)靠一種叫環(huán)形分配器的電子開(kāi)關(guān)器件,通過(guò)功率放大器使勵(lì)磁繞組按照順序輪流接通直流電源。由于勵(lì)磁繞組在空間中按一定的規(guī)律排列,輪流和直流電源接通后,就會(huì)在空間形成一種階躍變化的旋轉(zhuǎn)磁場(chǎng),使轉(zhuǎn)子步進(jìn)式的轉(zhuǎn)動(dòng),
13、隨著脈沖頻率的增高,轉(zhuǎn)速就會(huì)增大。步進(jìn)電機(jī)的旋轉(zhuǎn)同時(shí)與相數(shù)、分配數(shù)、轉(zhuǎn)子齒輪數(shù)有關(guān)。 現(xiàn)在比較常用的步進(jìn)電機(jī)包括反應(yīng)式步進(jìn)電機(jī)、永磁式步進(jìn)電機(jī)、混合式步進(jìn)電機(jī)和單相式步進(jìn)電機(jī)等。其中反應(yīng)式步進(jìn)電機(jī)的轉(zhuǎn)子磁路由軟磁材料制成,定子上有多相勵(lì)磁繞組,利用磁導(dǎo)的變化產(chǎn)生轉(zhuǎn)矩。現(xiàn)階段,反應(yīng)式步進(jìn)電機(jī)獲得最多的應(yīng)用。1.4 課題研究的目的和主要內(nèi)容 本文針對(duì)步進(jìn)電機(jī)控制的設(shè)計(jì),首先介紹了選題的要求,之后詳細(xì)敘述了軟件和硬件的設(shè)計(jì)過(guò)程。 在時(shí)鐘脈沖的作用下,各個(gè)按鍵都能按照事先設(shè)定好的規(guī)則進(jìn)行控制。確定鍵能使界面從初始化顯示切換到步進(jìn)電機(jī)顯示界面,0-9十個(gè)數(shù)字鍵用來(lái)設(shè)置轉(zhuǎn)速,正轉(zhuǎn)和反轉(zhuǎn)控制電機(jī)的正反轉(zhuǎn)向,
14、加速和減速鍵用來(lái)控制轉(zhuǎn)速,以十轉(zhuǎn)為基本單位進(jìn)行遞加或遞減,設(shè)置鍵可以設(shè)置轉(zhuǎn)向、精確的轉(zhuǎn)速、轉(zhuǎn)動(dòng)時(shí)間,當(dāng)設(shè)置完成是可以用啟動(dòng)鍵啟動(dòng)。 硬件部分是由中央處理器(AT89C51單片機(jī)),控制部分(獨(dú)立式按鍵系統(tǒng)),顯示部分(12864LCD液晶顯示模塊)組成的,驅(qū)動(dòng)部分(L298芯片);軟件部分的主要內(nèi)容是通過(guò)對(duì)步進(jìn)電機(jī)的控制、驅(qū)動(dòng)程序進(jìn)行編寫和調(diào)試以實(shí)現(xiàn)步進(jìn)電機(jī)的功能。通過(guò)硬件和軟件調(diào)試,并針對(duì)問(wèn)題分析修改后,步進(jìn)電機(jī)系統(tǒng)可以穩(wěn)定運(yùn)行。步進(jìn)電機(jī)系統(tǒng)中各個(gè)部分之間通過(guò)數(shù)據(jù)的傳送最終完成了整個(gè)步進(jìn)電機(jī)的運(yùn)行、顯示和進(jìn)行按鍵的功能。 最后論文對(duì)設(shè)計(jì)進(jìn)行了總結(jié),對(duì)設(shè)計(jì)中可以進(jìn)一步改善的地方提出了建議。第2
15、章 步進(jìn)電機(jī)方案設(shè)計(jì)與分析2.1 方案提出方案一:采用基本電路以及相關(guān)芯片對(duì)步進(jìn)電機(jī)進(jìn)行控制。本設(shè)計(jì)選用PMM8713四相步進(jìn)電機(jī)的脈沖分配器、SI7300A四相功率驅(qū)動(dòng)器,組成四相步進(jìn)電機(jī)的驅(qū)動(dòng)電路,步進(jìn)電機(jī)的控制框圖如圖2.2所示54:圖2.1 方案一框圖方案二:用單片機(jī)作為步進(jìn)電機(jī)的核心控制器件,鍵盤調(diào)節(jié)轉(zhuǎn)速、時(shí)間等,液晶顯示當(dāng)前狀態(tài)。系統(tǒng)框圖如圖2.2所示12:圖2.2 方案二框圖相較之下用單片機(jī)控制的步進(jìn)電機(jī)要比采用基本電路控制的步進(jìn)電機(jī)要簡(jiǎn)單很多,在價(jià)格上單片機(jī)可能稍微高上少許,但用單片機(jī)后可以省下許多控制器件,這樣看來(lái)反而便宜一些了。另外,在大學(xué)中我們已經(jīng)系統(tǒng)的學(xué)習(xí)了單片機(jī),對(duì)單
16、片機(jī)的應(yīng)用編程比較熟悉??紤]到以上因素,采用了第二套方案。以下將會(huì)對(duì)所選方案的可行性和主要芯片的選擇做系統(tǒng)的介紹。2.2 可行性分析 現(xiàn)如今,步進(jìn)電機(jī)廣泛應(yīng)用在生產(chǎn)實(shí)踐的各個(gè)領(lǐng)域,隨著步進(jìn)電動(dòng)機(jī)技術(shù)的發(fā)展,步進(jìn)電動(dòng)機(jī)已經(jīng)能夠單獨(dú)在系統(tǒng)上進(jìn)行使用,成為了不可替代的執(zhí)行元件。步進(jìn)電機(jī)結(jié)構(gòu)簡(jiǎn)單,但是這種簡(jiǎn)單也是相對(duì)的,步進(jìn)電機(jī)本身的代碼還是相當(dāng)繁雜,它要執(zhí)行一系列指令才能正確的完成一個(gè)簡(jiǎn)單的操作,才能按照設(shè)計(jì)者的意志工作。那么步進(jìn)電機(jī)能否用單片機(jī)實(shí)現(xiàn)呢?答案是肯定的,現(xiàn)從以下幾個(gè)方面加以說(shuō)明。 首先,我們?cè)O(shè)計(jì)的這個(gè)電機(jī)是一個(gè)功能相對(duì)比較簡(jiǎn)單步進(jìn)電機(jī),不像其他的電機(jī)那樣功能復(fù)雜,它只要控制電機(jī)的轉(zhuǎn)速、
17、轉(zhuǎn)動(dòng)時(shí)間及正反轉(zhuǎn)即可,對(duì)于實(shí)現(xiàn)這樣一個(gè)功能,程序不是太復(fù)雜,用一塊單片機(jī)足以達(dá)到目的。其次,它的控件也比較少只有10個(gè)數(shù)字鍵和6個(gè)控制功能鍵,這些控鍵在Proteus中用彈跳式按鍵代替即可。第三,電機(jī)的顯示相對(duì)比較小、畫(huà)面簡(jiǎn)單,只有轉(zhuǎn)向、轉(zhuǎn)速、旋轉(zhuǎn)時(shí)間等幾個(gè)漢字,這些在一塊稍大的液晶屏上就足以顯示。第四,就編程語(yǔ)言方面來(lái)說(shuō),編寫這樣一個(gè)簡(jiǎn)單的步進(jìn)電機(jī)不需要什么高級(jí)的語(yǔ)言,C語(yǔ)言或匯編語(yǔ)言就足以完成,C語(yǔ)言是一種通用型的語(yǔ)言,編程靈活、可讀性強(qiáng)、移植性好;匯編語(yǔ)言是一種直接面向硬件的基礎(chǔ)語(yǔ)言,最接近機(jī)器語(yǔ)言,執(zhí)行速度快(本設(shè)計(jì)采用C語(yǔ)言編寫)。由以上幾點(diǎn)可知:用單片機(jī)設(shè)計(jì)步進(jìn)電機(jī)在硬件和軟件兩個(gè)
18、方面都是可行的。2.3 主要器件選擇2.3.1 單片機(jī)的選擇 單片機(jī)的種類有很多:通用型單片機(jī)按位數(shù)分有4位機(jī),8位機(jī),16位機(jī)和32位機(jī)等等。按廠家分種類就更多,我國(guó)目前最常用的單片機(jī)有如下幾家:Intel 公司的(MCS51系列,MCS96系列);Atmel公司的(AT89系列,MCS51內(nèi)核);Microchip公司的(PIC系列);Motorola公司的(68HCXX系列);Zilog公司的(Z86系列);Philips公司的(87,80系列,MCS51內(nèi)核);Siemens公司的(SAB80系列,MCS51內(nèi)核);NEC公司的(78系列),每種單片機(jī)的都有不同,包括:I/O口個(gè)數(shù)、定
19、時(shí)/計(jì)數(shù)器個(gè)數(shù)、數(shù)據(jù)/程序存取區(qū)大小、中斷源個(gè)數(shù)、有無(wú)看門狗中斷、有無(wú)A/D轉(zhuǎn)化等等129。 基于本電機(jī)的設(shè)計(jì)只用到了不到20個(gè)I/O口;1個(gè)定時(shí)器斷。所以選擇了Atmel公司的AT89C51單片機(jī)。其參數(shù)如下:1、基于8051的全靜態(tài)CMOS工藝控制器;2、3級(jí)流水線指令執(zhí)行架構(gòu);3、32個(gè)I/O口;4、2個(gè)定時(shí)/計(jì)數(shù)器;5、6個(gè)中斷源;6、4K的閃存程序存儲(chǔ)器;7、128字節(jié)的片內(nèi)數(shù)據(jù)存取器。 由以上參數(shù)可知AT89C51單片機(jī)完全滿足設(shè)計(jì)要求,且在成本上較其他類型的單片機(jī)有優(yōu)勢(shì)。2.3.2 液晶屏的選擇 液晶屏的種類也有很多,我們經(jīng)常用到的液晶屏包括:AMPIRE128*64;LGM12
20、641BS1R;LM016L;LM020L;LM017L等等。 前兩種為不帶字庫(kù)的漢字、圖形點(diǎn)陣液晶屏,共64行,128列,能顯示4行8列32個(gè)16*16點(diǎn)陣漢字或4行16列64個(gè)16*8點(diǎn)陣字符或者最大128*64點(diǎn)陣圖形。也有帶字庫(kù)的12864,功能一樣。 后幾種則是帶字庫(kù)的字符點(diǎn)陣,不能顯示圖形。LM016L為能顯示2行16列32個(gè)字符的液晶屏;LM020L為能顯示1行16列16個(gè)字符的液晶屏;LM017L為能顯示2行32列16個(gè)字符的液晶屏。 由以上介紹可知,AMPIRE128*64液晶顯示模塊表示橫向有128點(diǎn),縱向有64點(diǎn),可顯示16*16中文字4行,每行8個(gè)字,很明顯,這塊液晶屏
21、滿足步進(jìn)電機(jī)設(shè)計(jì)的顯示要求,大小也合適。如轉(zhuǎn)速顯示、時(shí)間顯示等,完全滿足設(shè)計(jì)要求。這塊液晶和以上的很不一樣,它基于T6963C內(nèi)核,引腳更多,功能更復(fù)雜,指令集也更多(這些相關(guān)內(nèi)容將在下一章具體介紹)123。第3章 系統(tǒng)硬件設(shè)計(jì) 本部分內(nèi)容包括介紹AMPIRE128*64及其引腳功能;介紹T6963C指令集;晶振電路、復(fù)位電路的硬件設(shè)計(jì);控件及按鍵電路設(shè)計(jì),最后給出步進(jìn)電機(jī)仿真的整體硬件電路圖,接下來(lái)是具體的說(shuō)明156。3.1 AMPIRE128*64液晶屏介紹 AMPIRE128*64是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模
22、塊;其顯示分辨率為128×64, 內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集。利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4行16×16點(diǎn)陣的漢字。也可完成圖形顯示。低電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡(jiǎn)潔得多,且該模塊的價(jià)格也略低于相同點(diǎn)陣的圖形液晶模塊,其在Proteus中的元器件圖形如下6: 圖3.1 AMPIRE128*64各引腳的功能描敘如下表 表3.1 AMPIRE128*64引腳功能表 引腳序列
23、引腳名稱引腳功能描述1CS1片選擇,1有效2CS2片選擇,1有效3GND地引腳,接地4VCC功能不詳,在電路連接時(shí)懸空5V0對(duì)比度調(diào)節(jié),輸入電壓 -0 -10V6RSRS=1 時(shí)DATA為顯示數(shù)據(jù); RS=0 時(shí)DATA為指令數(shù)據(jù)7RWRW=1為讀LCD內(nèi)部數(shù)據(jù);RW=0是寫數(shù)據(jù) 到LCD8ERW=0、E時(shí)LCD對(duì)RS和數(shù)據(jù)DATA進(jìn)行取樣和執(zhí)行;RW=1、RS0、E時(shí)LCD輸出數(shù)據(jù)到DATA916D0D7數(shù)據(jù)引腳,用于液晶屏與單片機(jī)之間的數(shù)據(jù)通信17RST復(fù)位引腳,低電平有效,起復(fù)位作用,器件內(nèi)部集成了上拉電阻,正常工作時(shí)此引腳接電源18-Vout負(fù)壓輸出(-10V)3.2 HD61202及
24、其指令集介紹3.2.1 HD61202 HD61202及其兼容液晶顯示控制驅(qū)動(dòng)器,是一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器。它可直接與8 位微處理器相聯(lián),可與HD61203配合,對(duì)液晶屏進(jìn)行行列驅(qū)動(dòng)。內(nèi)藏64×64 = 4096位顯示RAM,RAM中每位數(shù)據(jù)對(duì)應(yīng)LCD屏上一個(gè)點(diǎn)的亮、暗狀態(tài);HD61202及其兼容控制驅(qū)動(dòng)器是列驅(qū)動(dòng)器,具有64路列驅(qū)動(dòng)輸出;讀、寫操作時(shí)序與68系列微處理器相符,因此它可直接與68系列微處理器接口相聯(lián);占空比為1/32-1/64。該器件支持非常廣泛的字符格式,液晶顯示器允許通過(guò)編程設(shè)置選擇不同的組合。它可以用于文字,圖形和結(jié)合文本模式及其他各種屬性的功能。
25、3.2.2 HD61202指令集 HD61202及其兼容控制驅(qū)動(dòng)器的指令系統(tǒng)比較簡(jiǎn)單總共只有七種現(xiàn)在分別介紹如下;(1)顯示開(kāi)/關(guān)指令R/W D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 1 1 1 1/0 當(dāng)DB0=1時(shí),LCD顯示RAM中的內(nèi)容; 當(dāng)DB0=0時(shí),顯示關(guān)閉。(2)顯示起始行(ROW)設(shè)置指令R/W D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 顯示起始行(063) 該指令設(shè)置了對(duì)應(yīng)液晶顯示屏最上一行的顯示RAM的行號(hào),有規(guī)律的改變顯示起始行,可以使LCD實(shí)現(xiàn)顯示滾動(dòng)效果。(3)頁(yè)(P
26、age)設(shè)置指令R/W D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 0 1 1 1 頁(yè)號(hào)(07) 顯示RAM共64行,分8頁(yè),每頁(yè)8行。(4)列地址(Y Address)設(shè)置指令R/ D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 顯示列地址(063) 設(shè)置了頁(yè)地址和列地址,就唯一確定了RAM中的一個(gè)單元,這樣MPU就可以讀、寫指令,讀出該單元中的內(nèi)容或向該單元寫進(jìn)一個(gè)字節(jié)數(shù)據(jù)。(5)讀狀態(tài)指令R/W D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 B USY 0 ON/OFF RE
27、ST 0 0 0 0 該指令用來(lái)查詢HD61202及其控制驅(qū)動(dòng)器的狀態(tài),各參量含義如下; BUSY: 內(nèi)部在工作0,正常狀態(tài)1; ON/OFF: 顯示關(guān)閉0,顯示打開(kāi)1; REST: 復(fù)位狀態(tài)0,正常狀態(tài)1。 在BUSY和REST狀態(tài)是,除讀狀態(tài)指令外,其他指令均不對(duì)HD61202及其兼容控制驅(qū)動(dòng)器產(chǎn)生作用。 在對(duì)HD61202及其兼容控制驅(qū)動(dòng)器操作之前,要查詢BUSY狀態(tài),以確定是否隊(duì)HD61202及其兼容控制驅(qū)動(dòng)器進(jìn)行操作。(6)寫數(shù)據(jù)指令R/W D/1 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 1 寫 數(shù) 據(jù)(7)讀數(shù)據(jù)指令R/W D/1 DB7 DB6 DB5
28、 DB4 DB3 DB2 DB1 DB0 1 0 讀 顯 示 數(shù) 據(jù) 讀、寫指令每執(zhí)行一次讀、寫操作,列地址就自動(dòng)增1。必須注意的是,進(jìn)行讀操作之前,必須有一次空讀操作,緊接著再讀才會(huì)讀出所要讀的單元中的數(shù)據(jù)。3.3 晶振、復(fù)位、驅(qū)動(dòng)電路3.3.1 晶振電路 單片機(jī)的晶振電路如圖3.2所示,其中XTAL1和XTAL2分別為片內(nèi)振蕩電路的輸入輸出端。一般電容取2047uF,本系統(tǒng)晶體的振蕩頻率為12MHz。晶振電路產(chǎn)生的振蕩脈沖經(jīng)過(guò)內(nèi)部觸發(fā)器進(jìn)行二分頻后,成為單片機(jī)的時(shí)鐘脈沖信號(hào),為單片機(jī)提供一個(gè)基本時(shí)鐘信號(hào)。 圖3.2 晶振電路3.3.2 復(fù)位電路 復(fù)位操作是單片機(jī)的基本操作,單片機(jī)在進(jìn)入運(yùn)行
29、前和在運(yùn)行過(guò)程中程序出錯(cuò)或操作失誤使系統(tǒng)不能正常運(yùn)行時(shí),需要進(jìn)行復(fù)位操作,復(fù)位操作后,程序?qū)?000H開(kāi)始重新執(zhí)行。 復(fù)位信號(hào)從單片機(jī)的RST引腳輸入,復(fù)位操作有上電自動(dòng)復(fù)位、按鍵電平復(fù)位和外部脈沖復(fù)位三種方式,本電路采用了按鍵電平復(fù)位,電路圖如圖3.3所示: 圖3.3 復(fù)位電路3.3.3 電機(jī)驅(qū)動(dòng)電路 步進(jìn)電動(dòng)機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,由于步進(jìn)電機(jī)具有控制方便、體積小等特點(diǎn),所以在數(shù)控系統(tǒng)、自動(dòng)生產(chǎn)線、自動(dòng)化儀表、繪圖機(jī)和計(jì)算機(jī)外圍設(shè)備中得到廣泛應(yīng)用。微電子學(xué)的迅速發(fā)展和微型計(jì)算機(jī)的普及與應(yīng)用,為步進(jìn)電動(dòng)機(jī)的應(yīng)用開(kāi)辟了廣闊前景,使得以往用硬件電路構(gòu)成的龐大復(fù)雜
30、的控制器得以用軟件實(shí)現(xiàn),既降低了硬件成本又提高了控制的靈活性,可靠性及多功能性。市場(chǎng)上有很多現(xiàn)成的步進(jìn)電機(jī)控制機(jī)構(gòu),但價(jià)格都偏高。應(yīng)用SGS公司推出的L298芯片可方便的組成步進(jìn)電機(jī)驅(qū)動(dòng)器,并結(jié)合AT89C51單片機(jī)進(jìn)行控制,即可以實(shí)現(xiàn)用相對(duì)便宜的價(jià)格組成一個(gè)性能不錯(cuò)的步進(jìn)電機(jī)驅(qū)動(dòng)電路。 圖3.4 電機(jī)驅(qū)動(dòng)電路3.4 液晶顯示屏與單片機(jī)接口電路 液晶顯示屏共有18個(gè)引腳,其中VCC、RST接電源,GND三腳接地,CS1、CS2兩腳分別接P2.4、P2.3,DB0DB7分別與單片機(jī)P0.0P0.7相連接,RW與P2.1腳相連,RS與P2.0腳相連,E與P2.2腳相連,V0滑動(dòng)變阻器,電如圖見(jiàn)圖3
31、.5所示: 圖3.5 LCD與單片機(jī)接口3.5 控鍵與單片機(jī)接口電路 本設(shè)計(jì)共有16個(gè)控件,分別是:0-9十個(gè)數(shù)字鍵用來(lái)設(shè)置轉(zhuǎn)速,正轉(zhuǎn)和反轉(zhuǎn)鍵控制電機(jī)的正反轉(zhuǎn)向,加速和減速鍵用來(lái)控制轉(zhuǎn)速,以十轉(zhuǎn)為基本單位進(jìn)行遞加或遞減,設(shè)置鍵可以設(shè)置轉(zhuǎn)向、精確的轉(zhuǎn)速、轉(zhuǎn)動(dòng)時(shí)間,當(dāng)設(shè)置完成是可以用啟動(dòng)鍵啟動(dòng)。K1K8分別與P1.0P1.7相接,鍵盤如圖3.6所示:圖3.6 鍵盤接口第4章 系統(tǒng)軟件設(shè)計(jì) 本部分主要介紹步進(jìn)電機(jī)控制的軟件部分設(shè)計(jì),包括電機(jī)流程圖、液晶屏驅(qū)動(dòng)代碼設(shè)計(jì)、初始化代碼設(shè)計(jì)、電機(jī)時(shí)間代碼設(shè)計(jì)、數(shù)據(jù)表格設(shè)計(jì)等幾個(gè)方面,現(xiàn)就對(duì)這幾個(gè)方面做具體分析。4.1 電機(jī)流程圖4.1.1 液晶驅(qū)動(dòng)程序調(diào)用規(guī)
32、則流程圖 本設(shè)計(jì)用到了液晶AMPIRE128*64,勢(shì)必用到驅(qū)動(dòng)代碼,包括讀狀態(tài)函數(shù);寫指令函數(shù);讀數(shù)據(jù)函數(shù);寫數(shù)據(jù)函數(shù);自動(dòng)讀寫函數(shù);顯示漢字、字符函數(shù)等等,現(xiàn)以流程圖的形式給出其互相調(diào)用規(guī)則(A函數(shù)指向B函數(shù),表示B調(diào)用了A)。 圖4.1 液晶驅(qū)動(dòng)調(diào)用4.1.2 主函數(shù)流程圖 在主函數(shù)的運(yùn)行過(guò)程中,程序會(huì)隨著啟動(dòng)鍵的按下進(jìn)入主循環(huán)而不斷地掃描鍵盤,判斷是否有鍵按下,再調(diào)用相關(guān)函數(shù)做相應(yīng)的處理,同時(shí)一個(gè)定時(shí)器中斷有條件開(kāi)啟,在中斷到來(lái)時(shí)響應(yīng)中斷,執(zhí)行相關(guān)的中斷操作,流程圖如下: 圖4.2 主函數(shù)調(diào)用4.2 液晶屏驅(qū)動(dòng)代碼設(shè)計(jì)4.2.1 判斷忙指令void Busy()DI=0;RW=1;do
33、 DB=0xff; E=1; DB&=0x80; E=0; while(DB!=0);4.2.2 寫指令程序void Write_com( unsigned char com)Busy();DI=0;RW=0;E=1;DB=com;E=0;4.2.3 寫數(shù)據(jù)程序void Write_dat(unsigned char dat)Busy();DI=1;RW=0;E=1;DB=dat;E=0;4.2.4 寫漢字程序void Han_Zi(bit m,unsigned char page,unsigned char row,unsigned char n)unsigned char i,j;
34、if(m) CS1=0; CS2=1; else CS1=1; CS2=0; for(j=0;j<2;j+) Write_com(page+0xb8+j); Write_com(row+0x40); for(i=0;i<16;i+) Write_dat(Tab1n16*j+i); 4.2.5 寫字符程序void Zi_Fu(bit m,unsigned char page,unsigned char row,unsigned char n)unsigned char i,j;if(m) CS1=0; CS2=1; else CS1=1; CS2=0; for(j=0;j<2;
35、j+) Write_com(page+0xb8+j); Write_com(row+0x40); for(i=0;i<8;i+) Write_dat(Tab2n8*j+i); 4.2.6 清屏程序void Clear()unsigned char i,j;CS1=1;CS2=0;for(j=0;j<8;j+) Write_com(0xb8+j); Write_com(0x40); for(i=0;i<64;i+) Write_dat(0); CS1=0; CS2=1; for(j=0;j<8;j+) Write_com(0xb8+j); Write_com(0x40);
36、 for(i=0;i<64;i+) Write_dat(0); 4.2.7 初始化程序void Init()CS1=1;CS2=0;Write_com(0xc0);/設(shè)置起始行為第一行Write_com(0x3f);/開(kāi)顯示關(guān)顯示為0x3eCS1=0;CS2=1;Write_com(0xc0);Write_com(0x3f);4.3 固定字符顯示代碼Han_Zi(0,2,16,0);Han_Zi(0,2,32,1);Han_Zi(0,2,48,2);Han_Zi(1,2,0,3);Zi_Fu(1,2,16,11);Han_Zi(0,4,16,1);Han_Zi(0,4,32,6);Zi_
37、Fu(0,4,48,11);Han_Zi(0,4,0,9);Zi_Fu(1,2,16,11);Han_Zi(0,6,16,0);Han_Zi(0,6,32,1);Han_Zi(0,6,48,10);Han_Zi(1,6,0,11);Zi_Fu(1,2,16,11);Zi_Fu(1,6,16,11);Zi_Fu(1,4,32,0);Han_Zi(1,4,24,1);Zi_Fu(1,4,40,10);Han_Zi(1,4,48,12);Zi_Fu(0,4,56,1);Zi_Fu(1,4,0,5);Zi_Fu(1,4,8,0);4.4 中斷子程序void t0() interrupt 1 using
38、 0TH0=15536/256;TL0=15536%256;b+;if(b=1) b=0; a+; if(a=8)a=0; P3=Tab3a; 4.5 漢字表unsigned char code Tab132=/- 旋 -0 0x08,0x08,0xF9,0x4E,0x48,0xCC,0x28,0x10, 0x2F,0x24,0xE4,0x24,0x24,0xA6,0x64,0x00, 0x40,0x30,0x0F,0x20,0x40,0xBF,0x40,0x20, 0x1F,0x20,0x7F,0x84,0x86,0xC4,0x40,0x00,/- 轉(zhuǎn) -1 0x08,0xC8,0xB8,0
39、x8F,0xE8,0x88,0x40,0x48, 0xC8,0x7F,0x48,0x48,0x4C,0x68,0x40,0x00, 0x08,0x18,0x08,0x04,0xFF,0x04,0x00,0x02, 0x13,0x22,0x62,0x9A,0x06,0x02,0x00,0x00,/- 方 -2 0x10,0x10,0x10,0x10,0x10,0xF1,0x92,0x96, 0x90,0x90,0x90,0xD0,0x90,0x18,0x10,0x00, 0x00,0x80,0x40,0x20,0x18,0x07,0x00,0x00, 0x40,0x80,0x40,0x3F,0x
40、00,0x00,0x00,0x00,/- 向 -3 0x00,0xF8,0x08,0x08,0xCC,0x4A,0x49,0x48, 0x48,0x48,0xE8,0x48,0x08,0xFC,0x08,0x00, 0x00,0xFF,0x00,0x00,0x1F,0x08,0x08,0x08, 0x08,0x08,0x1F,0x40,0x80,0x7F,0x00,0x00,/- 正 -4 0x00,0x02,0x02,0xC2,0x02,0x02,0x02,0xFE, 0x82,0x82,0x82,0xC2,0x83,0x02,0x00,0x00, 0x40,0x40,0x40,0x7F,0
41、x40,0x40,0x40,0x7F, 0x40,0x40,0x40,0x40,0x40,0x60,0x40,0x00,/- 反 -5 0x00,0x00,0xFC,0x24,0x24,0xE4,0x24,0x24, 0x24,0x22,0x22,0xA3,0x62,0x00,0x00,0x00, 0x40,0x30,0x0F,0x80,0x80,0x40,0x23,0x14, 0x08,0x14,0x22,0x21,0x40,0xC0,0x40,0x00,/- 速 -6 0x40,0x42,0x44,0xCC,0x00,0xF4,0x94,0x94, 0x94,0xFF,0x94,0x94,
42、0x94,0xF6,0x04,0x00, 0x00,0x40,0x20,0x1F,0x20,0x51,0x48,0x44, 0x42,0x7F,0x42,0x44,0x4C,0x61,0x20,0x00,/- 度 -7 0x00,0x00,0xFC,0x24,0x24,0x24,0xFC,0xA5, 0xA6,0xA4,0xFC,0x24,0x34,0x26,0x04,0x00, 0x40,0x20,0x9F,0x80,0x42,0x42,0x26,0x2A, 0x12,0x2A,0x26,0x42,0x40,0xC0,0x40,0x00,/- 分 -8 0x00,0x80,0x40,0x20
43、,0x98,0x86,0x80,0x80, 0x83,0x8C,0x90,0x20,0xC0,0x80,0x80,0x00, 0x01,0x00,0x80,0x40,0x20,0x1F,0x00,0x40, 0x80,0x40,0x3F,0x00,0x00,0x01,0x00,0x00,/- -> -9 0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0, 0xD8,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00, 0x00,0x00,0x07,0x07,0x07,0x07,0x07,0x07, 0x37,0x1F,0x0F,0x07,0
44、x03,0x01,0x00,0x00,/- 時(shí) -10 0x00,0xFC,0x84,0x84,0x84,0xFE,0x14,0x10, 0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x00, 0x00,0x3F,0x10,0x10,0x10,0x3F,0x00,0x00, 0x00,0x23,0x40,0x80,0x7F,0x00,0x00,0x00,/- 間 -11 0x00,0xF8,0x01,0x02,0xF6,0x10,0x12,0x12, 0x12,0x12,0xFA,0x12,0x02,0xFF,0x02,0x00, 0x00,0xFF,0x00,0x0
45、0,0x3F,0x11,0x11,0x11, 0x11,0x11,0x3F,0x40,0x80,0x7F,0x00,0x00,/- 分 - 0x00,0x80,0x40,0x20,0x98,0x86,0x80,0x80, 0x83,0x8C,0x90,0x20,0xC0,0x80,0x80,0x00, 0x01,0x00,0x80,0x40,0x20,0x1F,0x00,0x40, 0x80,0x40,0x3F,0x00,0x00,0x01,0x00,0x00,;4.6 字符表unsigned char code Tab216= 0xF0,0xF8,0x0C,0x04,0x04,0x0C,0x
46、F8,0xF0, / -0- 0x0F,0x1F,0x30,0x20,0x20,0x30,0x1F,0x0F, 0x00,0x00,0x08,0xF8,0xFC,0x00,0x00,0x00, / -1- 0x00,0x00,0x20,0x3F,0x3F,0x20,0x00,0x00, 0x30,0x38,0x0C,0x04,0x04,0x0C,0xF8,0xF0, / -2- 0x20,0x30,0x38,0x2C,0x26,0x23,0x21,0x38, 0x10,0x18,0x0C,0x84,0x84,0xCC,0x78,0x30, / -3- 0x08,0x18,0x30,0x20,0
47、x20,0x31,0x1F,0x0E, 0x00,0xC0,0x70,0x18,0xFC,0xFE,0x00,0x00, / -4- 0x07,0x05,0x04,0x24,0x3F,0x3F,0x24,0x04, 0xFC,0xFC,0xC4,0x44,0x44,0xC4,0x84,0x04, / -5- 0x08,0x18,0x30,0x20,0x20,0x30,0x1F,0x0F, 0xF0,0xF8,0x8C,0x44,0x44,0xCC,0x98,0x10, / -6- 0x0F,0x1F,0x30,0x20,0x20,0x30,0x1F,0x0F, 0x1C,0x0C,0x0C,0
48、x0C,0xCC,0xEC,0x3C,0x1C, / -7- 0x00,0x00,0x3C,0x3F,0x03,0x00,0x00,0x00, 0x30,0x78,0xCC,0x84,0x84,0xCC,0x78,0x30, / -8- 0x0E,0x1F,0x31,0x20,0x20,0x31,0x1F,0x0E, 0xF0,0xF8,0x0C,0x04,0x04,0x0C,0xF8,0xF0, / -9- 0x08,0x19,0x33,0x22,0x22,0x33,0x1F,0x0F, 0x00,0x00,0x00,0x80,0xC0,0x60,0x30,0x00, / -/- 0x0C,0x06,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00, / -:- 0x00,0x00,0x00,0x06,0x06,0x00,0x00,0x00,;4.7 延時(shí)子程序void delay10ms()unsigned char a,b,c;for(a=0;a<5;a+)for(b=0;b&l
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司內(nèi)部人員借款合同
- 2025電力工程施工質(zhì)量檢查、驗(yàn)收及評(píng)定管理辦法
- 2025全國(guó)數(shù)據(jù)資源統(tǒng)計(jì)調(diào)查制度
- 押金合同增補(bǔ)協(xié)議
- 農(nóng)民合作社聘用合同
- 2025年遼寧貨運(yùn)從業(yè)資格證結(jié)業(yè)考試答案
- 發(fā)動(dòng)機(jī)推進(jìn)控制系統(tǒng)戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 光電電視測(cè)斜儀戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 豆腐乳戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 化肥使用賠償合同范本
- 2025年山東鋁業(yè)職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2024年教育公共基礎(chǔ)知識(shí)筆記
- 《銷售合同執(zhí)行》課件
- 深夜地鐵7號(hào)線施工方案
- 山東2024年山東經(jīng)貿(mào)職業(yè)學(xué)院第二批招聘102人歷年參考題庫(kù)(頻考版)含答案解析
- 宮腔球囊止血護(hù)理常規(guī)
- 口腔6S管理詳解
- 中醫(yī)接診能力培訓(xùn)
- 醫(yī)院意識(shí)形態(tài)培訓(xùn)課件
- 2025年山東核電有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年上半年江西宜春市事業(yè)單位招聘工作人員651人重點(diǎn)基礎(chǔ)提升(共500題)附帶答案詳解
評(píng)論
0/150
提交評(píng)論