波形發(fā)生器畢業(yè)論文_第1頁
已閱讀1頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  0 引言</b></p><p>  波形隨著電子測量及其他部門對各類信號發(fā)生器的廣泛需求及電子技術的迅速發(fā)展,促使信號發(fā)生器種類增多,性能提高。尤其隨著70年代微處理器的出現(xiàn),更促使信號發(fā)生器向著自動化、智能化方向發(fā)展。現(xiàn)在,許多信號發(fā)生器帶有微處理器,因而具備了自校、自檢、自和智能化方向發(fā)展。但市面上能看到的儀器在頻率精度、帶寬、波形種類及程控方面都已不能滿

2、足許多方面實際應用的需求。加之各類功能的半導體集成芯片的快動故障診斷和自動波形形成和修正等功能,可以和控制計算機及其他測量儀器一起方便的構成自動測試系統(tǒng)。在科學研究和生產實踐中,如工業(yè)過程控制,生物醫(yī)學,地震模擬機械振動等領域常常要用到低頻信號源。而由硬件電路構成的低頻信號其性能難以令人滿意,而且由于低頻信號源所需的RC很大;大電阻,大電容在制作上有困難,參數的精度亦難以保證;體積大,漏電,損耗顯著更是致命的弱點。一旦工作需求功能有增加

3、,則電路復雜程度會大大增加。隨著集成電路的迅速發(fā)展,用集成電路可很方便地構成各種信號波形發(fā)生器。用集成電路實現(xiàn)的信號波形發(fā)生器與其它信號波形發(fā)生器相比,其波形質量、幅度和頻率穩(wěn)定性等性能指標,都有了很大的提高。</p><p>  當前信號發(fā)生器總的趨勢是向著寬頻率覆蓋、低功耗、高頻率精度、多功能、自動化速生產,都使我們研制一種低功耗、寬頻帶,能產生多種波形并具有程控等低頻的信號發(fā)生器成為可能。</p>

4、;<p>  在 70 年代前,信號發(fā)生器主要有兩類:正弦波和脈沖波,而函數發(fā)生器介于兩類之間,能夠提供正弦波、余弦波、方波、三角波、上弦波等幾種常用標準波形,產生其它波形時,需要采用較復雜的電路和機電結合的方法。這個時期的波形發(fā)生器多采用模擬電子技術,而且模擬器件構成的電路存在著尺寸大、價格貴、功耗大等缺點,并且要產生較為復雜的信號波形,則電路結構非常復雜。同時,主要表現(xiàn)為兩個突出問題,一是通過電位器的調節(jié)來實現(xiàn)輸出頻率

5、的調節(jié),因此很難將頻率調到某一固定值;二是脈沖的占空比不可調節(jié)。在 70 年代后,微處理器的出現(xiàn),可以利用處理器、A/D/和 D/A,硬件和軟件使波形發(fā)生器的功能擴大,產生更加復雜的波形。這時期的波形發(fā)生器多以軟件為主,實質是采用微處理器對 DAC的程序控制,就可以得到各種簡單的波形。 90 年代末,出現(xiàn)幾種真正高性能、高價格的函數發(fā)生器、但是HP公司推出了型號為 HP770S的信號模擬裝置系統(tǒng),它由 HP8770A任意波形數字化和 H

6、P1776A波形發(fā)生軟件組成。HP8770A實際上也只能產生8 種波形,而且價格昂貴。不久以后,Analogic公司推出了型號為 Data-2020</p><p>  早在 1978 年,由美國 Wavetek 公司和日本東亞電波工業(yè)公司公布了最高取樣頻率為 5MHz ,可以形成 256 點(存儲長度)波形數據,垂直分辨率為8bit,主要用于振動、醫(yī)療、材料等領域的第一代高性能信號源,經過將近30年的發(fā)展,伴隨

7、著電子元器件、電路、及生產設備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡單而輸出波形的能力越來越強。波形操作方法的好壞,是由波形發(fā)生器控制軟件質量保證的,編輯功能增加的越多,波形形成的操作性越好。 </p><p>  以下給出了幾種波形發(fā)生器的性能指標,從中可以看出當今世界上重要電子儀器生產商在波形發(fā)生器上的研制水平。Tektronix公司的AWG710型,主要技術指標: 通道數:2,

8、 每通道的最高采樣速率:4GMS/s ,垂直分辨力:8比特,儲存容量:8M;橫河電機公司的AG5100型,通道數:2, 每通道的最高采樣速率: 1GMS/s ,垂直分辨力:8比特,儲存容量:8M;普源公司的DG3121型,通道數: 2, 每通道的最高采樣速率:300MS/s ,垂直分辨力:14比特,儲存容量:1M。從中不難看出,經過將近30年的發(fā)展,伴隨著電子元器件、電路、及生產設備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變

9、得操作越來越簡單而輸出波形的能力越來越強。就目前國內的成熟產品來看,我國目前在波形發(fā)生器的種類和性能差距正在逐漸地縮小。</p><p>  1設計要求及方案論證</p><p>  依據應用場合,需要實現(xiàn)的波形種類,波形發(fā)生器的具體指標要求會有所不同。依據不同的設計要求選取不同的設計方案,通常,波形發(fā)生器需要實現(xiàn)的波形有正弦波、方波、三角波和鋸齒波。有些場合可能還需要任意波形的產生。各種

10、波形共有的指標有:波形的頻率、幅度要求,頻率穩(wěn)定度,準確度等。對于不同波形,具體的指標要求也會有所差異,例如,占空比是脈沖波形特有的指標。波形發(fā)生器的設計方案多種多樣,大致可以分為三大類:純硬件設計法、純軟件設計法和軟硬件結合設計法。</p><p><b>  1.1設計要求</b></p><p>  設計制作一個波形發(fā)生器,該波形發(fā)生器能產生正弦波、方波、三角波

