2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  課程設計說明書</b></p><p><b>  設計題目:</b></p><p>  學 院:機械工程學院</p><p>  專 業(yè):機械設計制造及其自動化</p><p><b>  班 級:</b></p>

2、<p><b>  學 號:</b></p><p><b>  姓 名:</b></p><p><b>  指導教師:</b></p><p><b>  目 錄</b></p><p>  1. 課程設計要求1<

3、;/p><p>  2. 系統(tǒng)功能分析與方案確定1</p><p>  3. 系統(tǒng)主要硬件電路模塊設計4</p><p>  3.1編碼器模塊4</p><p>  3.2液晶顯示模塊9</p><p>  3.3復位電路模塊14</p><p>  3.4晶振電路模塊17</p&

4、gt;<p>  3.5 單片機硬件端口分配18</p><p>  4. 程序軟件設計與分析19</p><p>  4.1系統(tǒng)軟件分析及詳細技術文件設計19</p><p>  5. 后續(xù)有待完善和提高的工作25</p><p><b>  參考文獻26</b></p><

5、p><b>  附錄26</b></p><p><b>  1. 課程設計要求</b></p><p>  數(shù)字轉(zhuǎn)速(數(shù))計的設計</p><p><b>  一、設計任務</b></p><p>  轉(zhuǎn)速計是我們經(jīng)常會用到的儀器之一,通常與編碼器配合用來測量旋轉(zhuǎn)機械

6、設備的轉(zhuǎn)速。用單片機的定時/計數(shù)器功能可以實現(xiàn)頻率計的數(shù)字化、智能化,通過合理的硬件設計和軟件編程使測量精度達到實用化要求。</p><p><b>  二、 基本要求</b></p><p>  測量速度范圍1~1000轉(zhuǎn)每分鐘。</p><p>  可對轉(zhuǎn)數(shù)計數(shù)并實時顯示;</p><p>  可對轉(zhuǎn)速檢測并實時顯示

7、;</p><p>  速度檢測精度:1%。</p><p><b>  被測信號是方波。</b></p><p>  顯示方式為轉(zhuǎn)數(shù)計數(shù):5位十進制數(shù)顯示;速度計:5位有效數(shù)字顯示,保留小數(shù)點后2位。</p><p>  2. 系統(tǒng)功能分析與方案確定</p><p>  2.1 轉(zhuǎn)速測量系統(tǒng)的原

8、理</p><p>  2.1.1 轉(zhuǎn)速測量方法</p><p>  轉(zhuǎn)速是指作圓周運動的物體在單位時間內(nèi)所轉(zhuǎn)過的圈數(shù),其大小及變化往往意味</p><p>  著機器設備運轉(zhuǎn)的正常與否,因此,轉(zhuǎn)速測量一直是工業(yè)領域的一個重要問題。按照不同的理論方法,先后產(chǎn)生過模擬測速法(如離心式轉(zhuǎn)速表) 、同步測速法(如機械式或閃光式頻閃測速儀) 以及計數(shù)測速法。計數(shù)測速法又可分

9、為機械式定時計數(shù)法和電子式定時計數(shù)法。本文介紹的采用單片機和光電傳感器組成的高精度轉(zhuǎn)速測量系統(tǒng),其轉(zhuǎn)速測量方法采用的就是電子式定時計數(shù)法。</p><p>  對轉(zhuǎn)速的測量實際上是對轉(zhuǎn)子旋轉(zhuǎn)引起的周期脈沖信號的頻率進行測量。在頻率的工程測量中,電子式定時計數(shù)測量頻率的方法一般有三種:</p><p>  ①測頻率法:在一定時間間隔t 內(nèi),計數(shù)被測信號的重復變化次數(shù)N ,則被測信號的頻率fx

10、 可表示為</p><p>  f x =Nt(1)</p><p>  ②測周期法:在被測信號的一個周期內(nèi),計數(shù)時鐘脈沖數(shù)m0 ,則被測信號頻率</p><p>  fx = fc/ m0 ,其中, fc 為時鐘脈沖信號頻率。</p><p> ?、鄱嘀芷跍y頻法:在被測信號m1 個周期內(nèi), 計數(shù)時鐘脈沖數(shù)m2 ,從而得到被測信號頻率fx ,

11、則fx 可以表示為fx =m1 fcm2, m1 由測量準確度確定。</p><p>  電子式定時計數(shù)法測量頻率時, 其測量準確度主要由兩項誤差來決定: 一項是時基誤差; 另一項是量化±1 誤差。當時基誤差小于量化±1 誤差一個或兩個數(shù)量級時,這時測量準確度主要由量化±1 誤差來確定。對于測頻率法,測量相對誤差為:</p><p>  Er1 =測量誤差值實

12、際測量值×100 % =1N×100 % (2)</p><p>  由此可見,被測信號頻率越高, N 越大, Er1 就越小,所以測頻率法適用于高頻信號</p><p>  ( 高轉(zhuǎn)速信號) 的測量。對于測周期法,測量相對誤差為:</p><p>  Er2 =測量誤差值實際測量值×100 % =1m0×100 % (3)&

13、lt;/p><p>  對于給定的時鐘脈沖fc , 當被測信號頻率越低時,m0 越大, Er2 就越小,所以測周期法適用于低頻信號( 低轉(zhuǎn)速信號) 的測量。對于多周期測頻法,測量相對誤差為:</p><p>  Er3 =測量誤差值實際測量值100%=1m2×100 % (4)</p><p>  從上式可知,被測脈沖信號周期數(shù)m1 越大, m2 就越大,則測

14、量精度就越高。它適</p><p>  用于高、低頻信號(高、低轉(zhuǎn)速信號) 的測量。但隨著精度和頻率的提高, 采樣周期將大大延長,并且判斷m1 也要延長采樣周期,不適合實時測量。</p><p>  根據(jù)以上的討論,考慮到實際應用中需要測量的轉(zhuǎn)速范圍很寬,上述的轉(zhuǎn)速測量方法難以滿足要求,因此,研究高精度的轉(zhuǎn)速測量方法,以同時適用于高、低轉(zhuǎn)速信號的測量,不僅具有重要的理論意義,也是實際生產(chǎn)中

15、的需要。</p><p>  2.1.2 轉(zhuǎn)速測量原理</p><p>  利用編碼器產(chǎn)生方波信號來模擬速度快慢,即通過編碼器,將轉(zhuǎn)速信號變?yōu)殡娒}沖,利用微機在單位時間內(nèi)對脈沖進行計數(shù),再經(jīng)過軟件計算獲得轉(zhuǎn)速數(shù)據(jù)。即:</p><p>  n=N/ (mT) (1)</p><p>  ◆n ———轉(zhuǎn)速、單位:轉(zhuǎn)/ 分鐘;</p>

16、<p>  ◆N ———采樣時間內(nèi)所計脈沖個數(shù);</p><p>  ◆T———采樣時間、單位:分鐘;</p><p>  ◆m ———每旋轉(zhuǎn)一周所產(chǎn)生的脈沖個數(shù)。</p><p>  如果m=60, 那么1 秒鐘內(nèi)脈沖個數(shù)N 就是轉(zhuǎn)速n, 即:</p><p>  n=N/ (mT) =N/60 ×1/60=N (2

17、)</p><p>  ◆這里m 為400。(看編碼器而定)</p><p>  在對轉(zhuǎn)速波動較快系統(tǒng)或要求動態(tài)特性好而精度高的轉(zhuǎn)速測控系統(tǒng)中,調(diào)節(jié)周期</p><p>  一般很短,相應的采樣周期需取得很小,使得脈沖當量增高,從而導致整個系統(tǒng)測量精度降低,難以滿足測控要求。提高采樣速率通常就要減小采樣時間T, 而T 的減小會使采到的脈沖數(shù)值N 下降,導致脈沖當量(

18、每個脈沖所代表的轉(zhuǎn)速) 增高,從而使得測量精度變得粗糙。通過增加測速碼盤的齒數(shù)可以提高精度,但是碼盤齒數(shù)的增加會受到加工工藝的限制,同時會使轉(zhuǎn)速測量脈沖的頻率增高,頻率的提升又會受到傳感器中光電器或磁敏器或磁電器件最高工作頻率的限制。凡此種種因素限制了常規(guī)智能轉(zhuǎn)速測量方法的使用范圍。而采用本文所提出的定時分時雙頻率采樣法,可在保證采樣度的同時,提高采樣速率,充分發(fā)揮微機智能測速方法的優(yōu)越性及靈活性。</p><p&g

19、t;  圖1.1 系統(tǒng)原理圖</p><p><b>  各部分模塊的功能:</b></p><p>  ①編碼器:用來對信號的采樣。</p><p> ?、诜糯?、整形電路:對傳感器送過來的信號進行放大和整形,在送入單片機進行數(shù)據(jù)</p><p><b>  的處理轉(zhuǎn)換。</b></p>

20、<p> ?、蹎纹瑱C:對處理過的信號進行轉(zhuǎn)換成轉(zhuǎn)速的實際值,1602液晶</p><p> ?、?602液晶顯示:用來對所測量到的轉(zhuǎn)速進行顯示。</p><p>  3. 系統(tǒng)主要硬件電路模塊設計</p><p><b>  3.1編碼器模塊</b></p><p>  轉(zhuǎn)速測量的方案選擇,一般要考慮傳感器

21、的結(jié)構(gòu)、安裝以及測速范圍與環(huán)境條</p><p>  件等方面的適用性;再就是二次儀表的要求,除了顯示以外還有控制、通訊和遠傳方面的要求。這里主要由編碼器性質(zhì)決定,以下為本次實驗的編碼器,及其工作原理:</p><p>  3.1.1光電編碼器的介紹:</p><p>  光電編碼器是通過讀取光電編碼盤上的圖案或編碼信息來表示與光電編碼器相連的電機轉(zhuǎn)子的位置信息的。

22、根據(jù)光電編碼器的工作原理可以將光電編碼器分為絕對式光電編碼器與增量式光電編碼器,下面我就這兩種光電編碼器的結(jié)構(gòu)與工作原理做介紹。</p><p>  (一)、絕對式光電編碼器</p><p>  絕對式光電編碼器如圖所示,他是通過讀取編碼盤上的二進制的編碼信息來表示絕對位置信息的。</p><p>  編碼盤是按照一定的編碼形式制成的圓盤。圖1是二進制的編碼盤,圖中

23、空白部分是透光的,用“0”來表示;涂黑的部分是不透光的,用“1”來表示。通常將組成編碼的圈稱為碼道,每個碼道表示二進制數(shù)的一位,其中最外側(cè)的是最低位,最里側(cè)的是最高位。如果編碼盤有4個碼道,則由里向外的碼道分別表示為二進制的23、22、21和20,4位二進制可形成16個二進制數(shù),因此就將圓盤劃分16個扇區(qū),每個扇區(qū)對應一個4位二進制數(shù),如0000、0001、…、1111。</p><p>  按照碼盤上形成的碼道

24、配置相應的光電傳感器,包括光源、透鏡、碼盤、光敏二極管和驅(qū)動電子線路。當碼盤轉(zhuǎn)到一定的角度時,扇區(qū)中透光的碼道對應的光敏二極管導通,輸出低電平“0”,遮光的碼道對應的光敏二極管不導通,輸出高電平“1”,這樣形成與編碼方式一致的高、低電平輸出,從而獲得扇區(qū)的位置腳。</p><p> ?。ǘ⒃隽渴焦怆娋幋a器</p><p>  增量式光電編碼器是碼盤隨位置的變化輸出一系列的脈沖信號,然后