11、和由用戶編輯的特定形狀波形。要求如下所示</p><p> ?。?)具有產生正弦波、方波、三角波三種周期性波形的功能。(2)用鍵盤輸入編輯生成上述三種波形(同周期)的線性組合波形,以及由基波及其諧波(5次以下)線性組合的波形。(3)具有波形存儲功能。(4)輸出波形的頻率范圍為100Hz~20kHz(非正弦波頻率按10次諧波計算);重復頻率可調,頻率步進間隔≤100Hz。(5)輸出波形幅度范圍0~5V(峰-

12、峰值),可按步進0.1V(峰-峰值)調整。(6)具有顯示輸出波形的類型、重復頻率(周期)和幅度的功能。</p><p><b>  1.2 方案論證</b></p><p>  方案一:波形發(fā)生器設計的純硬件法早期,波形發(fā)生器的設計主要是采用運算放大器加分立元件來實現(xiàn)。實現(xiàn)的波形比較單一,主要為正弦波、方波和三角波。工作原理嗍也相對簡單:首先是產生正弦波,然后通過波

13、形變換(正弦波通過比較器產生方波,方波經過積分器變?yōu)槿遣?實現(xiàn)方波和三角波。在各種波形后加上一級放大電路,可以使輸出波形的幅度達到要求,通過開關電路實現(xiàn)不同輸出波形的切換,改變電路的具體參數可以實現(xiàn)頻率、幅度和占空比的改變。通過對電路結構的優(yōu)化及所用元器件的嚴格選取可以提高電路的頻率穩(wěn)定性和準確度。純硬件法中,正弦波的設計是基礎,實現(xiàn)方法也比較多,電路形式一般有LC、RC和石英晶體振蕩器三類。LC振蕩器適宜于產生幾Hz至幾百MHz的高

14、頻信號;石英晶體振蕩器能產生幾百kHz至幾十MHz的高頻信號且穩(wěn)定度高;對于頻率低于幾MHz,特別是在幾百Hz時,常采用RC振蕩電路。RC振蕩電路又分為文氏橋振蕩電路、雙T網絡式和移相式振蕩電路等類型。其中,以文氏橋振蕩電路最為常用。目前,實現(xiàn)波形發(fā)生器最簡單的方法是采用單片集成的函數信號發(fā)生器。它是將產生各種波形的功能電路集成優(yōu)化到一個集成電路芯片里,外加少量的電阻</p><p><b>  圖1方

15、案一基本框圖</b></p><p>  方案二:波形發(fā)生器設計的純軟件法 波形發(fā)生器的設計還可以采用純軟件的方法來實現(xiàn)。虛擬儀器鞠使傳統(tǒng)儀器發(fā)生了革命性的變化,是21世紀測試儀器領域技術發(fā)展的重要方向。它以計算機為基礎,軟件為核心,沒有傳統(tǒng)儀器那樣具體的物理結構.在計算機上實現(xiàn)儀器的虛擬面板,通過軟件設計實現(xiàn)和改變儀器的功能。例如用圖形化編程工具LabVIEW來實現(xiàn)任意波形發(fā)生器的功能:在LabVI

16、EW軟件的前面板通過拖放控件,設計儀器的功能面板(如波形顯示窗口,波形選擇按鍵,波形存儲回放等工作界面),在軟件的后面板直接拖放相應的波形函數并進行參數設置或直接調用編程函數來設計任意波形以實現(xiàn)波形產生功能;完成的軟件打包后,可脫離編程環(huán)境獨立運行。實現(xiàn)任意波形發(fā)生器的功能。采用純軟件的虛擬儀器設計思路可以使設計簡單、高效,僅改變軟件程序就可以輕松實現(xiàn)波形功能的改變或升級。從長遠角度來看,純軟件法成本較低。軟件法的缺點是波形的響應速度和

17、精度遜色于硬件法,方案二基本框圖如圖2所示。</p><p><b>  圖2方案二基本框圖</b></p><p>  方案三:軟硬件結合法軟硬件結合的波形發(fā)生器設計方法同時兼具軟硬件設計的優(yōu)勢:既具有純硬件設計的快速、高性能,同時又具有軟件控制的靈活性、智能性。如以單片機和單片集成函數發(fā)生器為核心。輔以鍵盤控制、液晶顯示等電路,設計出智能型函數波形發(fā)生器,采用軟硬

18、件結合的方法可以實現(xiàn)功能較全、性能更優(yōu)的波形發(fā)生器,同時還可以擴展波形發(fā)生器的功能,比如通過軟件編程控制實現(xiàn)波形的存儲、運算、打印等功能,采用USB接口設計,使波形發(fā)生器具有遠程通信功能等。目前,實驗、科研和工業(yè)生產中使用的信號源大多采用此方法來實現(xiàn)。</p><p>  綜合考慮,純硬件設計法功能較單一,波形改變困難、控制的靈活性不夠,不具備智能性,其中由運算放大器加分立元件組成的波形發(fā)生器,除在學生實驗訓練中

19、使用外,基本不被采用。純軟件設計法實現(xiàn)簡單,程序改變及功能升級靈活,但實現(xiàn)的波形精度及響應速度不如硬件法高。純軟件法主要適用于對波形精度、響應速度要求不是很高的場合。相比之下,軟硬件結合的方法可以設計出性能最優(yōu)、功能擴展靈活、控制智能化的新一代的波形發(fā)生器,可以滿足教學、科研、工業(yè)生產等各方面對波形發(fā)生器性能有較高要求的應用場合。本設計采用方案三的方法—軟硬件設計法,其方案能夠產生很好的波形,也易實現(xiàn)。本次設計所研究的就是對所需要的幾種

20、波形輸出對應的數字信號,在通過D/A轉換器和單片機部分的轉換輸出一組連續(xù)變化的0~5V的電壓脈沖值。在通過顯示部分顯示其頻率和波形。在設計時分塊來做,按照波形設定,D/A轉換,51單片機連接,鍵盤控制和顯示五個模塊的設計。最后通過聯(lián)調仿真,做出電路板成品,系統(tǒng)結構框圖如圖3所示。</p><p><b>  圖3系統(tǒng)結構框圖</b></p><p><b>