25、根據(jù)位置變化的方向用計數(shù)器對脈沖進行加/減計數(shù),以此達到位置檢測的目的。它是由光源、透鏡、主光柵碼盤、鑒向盤、光敏元件和電子線路組成。</p><p>  增量式光電編碼器的工作原理是是由旋轉(zhuǎn)軸轉(zhuǎn)動帶動在徑向有均勻窄縫的主光柵碼盤旋轉(zhuǎn),在主光柵碼盤的上面有與其平行的鑒向盤,在鑒向盤上有兩條彼此錯開90o相位的窄縫,并分別有光敏二極管接收主光柵碼盤透過來的信號。工作時,鑒向盤不動,主光柵碼盤隨轉(zhuǎn)子旋轉(zhuǎn),光源經(jīng)透鏡平

26、行射向主光柵碼盤,通過主光柵碼盤和鑒向盤后由光敏二極管接收相位差90o的近似正弦信號,再由邏輯電路形成轉(zhuǎn)向信號和計數(shù)脈沖信號。為了獲得絕對位置角,在增量式光電編碼器有零位脈沖,即主光柵每旋轉(zhuǎn)一周,輸出一個零位脈沖,使位置角清零。利用增量式光電編碼器可以檢測電機的位置和速度。</p><p>  二、光電編碼器的測量方法:</p><p>  光電編碼器在電機控制中可以用來測量電機轉(zhuǎn)子的磁場

27、位置和機械位置以及轉(zhuǎn)子的磁場和機械位置的變化速度與變化方向。下面就我就光電編碼器在這幾方面的應用方法做一下介紹。</p><p> ?。ㄒ唬?、使用光電編碼器來測量電機的轉(zhuǎn)速</p><p>  可以利用定時器/計數(shù)器配合光電編碼器的輸出脈沖信號來測量電機的轉(zhuǎn)速。具體的測速方法有M法、T法和M/T法3種。</p><p>  M法又稱之為測頻法,其測速原理是在規(guī)定的檢

28、測時間Tc內(nèi),對光電編碼器輸出的脈沖信號計數(shù)的測速方法,如圖2所示,例如光電編碼器是N線的,則每旋轉(zhuǎn)一周可以有4N個脈沖,因為兩路脈沖的上升沿與下降沿正好使編碼器信號4倍頻。現(xiàn)在假設檢測時間是Tc,計數(shù)器的記錄的脈沖數(shù)是M1,則電機的每分鐘的轉(zhuǎn)速為</p><p>  在實際的測量中,時間Tc內(nèi)的脈沖個數(shù)不一定正好是整數(shù),而且存在最大半個脈沖的誤差。如果要求測量的誤差小于規(guī)定的范圍,比如說是小于百分之一,那么M1

29、就應該大于50。在一定的轉(zhuǎn)速下要增大檢測脈沖數(shù)M1以減小誤差,可以增大檢測時間Tc單考慮到實際的應用檢測時間很短,例如伺服系統(tǒng)中的測量速度用于反饋控制,一般應在0.01秒以下。由此可見,減小測量誤差的方法是采用高線數(shù)的光電編碼器。</p><p>  M法測速適用于測量高轉(zhuǎn)速,因為對于給定的光電編碼器線數(shù)N機測量時間Tc條件下,轉(zhuǎn)速越高,計數(shù)脈沖M1越大,誤差也就越小。</p><p> 

30、 T法也稱之為測周法,該測速方法是在一個脈沖周期內(nèi)對時鐘信號脈沖進行計數(shù)的方法,如圖3所示。例如時鐘頻率為fclk,計數(shù)器記錄的脈沖數(shù)為M2,光電編碼器是N線的,每線輸出4N個脈沖,那么電機的每分鐘的轉(zhuǎn)速為</p><p>  為了減小誤差,希望盡可能記錄較多的脈沖數(shù),因此T法測速適用于低速運行的場合。但轉(zhuǎn)速太低,一個編碼器輸出脈沖的時間太長,時鐘脈沖數(shù)會超過計數(shù)器最大計數(shù)值而產(chǎn)生溢出;另外,時間太長也會影響控制

31、的快速性。與M法測速一樣,選用線數(shù)較多的光電編碼器可以提高對電機轉(zhuǎn)速測量的快速性與精度。</p><p>  M/T法測速是將M法和T法兩種方法結(jié)合在一起使用,在一定的時間范圍內(nèi),同時對光電編碼器輸出的脈沖個數(shù)M1和M2進行計數(shù),則電機每分鐘的轉(zhuǎn)速為</p><p>  實際工作時,在固定的Tc時間內(nèi)對光電編碼器的脈沖計數(shù),在第一個光電編碼器上升沿定時器開始定時,同時開始記錄光電編碼器和時

32、鐘脈沖數(shù),定時器定時Tc時間到,對光電編碼器的脈沖停止計數(shù),而在下一個光電編碼器的上升沿到來時刻,時鐘脈沖才停止記錄。采用M/T法既具有M法測速的高速優(yōu)點,又具有T法測速的低速的優(yōu)點,能夠覆蓋較廣的轉(zhuǎn)速范圍,測量的精度也較高,在電機的控制中有著十分廣泛的應用。</p><p>  (二)使用增量式光電編碼器來判別電機轉(zhuǎn)速方向的原理</p><p>  增量式光電編碼器輸出兩路相位相差90o

33、的脈沖信號A和B,當電機正轉(zhuǎn)時,脈沖信號A的相位超前脈沖信號B的相位90o,此時邏輯電路處理后可形成高電平的方向信號Dir。當電機反轉(zhuǎn)時,脈沖信號A的相位滯后脈沖信號B的相位90o,此時邏輯電路處理后的方向信號Dir為低電平。因此根據(jù)超前與滯后的關系可以確定電機的轉(zhuǎn)向。其轉(zhuǎn)速辯相的原理如圖4所示</p><p><b>  圖4轉(zhuǎn)向判別原理圖</b></p><p>

34、 ?。ㄈ?、增量式光電編碼器的反饋脈沖的四倍頻原理</p><p>  在使用增量式編碼器時,通過計相位相差90o的兩路正交脈沖信號A和B的上升沿與下降沿已達到將增量式編碼器的反饋脈沖四倍頻的目的。這樣在不增加增量式光電編碼器的線數(shù)的情況下,就可以獲得更精度高的位置脈沖信息,以實現(xiàn)對電機位置的精確控制。其工作原理與脈沖的相位關系如圖5所示</p><p>  圖5 脈沖四倍頻相位關系圖&l

35、t;/p><p><b>  結(jié)束語:</b></p><p>  光電式編碼器有著良好的抗干擾特性與應用的可靠性,在電機控制這種有著極高電磁感染的應用環(huán)境下有著廣闊的應用前景。相信在不久的將來光電式編碼器一定會在電機控制領域發(fā)揮更為重要的作用。而我們對于光電式編碼器的研究也就顯得格外的重要。</p><p><b>  3.2液晶顯示模

36、塊</b></p><p><b> ?、僖壕э@示原理</b></p><p>  液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動、易于實現(xiàn)全彩色顯示的特點,目前已經(jīng)被廣泛應用在便攜式電腦、數(shù)字攝像機、PDA移動通信工具等眾多領域。</p>

37、<p><b> ?、谝壕э@示器的分類</b></p><p>  液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動方式來分,可以分為靜態(tài)驅(qū)動(Static)、單純矩陣驅(qū)動(Simple Matrix)和主動矩陣驅(qū)動(Active Matrix)三種。</p><p>

38、; ?、垡壕э@示器各種圖形的顯示原理:</p><p><b>  線段的顯示</b></p><p>  點陣圖形式液晶由M×N個顯示單元組成,假設LCD顯示屏有64行,每行有128列,每8列對應1字節(jié)的8位,即每行由16字節(jié),共16×8=128個點組成,屏上64×16個顯示單元與顯示RAM區(qū)1024字節(jié)相對應,每一字節(jié)的內(nèi)容和顯示屏上

39、相應位置的亮暗對應。例如屏的第一行的亮暗由RAM區(qū)的000H——00FH的16字節(jié)的內(nèi)容決定,當(000H)=FFH時,則屏幕的左上角顯示一條短亮線,長度為8個點;當(3FFH)=FFH時,則屏幕的右下角顯示一條短亮線;當(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H時,則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。</p>

40、<p><b>  字符的顯示</b></p><p>  用LCD顯示一個字符時比較復雜,因為一個字符由6×8或8×8點陣組成,既要找到和顯示屏幕上某幾個位置對應的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點亮,為“0”的不亮。這樣一來就組成某個字符。但由于內(nèi)帶字符發(fā)生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工

41、作在文本方式,根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)找出顯示RAM對應的地址,設立光標,在此送上該字符對應的代碼即可。</p><p><b>  漢字的顯示</b></p><p>  漢字的顯示一般采用圖形的方式,事先從微機中提取要顯示的漢字的點陣碼(一般用字模提取軟件),每個漢字占32B,分左右兩半,各占16B,左邊為1、3、5……右邊為2、4、6……根據(jù)在

42、LCD上開始顯示的行列號及每行的列數(shù)可找出顯示RAM對應的地址,設立光標,送上要顯示的漢字的第一字節(jié),光標位置加1,送第二個字節(jié),換行按列對齊,送第三個字節(jié)……直到32B顯示完就可以LCD上得到一個完整漢字。</p><p>  3.2.1 1602字符型LCD簡介</p><p>  字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點陣式LCD,目前常用16*1,16*2,20*2

43、和40*2行等的模塊。下面以長沙太陽人電子有限公司的1602字符型液晶顯示器為例,介紹其用法。一般1602字符型液晶顯示器實物如圖10-53:</p><p>  圖3-1 1602字符型液晶顯示器實物圖</p><p>  3.2.2 1602LCD的基本參數(shù)及引腳功能</p><p>  1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶

44、背光的比不帶背光的厚,是否帶背光在應用中并無差別,兩者尺寸差別如下圖10-54所示:</p><p>  圖3-2 1602LCD尺寸圖</p><p>  1602LCD主要技術參數(shù):</p><p>  顯示容量:16×2個字符</p><p>  芯片工作電壓:4.5—5.5V</p><p>  工作

45、電流:2.0mA(5.0V)</p><p>  模塊最佳工作電壓:5.0V</p><p>  字符尺寸:2.95×4.35(W×H)mm</p><p><b>  引腳功能說明</b></p><p>  1602LCD采用標準的14腳(無背光)或16腳(帶背光)接口,</p>&

46、lt;p>  第1腳:VSS為地電源。</p><p>  第2腳:VDD接5V正電源。</p><p>  第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。</p><p>  第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。<

47、;/p><p>  第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為低電平時可以寫入指令或者顯示地址,當RS為低電平R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。</p><p>  第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。</p><p>  第7~14腳:D0~D7為8

48、位雙向數(shù)據(jù)線。</p><p>  第15腳:背光源正極。</p><p>  第16腳:背光源負極。</p><p>  3.2.7 硬件原理圖</p><p>  1602液晶顯示模塊可以和單片機AT89C51直接接口,電路如圖3-11所示。</p><p>  圖3-11 硬件原理圖</p>&l

49、t;p>  3.2.8 程序流程圖</p><p>  圖3-12 軟件流程圖</p><p><b>  3.3復位電路模塊</b></p><p>  復位電路(圖4.8):</p><p>  MCS-51 單片機復位電路是指單片機的初始化操作。單片機啟運運行時,都需要先復位,其作用是使CPU 和系統(tǒng)中其他