21、  模塊介紹:</b></p><p>  1波形設定:對任意波形的手動設定。</p><p>  2 D/A轉換:主要選用DAC0832來把數字信號轉換為模擬信號,在送入單片機進行處理。</p><p>  3電流電壓轉換:LM324運放。</p><p>  4單片機部分:最小系統(tǒng)。</p><p> 

22、 5鍵盤:用按鍵來控制輸出波形的種類和數值的輸入。</p><p>  6顯示部分:采用液晶顯示波形的頻率和波形類別。</p><p><b>  2 系統(tǒng)硬件設計</b></p><p>  波形的產生是通過AT89C52單片機執(zhí)行某一波形發(fā)生程序,向D/A轉換器的輸入端按一定的規(guī)律發(fā)生數據,從而在D/A轉換電路的輸出端得到相應的電壓波形。A

23、T89C52單片機和數模轉換器件DAC0832產生所需不同信號的低頻信號源,其信號幅度和頻率都是可以按要求控制的。文中簡要介紹了DAC0832數模轉換器的結構原理和使用方法,AT89C52的基礎理論,以及與設計電路有關的各種芯片應用。</p><p>  2.1 單片機AT89C52及接口設計</p><p>  AT89C52是一種低功耗、高性能CMOS 8位微控制器,具有8K在系統(tǒng)可編

24、程Flash 存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89C52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89C52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時器,兩個數據指針,三個16 位定時器/

25、計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,AT89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工作[17]。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。</p><p>  AT89C52具有如下特點:40個引腳,8k Bytes Flash

26、片內程序存儲器,256 bytes的隨機存取數據存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數器,2個全雙工串行通信口,看門狗(WDT)電路,片內時鐘振蕩器,其功能引腳圖如圖4所示。</p><p><b>  圖4 單片機引腳</b></p><p>  單片機AT89C52的接口及引腳功能</

27、p><p> ?。?):接+5V電源。 </p><p><b> ?。?):接電源地。</b></p><p>  (3)P0 口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數據存儲器時,P0口也被作為低8位地址/數據復用。在這種模式下,P0具有內

28、部上拉電阻。在 flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。</p><p>  (4)P1 口:P1 口是一個具有內部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅動4 個TTL 邏輯電平。對P1 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。</p&

29、gt;<p>  此外,P1.0和P1.2分別作定時器/計數器2的外部計數輸入(P1.0/T2)和時器/計數器2的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。在flash編程和校驗時,P1口接收低8位地址字節(jié),P1口引腳及其功能如表1所示。</p><p>  表1 P1口引腳及其功能</p><p> ?。?)P2 口:P2 口是一個具有內部上拉電阻的8 位雙向I/O

30、口,P2 輸出緩沖器能驅動4 個TTL 邏輯電平。對P2 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數據存儲器(例如執(zhí)行MOVX @DPTR)時,P2 口送出高八位地址。在這種應用中,P2 口使用很強的內部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問外部數據存儲器時,P2口輸出P2鎖存器的內容

31、。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。</p><p> ?。?)P3 口:P3 口是一個具有內部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅動4 個TTL 邏輯電平。對P3 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。在flash編程和校驗時,P3口也接收一些控制信號,P3口亦作

32、為AT89C52特殊功能(第二功能)使用,P3口引腳及其功能如下表2所示。</p><p>  表2 P3口引腳及其功能</p><p> ?。?)RST: 復位輸入。晶振工作時,RST腳持續(xù)2 個機器周期高電平將使單片機復位。看門狗計時完成后,RST 腳輸出96 個晶振周期的高電平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無效。DISRTO默認狀態(tài)下,復位高電平有效

33、。</p><p>  (8)ALE/:地址鎖存控制信號(ALE)是訪問外部程序存儲器時,鎖存低8 位地址的輸出脈沖。在flash編程時,此引腳()也用作編程輸入脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強調,在每次訪問外部數據存儲器時,ALE脈沖將會跳過。如果需要,通過將地址為8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,ALE

34、僅在執(zhí)行MOVX 或MOVC指令時有效。否則,ALE 將被微弱拉高。這個ALE 使能標志位(地址為8EH的SFR的第0位)的設置對微控制器處于外部執(zhí)行模式下無效。</p><p> ?。?):外部程序存儲器選通信號()是外部程序存儲器選通信號。</p><p>  當 AT89C52從外部程序存儲器執(zhí)行外部代碼時,在每個機器周期被激活兩次,而在訪問外部數據存儲器時,PSEN將不被激活。&l

35、t;/p><p> ?。?0)/VPP:訪問外部程序存儲器控制信號。為使能從0000H 到FFFFH的外部程序存儲器讀取指令,必須接GND。為了執(zhí)行內部程序指令,EA應該接VCC。</p><p>  在flash編程期間,A也接收12伏VPP電壓。</p><p>  (11)XTAL1:振蕩器反相放大器和內部時鐘發(fā)生電路的輸入端。</p><p&

36、gt; ?。?2)XTAL2:振蕩器反相放大器的輸出端。</p><p>  AT89C52是片內有ROM/EPROM的單片機,因此,這種芯片構成的最小系統(tǒng)簡單﹑可靠,最小系統(tǒng)如圖5所示。</p><p>  圖5 AT89C52最小系統(tǒng)</p><p>  單片機的時鐘信號用來提供單片機內各種微操作的時間基準,復位操作則使單片機的片內電路初始化,使單片機從一種確定

37、的狀態(tài)開始運行。在引腳XTAL1和XTAL2外接晶體振蕩器或陶瓷諧振蕩器,構成了內部振蕩方式。由于單片機內部有一個高增益反相放大器,當外接晶振后,就構成了自積振蕩,并產生振蕩時鐘脈沖。晶振通常選用6MHZ、12MHZ、或24MHZ。當MCS-5l系列單片機的復位引腳RST(全稱RESET)出現(xiàn)2個機器周期以上的高電平時,根據應用的要求,復位操作通常有兩種基本形式:上電復位和上電或開關復位。上電復位要求接通電源后,自動實現(xiàn)復位操作。上電或