50、部件處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。因而,復位是一個很重要的操作方式。但單片機本身是不能自動進行復位的,必須配合相應的外部電路才能實現(xiàn)。</p><p><b>  圖4.8 復位電路</b></p><p><b> ?、購臀还δ埽?lt;/b></p><p>  復位電路的基本功能是:系統(tǒng)上電時提供復位信號,

51、直至系統(tǒng)電源穩(wěn)定后,撤銷復位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復位信號,以防電源開關或電源插頭分-合過程中引起的抖動而影響復位。</p><p>  單片機的復位是由外部的復位電路來實現(xiàn)的。片內(nèi)復位電路是復位引腳RST 通過一個斯密特觸發(fā)器與復位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個機器周期的S5P2,由復位電路采樣一次。復位電路通常采用上電自動復位(如圖4.9 (a))和按鈕復位(如

52、圖4.9(b))兩種方式。</p><p>  圖4.9 RC 復位電路</p><p> ?、趩纹瑱C復位后的狀態(tài):</p><p>  單片機的復位操作使單片機進入初始化狀態(tài),其中包括使程序計數(shù)器PC=0000H,這表明程序從0000H 地址單元開始執(zhí)行。單片機冷啟動后,片內(nèi)RAM 為隨機值,運行中的復位操作不改變片內(nèi)RAM 區(qū)中的內(nèi)容,21 個特殊功能寄存器復位

53、后的狀態(tài)為確定值,見表1。值得指出的是,記住一些特殊功能寄存器復位后的主要狀態(tài),對于了解單片機的初態(tài),減少應用程序中的初始化部分是十分必要的。說明:表4-1 中符號*為隨機狀態(tài):</p><p>  表4-1 寄存器復位后狀態(tài)表</p><p>  PSW=00H,表明選寄存器0 組為工作寄存器組; SP=07H,表明堆棧指針指向片內(nèi)RAM 07H 字節(jié)單元,根據(jù)堆棧操作的先加后壓法則,第

54、一個被壓入的內(nèi)容寫入到08H 單元中;Po-P3=FFH,表明已向各端口線寫入1,此時,各端口既可用于輸入又可用于輸出。IP=×××00000B,表明各個中斷源處于低優(yōu)先級; IE=0××00000B,表明各個中斷均被關斷; 系統(tǒng)復位是任何微機系統(tǒng)執(zhí)行的第一步,使整個控制芯片回到默認的硬件狀態(tài)下。</p><p>  51 單片機的復位是由RESET 引腳來控制的

55、,此引腳與高電平相接超過24 個振蕩周期后,51 單片機即進入芯片內(nèi)部復位狀態(tài),而且一直在此狀態(tài)下等待,直到RESET 引腳轉(zhuǎn)為低電平后,才檢查EA 引腳是高電平或低電平,若為高電平則執(zhí)行芯片內(nèi)部的程序代碼,若為低電平便會執(zhí)行外部程序。51 單片機在系統(tǒng)復位時,將其內(nèi)部的一些重要寄存器設置為特定的值,至于內(nèi)部RAM 內(nèi)部的數(shù)據(jù)則不變。</p><p>  3.4 晶振電路模塊</p><p&g

56、t;  晶振(圖4.10)是晶體振蕩器的簡稱,在電氣上它可以等效成一個電容和一個電阻并聯(lián)再串聯(lián)一個電容的二端網(wǎng)絡,電工學上這個網(wǎng)絡有兩個諧振點,以頻率的高低分其中較低的頻率是串聯(lián)諧振,較高的頻率是并聯(lián)諧振。</p><p>  AT89C51 單片機內(nèi)部有一個用構(gòu)成振蕩器的高增益反相放大器。引腳XTAL1 和XTAL2 分別是此放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個自激振蕩器

57、。外接晶體諧振器以及電容C1 和C2 構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12MHz,電容應盡可能的選擇陶瓷電容,電容值約為30μF。在焊接刷電路板時,晶體振蕩器和電容應盡可能安裝得與單片機芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。晶體振蕩電路如圖3-6:</p

58、><p>  晶振有一個重要的參數(shù),那就是負載電容值,選擇與負載電容值相等的并聯(lián)電容,就可以得到晶振標稱的諧振頻率。</p><p>  3.5 單片機硬件端口分配 </p><p>  為合理利用單片機的端口資源,并且兼顧程序設計的便利,將系統(tǒng)的輸出和輸入端口作如表3.1配置。</p><p>  表3.1 單片機端口配置表</p>

59、;<p>  4. 程序軟件設計與分析</p><p>  4.1系統(tǒng)軟件分析及詳細技術文件設計</p><p>  單片機 AT89C51介紹</p><p>  AT89C51 是一種帶4K 字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—FalshProgrammable and Erasable Read Only Memory)的低電壓,高性能

60、CMOS8 位微處理器,俗稱單片機。該器件采用ATMEL 高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51 指令集和輸出管腳相兼容。由于將多功能8 位CPU 和閃爍存儲器組合在單個芯片中,ATMEL 的AT89C51 是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。</p><p>  圖4.5 是常用的一種單片機,型號為AT89C51,它將計算機的功能都集成到這個芯片內(nèi)部去了,就

61、這么一個小小的芯片就能構(gòu)成一臺小型的電腦,因此叫做單片機。</p><p>  圖4.5 AT89C51 芯片</p><p>  它有40 個管腳,分成兩排,每一排各有20 個腳,其中左下角標有箭頭的為第1 腳,然后按逆時針方向依次為第2 腳、第3 腳……第40 腳。</p><p>  在40 個管腳中,其中有32 個腳可用于各種控制,比如控制小燈的亮與滅、控制