38、開關復位要求電源接通后,單片機自動復位,并且在單片機運行期間,用開關操作也能使單片機復位。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時間的高電平。當單片機已在運行當中時,按下復位鍵K后松開,也能使RST為一段時間的高電平,從而實現(xiàn)上電或開關復位的操作。51單片機的復位是由RESET引腳來控制的,此引腳與高電平相接超過24個振蕩周期后,51單片機即進入芯片內部復位狀態(tài),而且一直在此狀態(tài)下等待,直到RESET引腳轉為低電平后

39、,才檢查EA</p><p>  2.2 D/A轉換電路的設計</p><p>  1 DAC0832芯片:</p><p>  DAC0832是CMOS工藝制造的8位D/A轉換器,屬于8位電流輸出型D/A轉換器,轉換時間為1us,片內帶輸入數字鎖存器。DAC0832與單片機接成數據直接寫入方式,當單片機把一個數據寫入DAC寄存器時,DAC0832的輸出模擬電壓信號

40、隨之對應變化。利用D/A轉換器可以產生各種波形,如方波、三角波、正弦波、鋸齒波等以及它們組合產生的復合波形和不規(guī)則波形。</p><p>  2 DAC0832的主要特性參數如下:</p><p><b>  分辨率為8位;</b></p><p>  電流穩(wěn)定時間1us;</p><p>  可單緩沖、雙緩沖或直接數字

41、輸入;</p><p>  只需在滿量程下調整其線性度;</p><p>  單一電源供電(+5V~+15V);</p><p>  低功耗,200mW。</p><p>  3 DAC0832結構: </p><p>  D0~D7:8位數據輸入線,TTL電平,有效時間應大于90ns(否則鎖存器的數據會出錯);&l

42、t;/p><p>  ILE:數據鎖存允許控制信號輸入線,高電平有效;</p><p>  CS:片選信號輸入線(選通數據鎖存器),低電平有效;</p><p>  WR1:數據鎖存器寫選通輸入線,負脈沖(脈寬應大于500ns)有效。由ILE、CS、WR1的邏輯組合產生LE1,當LE1為高電平時,數據鎖存器狀態(tài)隨輸入數據線變換,LE1的負跳變時將輸入數據鎖存;</

43、p><p>  XFER:數據傳輸控制信號輸入線,低電平有效,負脈沖(脈寬應大于500ns)有效;</p><p>  WR2:DAC寄存器選通輸入線,負脈沖(脈寬應大于500ns)有效。由WR1、XFER的邏輯組合產生LE2,當LE2為高電平時,DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負跳變時將數據鎖存器的內容打入DAC寄存器并開始D/A轉換。</p><p>

44、;  IOUT1:電流輸出端1,其值隨DAC寄存器的內容線性變化;</p><p>  IOUT2:電流輸出端2,其值與IOUT1值之和為一常數;</p><p>  Rfb:反饋信號輸入線,改變Rfb端外接電阻值可調整轉換滿量程精度;</p><p>  Vcc:電源輸入端,Vcc的范圍為+5V~+15V;</p><p>  VREF:基

45、準電壓輸入線,VREF的范圍為-10V~+10V;</p><p>  AGND:模擬信號地</p><p>  DGND:數字信號地。</p><p>  DAC0832簡化電路框圖如圖6所示。</p><p>  圖6 DAC0832簡化電路框圖</p><p>  待轉換的8位數字量由芯片的8位數據輸入線D0~D

46、7輸入,經DAC0832轉換后,通過2個電流輸出端IOUT1和IOUT2輸出,IOUT1是邏輯電平為"1"的各位輸出電流之和,IOUT2是邏輯電平為"0"的各位輸出電流之和。DAC0832由8位輸入寄存器、8位DAC寄存器和8位D/A轉換電路組成。輸入寄存器和DAC寄存器作為雙緩沖,因為在CPU數據線直接接到DAC0832的輸入端時,數據在輸入端保持的時間僅僅是在CPU執(zhí)行輸出指令的瞬間內,輸入寄

47、存器可用于保存此瞬間出現(xiàn)的數據。有時,微機控制系統(tǒng)要求同時輸出多個模擬量參數,此時對應于每一種參數需要一片DAC0832,每片DAC0832的轉換時間相同,就可采用DAC寄存器對CPU分時輸入到輸入寄存器的各參數在同一時刻開始鎖存,進而同時產生各模擬信號。</p><p>  4 DAC0832與AT89C52連接</p><p>  DAC0832的數據輸出方式在微機應用系統(tǒng)中,通常使用

48、的是電壓信號,而DAC0832輸出的是電流信號,這就需要由運算放大器組成的電路實現(xiàn)轉換。其中有輸出電壓各自極性固定的單位性輸出和在隨動系統(tǒng)中輸出電壓有正負極性的雙極性輸出兩種輸出方式。 DAC 0832同CPU的連接,微處理器與DAC0832之間可以不加鎖存器,而是利用DAC0832內部鎖存器,將CPU通過數據總線直接向DAC0832輸出的停留時間很短的數據保存,直至轉換結束。DAC0832同AT89C52的接口如圖7所示。</p

49、><p>  圖7 DAC0832同AT89C52連接電路</p><p><b>  2.3按鍵電路設計</b></p><p><b>  人機交互接口的設計</b></p><p>  所謂人機交互接口,是指人與計算機之間建立聯(lián)系、交互信息的輸入/輸出設備的接口。這些輸入/輸出設備主要有鍵盤、顯示

50、器和打印機等,他們是計算機應用系統(tǒng)中必不可少的輸入、輸出設備,是控制系統(tǒng)與操作人員之間的交互窗口。一個安全可靠的控制系統(tǒng)必須具有方便的交互功能。操作人員可以通過系統(tǒng)顯示的內容,及時掌握生產情況,并可通過鍵盤輸入數據,傳遞命令,對計算機應用系統(tǒng)進行人工干擾,使其隨時能按照操作人員的意圖工作。</p><p>  鍵盤設計需要解決的幾個問題</p><p>  鍵盤是若干按鍵的集合,是向系統(tǒng)提

51、供操作人員干預命令及數據的接口設備。鍵盤可分為編碼鍵盤和非編碼鍵盤兩種類型。編碼鍵盤能自動識別按下的鍵并產生相應代碼,以并行或串行方式發(fā)給CPU。它使用方便,接口簡單,響應速度快,但需要專用的硬件電路。非編碼鍵盤則是通過軟件來確定按鍵并計算鍵值。這種方法雖然沒有編碼鍵盤速度快,但它不需要專用的硬件支持,因此得到了廣泛的應用。鍵盤是計算機應用系統(tǒng)中的一個重要組成部分,設計時必須解決下述一些問題。</p><p> 

52、 按鍵的確認,鍵盤實際上是一組按鍵開關的集合,其中每一個按鍵就是一個開關量輸入裝置。鍵的閉合與否,取決于機械彈性開關的通、斷狀態(tài)。反應在電壓上就是呈現(xiàn)出高電平或低電平,若高電平表示斷開,那么低電平鍵閉合。所以,通過電平狀態(tài)(高或低)的檢測,便可確定相應按鍵是否已被按下。</p><p>  重鍵與連擊的處理, 實際按鍵操作中,若無意中同時或先后按下兩個以上的鍵,系統(tǒng)確定哪個鍵操作是有效的,完全取決設計者的意圖。如

53、視按下時間最長者為有效鍵,或認為最先按下的鍵為當前的按鍵,也可以將最后釋放的鍵看成是輸入鍵。不過單片機控制系統(tǒng)的資源有限,交互能力不強,通??偸遣捎脝捂I按下有效,多鍵同時按下無效的原則。有時,由于操作人員按鍵動作不夠熟練,會使一次按鍵產生多次擊鍵的效果,及重鍵的情形。為消除重鍵的影響,編制程序時可以將鍵的釋放作為按鍵的結束。等鍵釋放電平后再轉去執(zhí)行相應的功能程序,以防止一次擊鍵多次執(zhí)行的錯誤發(fā)生。</p><p>

54、;  按鍵防抖動技術,鍵盤作為向系統(tǒng)提供操作人員的干預命令的接口,以其特定的按鍵代表著各種確定操作命令。所以準確無誤地辨認每個鍵的動作及其所處的狀態(tài),是系統(tǒng)能否正常工作的關鍵。多數鍵盤的按鍵均采用機械彈性開關。一個電信號通過機械觸點的斷開、閉合過程,完成高、低電平的切換。由于機械觸點的彈性作用,一個按鍵開關閉合及斷開的瞬間必然伴隨有一連串的抖動。消除按鍵盤抖動通常有兩種方法:硬件消抖和軟件消抖。通過硬件電路消除按鍵過程中抖動的影響是一種

55、廣為采用的措施。這種做法,工作可靠,且節(jié)省機時。 硬件消抖是通過在按鍵輸出電路上加一定的硬件線路來消除抖動,一般采用R—S觸發(fā)器或單穩(wěn)態(tài)電路。單穩(wěn)態(tài)硬件消抖電路如圖8所示,軟件消抖則是利用延時來跳過抖動過程。</p><p>  圖8 單穩(wěn)態(tài)硬件消抖電路</p><p>  鍵盤的結構形式一般有兩種:獨立式鍵盤與矩陣式鍵盤。獨立式鍵盤就是各按鍵相互獨立,每個按鍵各接一根I/O口線,每根I

56、/O口線上的按鍵都不會影響</p><p>  其它的I/O口線。矩陣式鍵盤又叫行列式鍵盤。用I/O口線組成行、列結構,鍵位設置在行列的交點上。例如4×4的行、列結構可組成16個鍵的鍵盤,比一個鍵位用一根I/O口線的獨立式鍵盤少了一半的I/O口線。對矩陣鍵盤的工作過程可分兩步:第一步是CPU首先檢測鍵盤上是否有鍵按下;第二步是再識別是哪一個鍵按下,獨立式鍵盤如圖9所示。</p><p

57、><b>  圖9 獨立式鍵盤</b></p><p><b>  矩陣鍵盤的工作方式</b></p><p>  查詢工作方式:這種方式是直接在主程序中插入鍵盤檢測子程序,主程序每執(zhí)行一次,則鍵盤檢測子程序就對鍵盤進行檢測一次。如果沒有鍵按下,則跳過鍵識別,直接執(zhí)行其他程序;如果有鍵按下,則通過鍵盤掃描子程序識別按鍵,得到按鍵的編碼值。

58、然后根據編碼值進行相應的處理,處理完后再回到主程序執(zhí)行。</p><p>  中斷工作方式:鍵盤中斷工作方式如圖10所示,就是中斷工作方式,當有中斷的時候,就去執(zhí)行掃描程序,沒有中斷的時候,CPU可以去做其他的事情,這樣可以提高CPU的效率。</p><p>  圖10 鍵盤中斷工作方式</p><p>  在本系統(tǒng)中設置了5個按鍵,波形選在按鍵與P1.0口連接,

59、頻率控制鍵分別P1.1和P1.2口連接,幅值增減控制鍵位分別接P1.3和P1.4口,實現(xiàn)了波形選擇和頻幅控制,系統(tǒng)鍵盤實現(xiàn)設計圖如圖11所示。</p><p>  圖11 系統(tǒng)鍵盤實現(xiàn)設計圖</p><p><b>  2.4顯示模塊設計</b></p><p>  液晶模塊采用的是液晶LCD1602字符型液晶,字符型液晶顯示模塊是一種專門用于