62、電機的正轉(zhuǎn)與反轉(zhuǎn)、控制電梯的升與降等,這32 個腳叫做單片機的“端口”,在單片機技術中,每個端口都有一個特定的名字,比如第一腳的那個端口叫做“P1.0”。</p><p>  AT89C51 單片機的功能:</p><p><b>  1.主要特性:</b></p><p>  ◆與MCS-51 兼容</p><p> 

63、 ◆4K 字節(jié)可編程閃爍存儲器</p><p>  ◆壽命:1000 寫/擦循環(huán)</p><p>  ◆數(shù)據(jù)保留時間:10 年</p><p>  ◆全靜態(tài)工作:0Hz-24Hz</p><p>  ◆三級程序存儲器鎖定</p><p>  ◆128*8 位內(nèi)部RAM</p><p>  ◆32

64、 可編程I/O 線</p><p>  ◆兩個16 位定時器/計數(shù)器</p><p><b>  ◆5 個中斷源</b></p><p><b>  ◆可編程串行通道</b></p><p>  ◆低功耗的閑置和掉電模式</p><p>  ◆片內(nèi)振蕩器和時鐘電路</p

65、><p>  2.管腳說明(圖4.7):</p><p>  ●VCC:供電電壓,</p><p><b>  ●GND:接地。</b></p><p>  ●P0 口:P0 口為一個8 位漏級開路雙向I/O 口,每腳可吸收8TTL 門電流。當P1 口的管腳第一次寫1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲

66、器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH 編程時,P0 口作為原碼輸入口,當FIASH 進行校驗時,P0 輸出原碼,此時P0 外部必須被拉高。</p><p>  ●P1 口:P1 口是一個內(nèi)部提供上拉電阻的8 位雙向I/O 口,P1 口緩沖器能接收輸出4TTL 門電流。P1 口管腳寫入1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。

67、在FLASH 編程和校驗時,P1 口作為第八位地址接收。</p><p>  ●P2 口:P2 口為一個內(nèi)部上拉電阻的8 位雙向I/O 口,P2 口緩沖器可接收,輸出4 個TTL 門電流,當P2 口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2 口當用于外部程序存儲器或16 位地址外部數(shù)據(jù)存儲器進行存取時

68、,P2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內(nèi)容。P2 口在FLASH 編程和校驗時接收高八位地址信號和控制信號。</p><p>  ●P3 口:P3 口管腳是8 個帶內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4 個TTL 門電流。當P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外

69、部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。P3 口也可作為AT89C51 的一些特殊功能口。</p><p>  P3 口管腳備選功能:</p><p>  ●P3.0 RXD(串行輸入口)</p><p>  ●P3.1 TXD(串行輸出口)</p><p>  ●P3.2 /INT0(外部中斷0)</p&g

70、t;<p>  ●P3.3 /INT1(外部中斷1)</p><p>  ●P3.4 T0(記時器0 外部輸入)</p><p>  ●P3.5 T1(記時器1 外部輸入)</p><p>  ●P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)</p><p>  ●P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)</p><

71、;p>  ●P3 口同時為閃爍編程和編程校驗接收一些控制信號。</p><p>  ● RST:復位輸入。當振蕩器復位器件時,要保持RST 腳兩個機器周期的高電平時間。</p><p>  ●ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字</p><p>  節(jié)。在FLASH 編程期間,此引腳用于輸入編程脈沖。在平時,ALE

72、端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE 脈沖。如想禁止ALE 的輸出可在SFR8EH 地址上置0。此時, ALE 只有在執(zhí)行MOVX,MOVC 指令是ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE 禁止,置位無效。</p><p>  ●PSEN:外部

73、程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。</p><p>  ●EA/VPP:當/EA 保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1 時,/EA 將內(nèi)部鎖定為RESET;當/EA 端保持高電平時,此間內(nèi)部程序存儲器。在FLASH 編

74、程期間,此引腳也用于施加12V 編程電源(VPP)。</p><p>  ●XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p>  ●XTAL2:來自反向振蕩器的輸出。</p><p><b>  3.振蕩器特性:</b></p><p>  XTAL1 和XTAL2 分別為反向放大器的輸入和

75、輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2 應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p><b>  4.芯片擦除:</b></p><p>  整個PEROM 陣列和三個鎖定位的電擦除可通過正確的控制信號組合

76、,并保持ALE 管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。</p><p>  此外,AT89C51 設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU 停止工作。但RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM 的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下

77、一個硬件復位為止。</p><p><b>  5.系統(tǒng)軟件設計</b></p><p>  硬件電路完成以后,進行系統(tǒng)軟件設計。首先要分析系統(tǒng)對軟件的要求,然后進行軟件的總體的設計,包括程序的總體設計和對程序的模塊化設計。按整體功能分為多個不同的模塊,單獨設計、編程、調(diào)試,然后將各個模塊裝配聯(lián)調(diào),組成完整的軟件。</p><p>  根據(jù)設計

78、的要求,單片機的任務是:內(nèi)部進行計數(shù),在計算出速度后顯示。軟件編程用C 語言完成的,需要能掌握C 語言,還要熟練AT89C51 單片機。從程序流程圖、編寫程序、編譯,到最后的調(diào)試,是很復雜的。下面作簡單介紹:系統(tǒng)軟件主程序的功能是完成系統(tǒng)的初始化、顯示程序。</p><p>  5.1 主程序初始化</p><p><b>  .定時器的初始化</b></p&g

79、t;<p>  AT89C51 有兩個定時器/計數(shù)器T0 和T1,每個定時器/計數(shù)器均可設置成為16</p><p>  位,也可以設置成為13 位進行定時或計數(shù)。計數(shù)器的功能是對T0 或T1 外來脈沖的進行計數(shù),外部輸入脈沖負跳變時,計數(shù)器進行加1。</p><p>  定時功能是通過計數(shù)器的計數(shù)來實現(xiàn)的,每個機器周期產(chǎn)生1 個計數(shù)脈沖,即每個機器周期計數(shù)器加1,因此定時時