60、顯示字母、數字、符號等點陣式LCD。相對于數碼管,液晶顯示屏顯得更加專業(yè)和直觀,顯示內容更加豐富,在通訊,儀器儀表,電子設備,家用電器等低功耗應用系統(tǒng)中得到廣泛的應用。目前常用16*1,16*2,20*2和40*2行等的模塊。1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應用中并無差別,液晶模塊如圖12所示。</p><p><b>  圖1

61、2 液晶模塊圖</b></p><p><b>  引腳功能說明</b></p><p>  1602LCD采用標準的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如下所示:</p><p>  第1腳:VSS為地電源。</p><p>  第2腳:VDD接5V正電源。</p><

62、p>  第3腳:VL為液晶顯示器對比度調整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產生“鬼影”,使用時可以通過一個10K的電位器調整對比度。</p><p>  第4腳:RS為寄存器選擇,高電平時選擇數據寄存器、低電平時選擇指令寄存器。</p><p>  第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為低電平時可以寫入指令或

63、者顯示地址,當RS為低電平R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數據。</p><p>  第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。</p><p>  第7~14腳:D0~D7為8位雙向數據線。</p><p>  第15腳:背光源正極。</p><p>  第16腳:背光源負極。

64、</p><p>  LCD1602液晶顯示模塊直接與單片機AT89C52相連接,1腳接地,2腳接電源,4~6腳分別與P1.5~P1.7口連接,7~14腳D0~D7分別和51單片機P0.1~P0.7口連接,LCD1602與AT89C52連接圖如圖13所示。 </p><p>  圖13 LCD1602與AT89C52連接圖</p><p>  2.5 LM324簡介

65、</p><p>  LM324是四運放集成電路,它采用14腳雙列直插塑料封裝,外形如圖所示。它的內部包含四組形式完全相同的運算放大器,除電源共用外,四組運放相互獨立。每一組運算放大器可用圖1所示的符號來表示,它有5個引出腳,其中“+”、“-”為兩個信號輸入端,“V+”、“V-”為正、負電源端,“Vo”為輸出端。兩個信號輸入端中,Vi-(-)為反相輸入端,表示運放輸出端Vo的信號與該輸入端的相位相反;Vi+(+)

66、為同相輸入端,表示運放輸出端Vo的信號與該輸入端的相位相同。由于LM324四運放電路具有電源電壓范圍寬,靜態(tài)功耗小,可單電源使用,價格低廉等優(yōu)點,因此被廣泛應用在各種電路中,LM324管腳功能如圖14所示。</p><p>  圖14 LM324各對應管腳</p><p>  若D/A轉換器輸出為雙極性,如圖15所示。</p><p>  圖15 D/A轉換器雙極

67、性輸出電路</p><p>  圖15中,運算放大器A2的作用是把運算放大器A1的單向輸出電壓轉換成雙向輸出電壓。其原理是將A2的輸入端Σ通過電阻R1與參考電壓VREF相連,VREF經R1向A2提供一個偏流I1,其電流方向與I2相反,因此運算放大器A2的輸入電流為I1、I2之代數和。則D/A轉換器的總輸出電壓為:</p><p><b>  (1)</b></p

68、><p><b> ?。?) </b></p><p>  為DAC0832提供的參考電壓,輸入的波形數據。由上兩式可得:</p><p><b>  (3)</b></p><p>  取,當時,;時,;時,。由上述分析可看出,取不同數據時(0~255),可得對稱的雙極性波形輸出。再取,則式(1)

69、可表示為: </p><p>  由上式可知,輸出信號的幅度受的改變而改變。</p><p>  DAC0832為電流輸出型轉換器,一般要求輸出是電壓,所以還必須經過一個外接的運算放大器轉換成電壓。</p><p>  如圖16所示為一種用兩級運算放大器組成的模擬電壓

70、輸出電路,從第一個運放輸出為單極性模擬電壓,從第二個運放輸出為雙極性模擬電壓。如果參考電壓為+5V,則點a輸出電壓為0~-5V,點b輸出電壓為±5V。 </p><p>  圖16 I/V轉換波形發(fā)生電路</p><p><b>  3系統(tǒng)軟件設計</b></p><p>  系統(tǒng)軟件由主程序和產生波形的子程序組成,軟件設計主要是產生

71、各種波形的子程序的編程,通過編程可得到各種波形。周期的改變可采用插入延時子程序的方法來實現(xiàn),主程序和幾種常用波形子程序的流程圖如下圖所示。</p><p>  3.1 主程序流程圖</p><p>  圖17 主程序流程圖</p><p><b>  信號的產生:</b></p><p>  利用8位D/A轉換器DAC

72、0832,可以將8位數字量轉換成模擬量輸出。數字量輸入的范圍為0~255,對應的模擬量輸出的范圍在VREF-到VREF+之間。根據這一特性,可以利用單片機的并行口輸出的數字量,產生常用的波形。例如,要產生幅度為0~5V的三角波,只要將DAC0832的VREF-接地,VREF+接+5V,單片機的并行口首先輸出00H,再輸出01H、02H,直到輸出FFH,再輸出00H,依此循環(huán),這樣在圖16所示的Vout端就可以看到在0到5V之間變化的三角

73、波。</p><p>  3.2鍵位掃描子程序設計</p><p>  鍵位掃描子程序的任務是檢查4個按鍵是否有鍵按下,若有鍵按下,則執(zhí)行相應的功能。在這里,4個按鍵分別用于頻率增減、波形選擇和波形復位功能。其流程圖如圖18所示。</p><p>  圖18鍵盤掃描流程圖</p><p>  波形數據產生子程序流程圖</p>&

74、lt;p>  波形數據產生的子程序是定時器T1的中斷程序,當定時器溢出時,發(fā)生一次中斷。當發(fā)生中斷時,單片機將按波形數據表中的波形數據一一送入DAC0832,DAC0832再根據輸入的輸入數據大小輸出對應的電壓,

75、