80、間等于計數(shù)個數(shù)乘以機器周期。定時器工作時,每接收到1 個計數(shù)脈沖(或機器周期)則在設定的初值基礎上自動加1,當所有位都位1時,再加1 就會產(chǎn)生溢出,將向CPU 提出定時器溢出中斷身請。當定時器采用不同的工作方式和設置不同的初值時,產(chǎn)生溢出中斷的定時值和計數(shù)值將不同,從而可以適應不同的定時或計數(shù)控制。</p><p>  定時器有4 種工作方式:方式0、方式2、方式2 和方式3,在此對工作方式不做具體介紹。<

81、/p><p>  工作方式寄存器TMOD 的設定:</p><p>  TMOD 各位的含義如下:</p><p>  ◆GATE:門控位,用于控制定時/計數(shù)器的啟動是否受外部中斷請求信號的影響。</p><p>  ◆C/T:定時或計數(shù)方式選擇位,當C/T=1 時工作于計數(shù)方式;當C/T=0 時工作于定時方式。</p><

82、;p>  M1、M0 為工作方式選擇位,用于對T0 的四種工作方式,T1 的三種工作方式進行選擇,選擇情況如下表5-1:M1M0=00 為方式0;M1M0=01 為方式1;</p><p>  表5-1 M1、M0 為工作方式選擇位</p><p><b> ?。?)中斷允許控制</b></p><p>  MCS-51 單片機中沒有專門

83、的開中斷和關中斷指令,對各個中斷源的允許和屏蔽是由內(nèi)部的中斷允許寄存器IE 的各位來控制的。中斷允許寄存器IE 的字節(jié)地址為A8H,可以進行位尋址</p><p>  表5-2 中斷位尋址表</p><p>  ◆EA:中斷允許總控位。EA=0,屏蔽所有的中斷請求;EA=1,開放中斷。</p><p>  ◆ET2:定時器/計數(shù)器T2 的溢出中斷允許位</p&

84、gt;<p>  ◆ES:串行口中斷允許位。</p><p>  ◆ET1:定時器/計數(shù)器T1 的溢出中斷允許位。</p><p>  ◆EX1:外部中斷INT1 的中斷允許位。</p><p>  ◆ET0:定時器/計數(shù)器T0 的溢出中斷允許位。</p><p>  ◆EX0:外部中斷INT0 的中斷允許位。</p>

85、;<p>  5.2主程序流程圖程序流程圖</p><p> ?、僦鞒绦蛄鞒虉D5.1</p><p><b>  圖5.1 流程圖</b></p><p> ?、鄱〞r計數(shù)子程序流程圖5.3</p><p>  圖5.3 定時計數(shù)子程序流程圖</p><p>  后續(xù)有待完善和提高的工

86、作</p><p>  采用單片機技術來實現(xiàn)轉(zhuǎn)速的測量,可以提高轉(zhuǎn)速的測量,可以提高轉(zhuǎn)速測量的精確度,并且加快了采樣的速率,具有較好的實時性。本文介紹的轉(zhuǎn)速方法使用于高、低轉(zhuǎn)速的測量,測量精確度與轉(zhuǎn)速無關,因而具有較寬的應用范圍和廣闊的應用的前景?;趩纹瑱C的轉(zhuǎn)速測量系統(tǒng),具有硬件電路簡單,程序簡單和運算速度快,測速范圍廣,抗干擾性能好的特點。在設計的信號處理電路中經(jīng)過濾波,能夠進一步減少誤差,是測速精度得到提高

87、。</p><p>  可以再加入其他檢測模塊如檢測電機溫度、扭矩等,精度方面也可以再提高一點。</p><p><b>  參考文獻</b></p><p>  1、陳伯時.電力拖動自動控制系統(tǒng)-運動控制系統(tǒng).機械工業(yè)出版社,2003</p><p>  2、馬全權,李慶輝,強盛.一種高精度實時電機轉(zhuǎn)速測量新方法,齊齊

88、哈爾大學學報.2002</p><p>  3、孫桂榮,班瑩,劉鳴.電機轉(zhuǎn)速測量設計實驗. 實驗室科學,2005</p><p>  4、王雪文.張志勇.傳感器原理及應用.北京航空航天大學出版社.2004</p><p>  5、王秀杰,張疇先.模擬集成電路應用.西北工業(yè)大學出版社,2003</p><p>  6、何立民.MCS-51 系列

89、單片機應用系統(tǒng)設計.北京:北京航空航天大學出版社,1990</p><p>  7、蔣智勇. 單片微型計算機原理及接口技術.沈陽:遼寧科學技術出版設,1992</p><p>  8、何立民.MCS-51 系列單片機應用系統(tǒng)設計.北京:北京航空航天大學出版社,1990</p><p>  9、穆蘭.單片微型計算機原理及接口技術.北京:機械工業(yè)出版社,1995<

90、/p><p>  10、張毅剛.MCS-51 單片機應用設計.哈爾濱:哈爾濱工業(yè)大學出版社,1990</p><p>  11、蔣智勇. 單片微型計算機原理及接口技術.沈陽:遼寧科學技術出版設,1992</p><p><b>  附錄</b></p><p>  /*系統(tǒng)軟件源程序*/</p><p&g

91、t;  #include<reg52.h> //包含單片機寄存器的頭文件</p><p>  #include<stdlib.h> //包含隨機函數(shù)rand()的定義文件</p><p>  #include<intrins.h> //包含_nop_()函數(shù)定義的頭文件</p><p>  sbit RS=P2^0;

92、 //寄存器選擇位,將RS位定義為P2.0引腳</p><p>  sbit RW=P2^1; //讀寫選擇位,將RW位定義為P2.1引腳</p><p>  sbit E=P2^2; //使能信號位,將E位定義為P2.2引腳</p><p>  sbit BF=P0^7; //忙碌標志位,,將BF位定義為P0.7引腳</p>