76、 </p><p>  圖19波形數據產生子程序流程圖</p><p>  3.3 正弦波程序設計</p><p>  正弦波波形設計通過查表指令得出,DAC0832是8位的D/A轉換器件,其工作電壓是0—5V,當輸入00數字量的

77、時候,輸出為0V電壓;當輸入80數字量的時候,輸出為2.5V電壓;當輸入FF數字量的時候,輸出為5V電壓。單片機的I/O輸出均為+5 V的TTL電平,因此產生的正弦波幅值為+2.5 V。將一個周期內的正弦波形等分為256份,那么第一點的角度為0°,對應的正弦值為2.5sin0°;第二點的角度為360°/256,對應的正弦值為2.5sin (360°/256 ) ……,如此計算下去,將這些模擬量正弦

78、值都轉換為單極性方式下的數字量,得到一張按照點號順序排列的正弦波波形數據表如表3所示。</p><p>  其實在計算正弦波形數據的時候,并不需要算出整個0—2π區(qū)間的每一個值,而只需計算出四分之一周期中的值就行,其他區(qū)間的值都可以通過對四分之一周期中的值取不同的變換得到。</p><p>  表3 正弦波形數據表</p><p>  正弦波程序設計如下:<

79、/p><p>  #include<math.h></p><p><b>  main()</b></p><p><b>  {</b></p><p>  int n,i=0,j,k;</p><p>  float y=0, a=3.1415926,b=0,c

80、=2.5000,d=0;</p><p>  for(n=0;n<=64;n++)</p><p><b>  {</b></p><p>  y=2.5*sin(a*n/128)+2.5;</p><p>  b=y; //b,y為當前幅度值</p><p>  d=b-c;

81、 //d為遞增率</p><p>  j=d/0.0196; //j為數字遞增率,0.0196為δ</p><p>  k=128+j; //k為數字量</p><p>  printf(“%d,%f,%f,%d,%d\n”,i,y,d,j,k); </p><p><b>  i++;</b></

82、p><p><b>  }</b></p><p><b>  }</b></p><p>  3.4 三角波程序設計</p><p>  三角波產生是通過P0口將00H送入寄存器A中,DAC0832輸出A中的內容,通過A中數值的加1遞升,同時延時,當A中的內容為0FF時,A中的內容減1遞減,從而循環(huán)產

83、生三角波。</p><p>  else if( wave_choice == 2 ) //三角波</p><p><b>  {</b></p><p>  if(c <= 128)</p><p><b>  {</b></p><p>

84、;<b>  P0 = c;</b></p><p><b>  }</b></p><p><b>  else </b></p><p><b>  {</b></p><p>  P0 = 255 - c;</p><p>&

85、lt;b>  }</b></p><p><b>  c ++;</b></p><p><b>  }</b></p><p>  3.5 方波程序設計</p><p>  方波產生是通過P0口將00H輸出給DAC0832,輸出對應模擬量,然后讀取P2口的狀態(tài),取反后作為延時常量

86、,延時時間到,將FFH輸出時,同樣輸出對應模擬量,再延時,從而得到方波。</p><p>  else if( wave_choice == 3 ) // 方波</p><p><b>  {</b></p><p>  k = zk * 256 / 100;</p><p><b&g

87、t;  d ++;</b></p><p>  if(d <= k)</p><p><b>  {</b></p><p>  P0 = 0x00;</p><p><b>  }</b></p><p><b>  else </b>

88、;</p><p>  P0 = 0xff;</p><p><b>  }</b></p><p>  3.6鋸齒波程序設計</p><p>  鋸齒波中的斜線用一個個小臺階來逼近,在一個周期內從最小值開始逐步遞增,當達到最大值后又回到最小值,如此循環(huán),當臺階間隔很小時,波形基本上近似于直線。適當選擇循環(huán)的時間,可以得

89、到不同周期的鋸齒波。鋸齒波發(fā)生原理與方波類似,只是高低兩個延時的常數不同,所以用延時法,來產生鋸齒波。</p><p>  else if(wave_choice == 4) //鋸齒波</p><p><b>  {</b></p><p>  if(e <= 255)</p><p>&l

90、t;b>  {</b></p><p>  P0 = 255 - e;</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  

91、P0=0;</b></p><p><b>  }</b></p><p><b>  e++;</b></p><p><b>  }</b></p><p>  4 信號發(fā)生器的調試</p><p><b>  4.1調試步驟&

92、lt;/b></p><p>  4.1.1調試儀器和軟件</p><p>  調試儀器和軟件:穩(wěn)壓電源、示波器、數字萬用表、Proteus軟件、Kiel c51。</p><p>  4.1.2電路圖調試過程</p><p>  在PROTUES繪制好原理圖后,調入已編譯好的目標代碼文件:*.HEX,可以在PROTEUS的原理圖中看到

93、模擬的實物運行狀態(tài)和過程。</p><p>  4.1.3程序調試過程</p><p>  首先,輸入源程序事,應以西方文字方式輸入字母和符號,且中文注釋前要加分號。其次,對源程序進行匯編和糾錯,根據匯編提供的錯去信息逐一更改錯誤。最后,把編譯好的程序寫入單片機的FLASH ROM 里,進行下一步調試。</p><p>  通過系統(tǒng)聯(lián)調,在示波器上觀察波形得出系統(tǒng)調

94、試結果,測試數據如表4所示。 </p><p><b>  表4測試數據</b></p><p><b>  4.2調試結果</b></p><p> ?。?)能產生正弦波,方波,三角波,按下波形控制鍵可以控制波形輸出,按下頻率增減控制鍵可以控制各波形頻率增減,增減步進為100Hz,按復位鍵可以恢復到最初波形。</p

95、><p> ?。?)三種波的頻率均可調,頻率范圍:0--20000Hz。</p><p> ?。?)三種波形幅值變化為:0.1—5V。</p><p>  (4)液晶顯示頻率和正弦波,三角波,方波波形類別。</p><p> ?。?)此外還可以產生鋸齒波。</p><p><b>  結束語</b>&