93、<p>  sbit b_pul=P3^2; //編碼器脈沖</p><p>  sbit b_dir=P1^2; //編碼器方向</p><p>  float counter = 0.0,shudu=0.0,shuju1=0.0,shuju2=0.0; //編碼器脈沖計數(shù) </p><p>  unsigned char n,shi

94、ft;</p><p>  unsigned char code digit[ ]={"0123456789"}; //定義字符數(shù)組顯示數(shù)字</p><p>  unsigned char code string2[ ]={"ZS"}; //定義字符數(shù)組顯示提示信息</p><p>  unsigned char code s

95、tring1[ ]={"QS"}; //定義字符數(shù)組顯示提示信息</p><p>  unsigned char count; //定義變量統(tǒng)計中斷累計次數(shù)</p><p>  long s,m,zuikuai;</p><p>  /*****************************************************&

96、lt;/p><p>  函數(shù)功能:延時1ms</p><p>  (3j+2)*i=(3×33+2)×10=1010(微秒),可以認為是1毫秒</p><p>  ***************************************************/</p><p>  void delay1ms()<

97、/p><p><b>  {</b></p><p>  unsigned char i,j;</p><p>  for(i=0;i<10;i++)</p><p>  for(j=0;j<33;j++)</p><p><b>  ; </b></p&

98、gt;<p><b>  }</b></p><p>  /*****************************************************</p><p>  函數(shù)功能:延時若干毫秒</p><p><b>  入口參數(shù):n</b></p><p>  **

99、*************************************************/</p><p>  void delay(unsigned char ms)</p><p><b>  {</b></p><p>  unsigned char i;</p><p>  for(i=0;i<m

100、s;i++)</p><p>  delay1ms();</p><p><b>  }</b></p><p>  /*****************************************************</p><p>  函數(shù)功能:判斷液晶模塊的忙碌狀態(tài)</p><p>

101、  返回值:result。result=1,忙碌;result=0,不忙</p><p>  ***************************************************/</p><p>  unsigned char BusyTest(void)</p><p><b>  {</b></p><

102、;p>  bit result;</p><p>  RS=0; //根據(jù)規(guī)定,RS為低電平,RW為高電平時,可以讀狀態(tài)</p><p><b>  RW=1;</b></p><p>  E=1; //E=1,才允許讀寫</p><p>  _nop_(); //空操作</p&

103、gt;<p><b>  _nop_();</b></p><p><b>  _nop_(); </b></p><p>  _nop_(); //空操作四個機器周期,給硬件反應時間</p><p>  result=BF; //將忙碌標志電平賦給result</p><p>

104、;  E=0; //將E恢復低電平</p><p>  return result;</p><p><b>  }</b></p><p>  /*****************************************************</p><p>  函數(shù)功能:將模式設置指令或顯示

105、地址寫入液晶模塊</p><p>  入口參數(shù):dictate</p><p>  ***************************************************/</p><p>  void WriteInstruction (unsigned char dictate)</p><p><b>  {

106、 </b></p><p>  while(BusyTest()==1); //如果忙就等待</p><p>  RS=0; //根據(jù)規(guī)定,RS和R/W同時為低電平時,可以寫入指令</p><p><b>  RW=0; </b></p><p>  E=0;

107、 //E置低電平(根據(jù)表8-6,寫指令時,E為高脈沖,</p><p>  // 就是讓E從0到1發(fā)生正跳變,所以應先置"0"</p><p><b>  _nop_();</b></p><p>  _nop_(); //空操作兩個機器周期,給硬件反應時間</p>

108、;<p>  P0=dictate; //將數(shù)據(jù)送入P0口,即寫入指令或地址</p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p>&l

109、t;p>  _nop_(); //空操作四個機器周期,給硬件反應時間</p><p>  E=1; //E置高電平</p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><

110、p><b>  _nop_();</b></p><p>  _nop_(); //空操作四個機器周期,給硬件反應時間</p><p>  E=0; //當E由高電平跳變成低電平時,液晶模塊開始執(zhí)行命令</p><p><b>  }</b></p&

111、gt;<p>  /*****************************************************</p><p>  函數(shù)功能:指定字符顯示的實際地址</p><p><b>  入口參數(shù):x</b></p><p>  ****************************************

112、***********/</p><p>  void WriteAddress(unsigned char x)</p><p><b>  {</b></p><p>  WriteInstruction(x|0x80); //顯示位置的確定方法規(guī)定為"80H+地址碼x"</p><p><

113、b>  }</b></p><p>  /*****************************************************</p><p>  函數(shù)功能:將數(shù)據(jù)(字符的標準ASCII碼)寫入液晶模塊</p><p>  入口參數(shù):y(為字符常量)</p><p>  ****************

114、***********************************/</p><p>  void WriteData(unsigned char y)</p><p><b>  {</b></p><p>  while(BusyTest()==1); </p><p>  RS=1; //

115、RS為高電平,RW為低電平時,可以寫入數(shù)據(jù)</p><p><b>  RW=0;</b></p><p>  E=0; //E置低電平(根據(jù)表8-6,寫指令時,E為高脈沖,</p><p>  // 就是讓E從0到1發(fā)生正跳變,所以應先置"0"</p><p>  P0=y;

116、 //將數(shù)據(jù)送入P0口,即將數(shù)據(jù)寫入液晶模塊</p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><p>  _nop_(); /

117、/空操作四個機器周期,給硬件反應時間</p><p>  E=1; //E置高電平</p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p><p><b>  _nop_();</b></p&g

118、t;<p>  _nop_(); //空操作四個機器周期,給硬件反應時間</p><p>  E=0; //當E由高電平跳變成低電平時,液晶模塊開始執(zhí)行命令</p><p><b>  }</b></p><p>  /**************************************

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論