96、lt;/p><p>  此次設計利用單片機控制多功能信號發(fā)生器,結合了硬件和軟件,達到了靈活控制,精度也進一步得到改善。在本次設計的過程中,我的理論知識掌握得更扎實,動手能力明顯提高。同時,我發(fā)現(xiàn)很多的問題,雖然以前還做過這樣的設計但這次設計真的讓我長進了很多。在整個電路的設計過程中,花費時間最多的是各個單元電路的連接及電路的細節(jié)設計上,如在多種方案的選擇中,我仔細比較分析其原理以及可行的原因。其硬件電路是比較簡單的

97、,主要是解決程序設計的問題,而程序設計是一個很靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力,它才是一個設計的靈魂所在。因此在整個設計過程中大部分時間是用在程序上面的。很多子程序是可以借鑒書本上的,但怎樣銜接各個子程序才是關鍵的問題所在,這需要對單片機的結構很熟悉。因此可以說單片機的設計是軟件和硬件的結合,二者是密不可分的。</p><p>  此次設計雖然基本達到設計要求,但還有很多可以改進的地方,如控制頻

98、率和幅值增減方面可以多增加一些控制鍵,以方便大幅值和高頻率的調控,以及解決液晶屏顯示時跳進太慢等問題。</p><p><b>  參考文獻</b></p><p>  [1]沙占友, 王彥朋, 孟志永等. 單片機外圍電路設計[M].北京:電子工業(yè)出版社,2003.</p><p>  [2]胡乾斌,李光斌, 李玲等. 單片微型計算機原理與應用

99、[M].武漢:華中科技大學出版社,2005.</p><p>  [3]康華光主編. 電子技術基礎模擬部分[M]. 第四版. 北京: 高等教育出版社,1999.</p><p>  [4]曹漢房主編. 數字電路與邏輯設計[M]. 第四版. 武漢: 華中科技大學出版社,2004.</p><p>  [5]謝自美主編. 電子線路設計·實驗·測試[M

100、]. 第二版. 武漢: 華中科技大學出版社,2000.</p><p>  [6]梅麗鳳,王艷秋等. 單片機原理及接口技術[M]. 北京:清華大學出版社, 2004.</p><p>  [7]陳明熒. 8051單片機課程設計實例教材[M].北京:清華大學出版社,2007.</p><p>  [8]先鋒工作室. 單片機程序設計實例[M]. 北京: 清華大學出版社,

101、2003.</p><p>  [9]孫肖子等. 電子設計指南[M].北京:高等教育出版社,2005.</p><p>  [10]張毅剛. MCS-51單片機應用設計,哈爾濱工業(yè)大學出版社,2004</p><p>  [11]康華光主編.電子技術基礎 模擬部分[M](第四版).北京:高等教育出版社,1999.</p><p>  [12]

102、何立民.單片機應用技術選編[M].北京:北京航空航天大學出版社,1997</p><p>  [13]孫進生編著.電子產品設計實例教程[M].北京:冶金工業(yè)出版社,2004</p><p>  [14]段九州編著.放大電路實用設計手冊[M].沈陽:遼寧科學技術出版社,2002</p><p>  [15]潘新民,王燕芳編著.微型計算機控制技術[M].北京:電子工業(yè)出

103、版社,2004</p><p>  [16]全國大學生電子設計競賽組委會編.第五屆全國大學生電子設計競賽獲獎作品選編[M].</p><p>  北京:北京理工大學出版社,2003</p><p>  [17]楊寧編著.單片機與控制技術[M].北京:北京航空航天大學出版社,2005</p><p>  [18]ATMEL. Microcont

104、roller Data Book[M].1995</p><p>  [19]www.msclub.ce.cctpu.edu.ru/LITERATU/i386《MDCS 51 Family of Microcontrollers Architectural Overview》[J].</p><p>  [20]Oppenheim A V, Willsky A S, Young I T.

105、Signals and Systems[M]. Englewood Cliffs,NJ:Prentice-Hall,1983</p><p><b>  附錄:</b></p><p><b>  附錄1:源程序</b></p><p>  #include <reg51.h></p><p

106、>  #include <intrins.h></p><p>  #define uint unsigned int</p><p>  #define uchar unsigned char</p><p>  #define dataout P1</p><p>  sbit k1 = P2^4;</p>

107、<p>  sbit k11 = P3^0;</p><p>  sbit k12 = P3^1;</p><p>  sbit k2 = P2^5;</p><p>  sbit k3 = P2^6;</p><p>  sbit rs = P2^0;</p><p>  sbit rw = P2^1;&

108、lt;/p><p>  sbit lcden = P2^2;</p><p>  void delay(int z)</p><p><b>  {</b></p><p><b>  int i,j;</b></p><p>  for(j=z;j>0;j--)</

109、p><p>  for(i=0;i<110;i++);</p><p><b>  }</b></p><p>  void delay_ms(uint ms)</p><p>  {</p><p>  unsigned char i=10;</p><

110、p>  while(ms--)</p><p><b>  {</b></p><p>  while(i--)</p><p><b>  {</b></p><p><b>  _nop_();</b></p><p><b>  }

111、</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void write_com(uchar com) // 寫指令函數</p><p><b>  {</b></p><p><

112、;b>  rs=0;</b></p><p><b>  rw=0;</b></p><p><b>  lcden=1;</b></p><p>  P0=com; //com指令付給P0口</p><p>  delay(1); //</p><p&

113、gt;<b>  lcden=0;</b></p><p>  delay(1); </p><p><b>  }</b></p><p>  void write_date(uchar date) // 寫數據函數</p><p><b>  {</b></p>

114、;<p><b>  rs=1;</b></p><p><b>  rw=0;</b></p><p><b>  lcden=1;</b></p><p><b>  P0=date;</b></p><p><b>  del

溫馨提示

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

評論

0/150

提交評論