




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、引言 幾乎所有的電子設備都需要穩(wěn)定的直流電源,因此直流穩(wěn)壓電源的應用非常的廣泛。 直流穩(wěn)壓電源的電路形式有很多種,有串聯(lián)型、開關型、集成電路、穩(wěn)壓管直流穩(wěn)壓電源等等。在電子設備中,直流穩(wěn)壓電源的故障率是最高的(長期工作在大電流和大電壓下,電子元器件很容易損壞)但在直流穩(wěn)壓電源中,通過整流、濾波電路所獲得的直流電源的電壓往往是不穩(wěn)定的。輸出電壓在電網(wǎng)電壓波動或負載電流變化時也會隨之有所改變。電子設備電源電壓的不穩(wěn)定,將會引起很多問題。設計出質量優(yōu)良的直流穩(wěn)壓電源,才能滿足各種電子線路的要求。因此,直流穩(wěn)壓電源的研究就頗為重要。目前產生直流穩(wěn)壓電源的方法大致分為兩種:一種是模擬方法,另一種是數(shù)字方
2、法。前者的電路均采用模擬電路控制,而后者則是通過數(shù)字電路進行自動控制。直流穩(wěn)壓電源朝著數(shù)字化方向發(fā)展。因此對于數(shù)控恒壓源的研究是必要的。隨著科學技術飛速發(fā)展,對電源可靠性、輸出精度和穩(wěn)定性要求越來越高,利用d/ a 轉換器的高分辨率和單片機的自動檢測技術設計程控電源就顯示出其優(yōu)越性。程控電源既能方便輸入和選擇預設電壓值又具有較高精度和穩(wěn)定性,而且可以任意設定輸出電壓或電流,所有功能由面板上的鍵盤控制單片機實現(xiàn),給電路實驗帶來極大的方便,提高了工作效率。本實驗設計了一個以單片機89c51為基本控制核心的簡易數(shù)控直流電源。.該設計包括直流電源輸入及輸出兩部分,可完成015v之間各不同幅值的電壓的輸
3、出,能夠預置數(shù),能夠自動掃描輸出電壓并直接顯示到led數(shù)碼顯示管上,并可擴展輸出三角波等波型。其中電壓輸出部分,既可手動的每按”+”-”鍵一下進行每0.1v大小的上下調整,也可長按”+”-”鍵使其自動的遞增或者遞減,直到需要的數(shù)值。預置數(shù)時用切換鍵切換預置個位或小數(shù)位,按”+”-”鍵進行微調。單片機編程部分是基于wave6000軟件上設計,并在實物上進行仿真。.該系統(tǒng)具有抗干擾性能好,可靠性高,及最終輸出電壓值與真實顯示值精確度較高等優(yōu)點。關鍵詞: 89c51;直流電壓輸出;直流電壓輸入目 錄第一章 任務設計及要求31.1 設計任務: 設計制作具有一定電壓范圍和功能的數(shù)控電源.31.2 設計要
4、求3第二章 方案比較并確定42.1 設計方案一42.2 設計方案二52.3 兩種方案的比較6第三章 硬件部分原理及設計63.1設計方案一部分73.1.1 單片機73.1.2 數(shù)模轉換73.1.3 放大器83.1.4 電源輸出93.1.5 穩(wěn)壓器93.1.6 按鍵設置113.1.7 數(shù)碼顯示輸出113.2 方案二硬件部分123.2.1 單片機123.2.2 繼電器123.2.3 電阻網(wǎng)絡123.2.4 電源輸出133.2.5 穩(wěn)壓部分133.2.6按鍵設置133.2.7 數(shù)碼顯示13第四章 軟件部分設計144.1 主程序流程圖144.2 預置數(shù)流程圖15第五章 系統(tǒng)調試測試165.1 系統(tǒng)調試1
5、65.2 系統(tǒng)測試175.2.1 系統(tǒng)功能測試175.2.2 系統(tǒng)指標測試17總 結19第一章 任務設計及要求1.1 設計任務: 設計制作具有一定電壓范圍和功能的數(shù)控電源.原理如題目所示。 1.2 設計要求(1) 基本要求: a 輸出電壓:范圍 015v .步進 0.1v紋波不大于10mv b輸出電流: 500ma c 輸出電壓由數(shù)碼顯示 d 用”+”.”-”鍵控制輸出電壓進行增/減調整(2) 發(fā)揮部分a 自動掃描輸出電壓b 擴展輸出三角波等電壓種類c 輸出電壓可預置在015v之間的任意值第二章 方案比較并確定根據(jù)設計要求,擬定2個方案,原理上基本能夠實現(xiàn)要求2.1 設計方案一是以型號89c5
6、1單片機為控制核心進行設計的,通過按鍵進行控制,單片機控制數(shù)模轉換芯片dac0832,其輸出07.5v的電壓,因為要求電壓為015v所以必須再經過放大器放大,并通過三端可調正穩(wěn)壓器進行穩(wěn)壓,輸出一個較穩(wěn)定的直流電壓,并在數(shù)碼管上顯示出來,并時刻刷新調整電壓后的幅值。a.方框圖如下:電源輸入鍵盤數(shù)模轉換單片機顯示放大器穩(wěn)壓器輸出b.原理圖如下:2.2 設計方案二是以單片機89c51為控制核心,外接按鍵進行控制,單片機控制8個繼電器,且每個繼電器串聯(lián)一個一定阻值的電阻,電阻之間的關系為以2為參數(shù)的等比數(shù)列,繼電器之間為并聯(lián)形式。最終電壓幅值可經過一個穩(wěn)壓電路后穩(wěn)定輸出。且最后輸出的電壓值可通過單片
7、機控制在數(shù)碼顯示管上顯示出來,并時刻刷新調整電壓后的幅值。a 方框圖如下電源輸入鍵盤輸入單片機8個繼電器等比電阻網(wǎng)絡穩(wěn)壓器顯示輸出穩(wěn)壓輸出b. 原理圖如下p1 p289c51 p3led顯示電壓輸出鍵盤輸入電阻網(wǎng)絡 繼電器穩(wěn)壓器 外部電源部分2.3 兩種方案的比較方案一的電源電壓切換采用dac控制速度比較快,切換方便,且可以輸出較高頻率的幾種波形,所需器件較少,元器件較常見而且便宜,缺點是放大器的電壓要求比較高,需要015v的輸出,需要多種電源供電。方案二采用繼電器控制為機械式?;驹砗唵危瑢崿F(xiàn)比較方便,電源電壓也可以調整到較精確的數(shù)值,但是它需要較大的工作電流,原器件價格較貴,而且繼電器會
8、產生噪聲污染。比較之后,兩種方案各有優(yōu)缺點,所以可以任意選取一種進行軟硬件組裝。第三章 硬件部分原理及設計3.1設計方案一部分3.1.1 單片機單片機89c51是本設計中的控制核心,是一個40管腳的集成芯片,管腳圖如下。引腳部分:單片機接腳基本電路部分與普通設計無異,40腳接vcc+5v,20腳接地。x1,x2兩腳接12mhz的晶振,可得單片機機器周期為1微秒。rst腳外延一個rst復位鍵,一端接vcc,一端通過10k電阻接地。p0口中,03口分別通過一個pnp型三極管9012的b端,并由e端接人集成led的com14口。47口則分別通過一個按鍵接地,通過軟件編寫實現(xiàn)6個按鍵的各種功能。p1口
9、8個端口連led中a,b,c,d,e,f,g,db腳上。p2口是連到dac0832中的d0d7。3.1.2 數(shù)模轉換1腳cs(反) 2 腳wr1(反) 3腳agnd 4腳d35腳d2 6 腳d1 7腳d0 8腳ref9腳ref 10腳dgnd 11腳iout1 12腳iout213腳d7 14腳d6 15腳d5 16腳d417腳xfer(反)18 腳wr2(反)19腳ile 20腳vccdac0832是一款常用的數(shù)摸轉換器,它有兩種連接模式,一種是電壓輸出模式,另外一種是電流輸出模式,為了設計的方便,選用電壓輸出模式。這個芯片共有20 個管腳,管腳分布圖如下。iout1和iout2之間接一參考
10、電壓,vref輸出可控制電壓信號。它有三種工作方式:不帶緩沖工作方式,單緩沖工作方式,雙緩沖工作方式。該電路采用單緩沖模式,由電路圖可知,由于/xfer=0/cs=0/ ile=1,dac寄存處于工作狀態(tài)。所以只要把/wr1/wr2置低電平時,寫p2口,則該數(shù)字信號立即傳送到輸入寄存器,并直通至dac寄存器,經過短暫的建立時間,即可以獲得相應的模擬電壓,一旦寫入操作結束,/wr1和/wr2立即變?yōu)楦唠娖剑瑒t寫入的數(shù)據(jù)被輸入寄存器鎖存,直到再次寫入刷新。3.1.3 放大器放大器選擇范圍比較大,只要放大器滿足放大值達到015v,放大倍數(shù)25倍,頻率要求不高。但由于實驗室只提供7815,7915最大
11、提供電源為+15v和-15v,因此不可避免線性度有較大要求。而放大值要有15v電壓差,不可避免的需要同時用到正負量程。因此對放大器的調零也有較大要求。先后使用082,081,op07。最后確定用op07。同時因為要在正向放大時提供正偏壓,因此采用082制作了一個同項輸入跟隨器,做電氣隔離。3.1.4 電源輸出 實驗中主要采用l7805,l7815,l7915三種穩(wěn)壓器,外加電源部分設置成+/-20v,可由220v電源經變壓得到,并將20v直接接到lm317中3端輸入口,另外將+20v通過l7815,穩(wěn)壓后輸出為+15v,將-20v通過l7915,穩(wěn)壓后輸出為-15v,并將+/-15v電壓加載到
12、放大器的電源正負管腳上,另外dac0832的電源管腳20腳和19腳ile腳也要接+15v。再將+15v又經過l7805后變成+5v,這個壓值可供應到單片機電源及顯示部分。還需要在l7815的1,3腳,l7915的2,3腳以及l(fā)7805的1,3腳各自與地之間并聯(lián)連上220微法電解電容和0.1微法磁片電容,目的是為了濾除低頻雜波和高頻雜波。3.1.5 穩(wěn)壓器 穩(wěn)壓電路設計采用的是常用的可調集成穩(wěn)壓器lm317。 lm317 是美國國家半導體公司的三端可調正穩(wěn)壓器集成電路。輸出電壓范圍是 1.25v 至 37v,負載電流最大為 1.5a。它的使用非常簡單,僅需兩個外接電阻來設置輸出電壓。此外它的線性
13、調整率和負載調整率也比標準的固定穩(wěn)壓器好。lm317 內置有過載保護、安全區(qū)保護等多種保護電路。 通常lm317 不需要外接電容,除非輸入濾波電容到 lm317 輸入端的連線超過 6 英寸(約 15 厘米)。使用輸出電容能改變瞬態(tài)響應。調整端使用濾波電容能得到比標準三端穩(wěn)壓器高的多的紋波抑制比。 lm317 能夠有許多特殊的用法。比如把調整端懸浮到一個較高的電壓上,可以用來調節(jié)高達數(shù)百伏的電壓,只要輸入輸出壓差不超過 lm117/lm317 的極限就行。當然還要避免輸出端短路。還可以把調整端接到一個可編程電壓上,實現(xiàn)可編程的電源輸出。特性簡介 a??烧{整輸出電壓低到 1.2v。 b。保證 1.
14、5a 輸出電流。 c。典型線性調整率 0.01%。 d。典型負載調整率 0.1%。 e。80db 紋波抑制比。 f。輸出短路保護。 g。過流、過熱保護。 h。調整管安全工作區(qū)保護。 i。標準三端晶體管封裝。3.1.6 按鍵設置設計中共用到按鍵數(shù)為7個,其中一個為單片機上的復位鍵,另外6個分別命名為k1k6,k1k4分別接單片機p0口的p0.4p0.7,k5,k6接p3.5,p3.6。功能為:k1鍵:退出功能;k2鍵:預置數(shù)(設置一個數(shù)值為初始值);k3鍵:自動掃描鍵(掃描電壓值,并在led上自動顯示);k4鍵:輸出三角波電壓/在預置數(shù)值時整數(shù)和小數(shù)部分切換;k5鍵:對輸出穩(wěn)定電壓進行遞減;k6
15、鍵:對輸出穩(wěn)定電壓進行遞增。3.1.7 數(shù)碼顯示輸出這是決定系統(tǒng)使用是否方便的關鍵。這里又有兩個方案。方案一:采用電陣式液晶顯示器(lcd)顯示。雖然其功能強大,可顯示各種字體的數(shù)字,漢字,圖象,還可以自定義顯示內容,但是編程復雜,需要消耗大量時間完成顯示部分的編程工作,成本也比普通數(shù)碼管貴。方案二:采用通用led數(shù)碼管顯示。雖只能顯示非常有限的符號和數(shù)碼字,但是在本設計中完全滿足顯示需要,且編程簡便,可節(jié)約大量時間。分析以上兩種方案的優(yōu)缺點,本設計采用方案二。這里我們使用的是通用的4位集成數(shù)碼顯示管 1 2 3 4 5 6 12 11 10 9 8 71腳-com4 2腳-a 3腳-f 4腳
16、-com3 5腳-com2 6腳-b7腳-com1 8腳-g 9腳-c 10腳-db 11腳-d 12 腳-e 其中4個 com(1-4)分別對應單片機p0端口(p0.0p0.4)2個led端口的8個引腳a,b,c,d,e,f,g,db對應p1端口,且之間加阻值為330歐姆的電阻,否則電流過大,使電源部分的穩(wěn)壓器過熱,顯示管顯示過亮。3.2 方案二硬件部分3.2.1 單片機這一部分的整體基本上與方案一相同,原本接dac0832的p2口現(xiàn)在改為接8個繼電器,由此控制電路的開合。3.2.2 繼電器我們采用閉合式繼電器,如圖當p2口有低電平到時,就使繼電器內部的按鍵跳轉使和繼電器相連的電阻接入電路。
17、3.2.3 電阻網(wǎng)絡與穩(wěn)壓器壓差1.25v之間我們采用了一個560歐的精密電阻,因為實驗要求步進為0.1v,因此電阻網(wǎng)絡中的第一個電阻的阻值為(560/1.25)*0.1,其余電阻為第一個電阻的倍增阻值。由于阻值比較難配,在這里我們在實驗中采用了電位器。 3.2.4 電源輸出 此方案中主要采用l7805,l7905兩種穩(wěn)壓器,外加電源部分設置成+/-20v,并將20v直接接到lm317中3端輸入口,另外將+20v通過l7805,穩(wěn)壓后輸出為+5v,這個壓值可供應到單片機電源及其他高電平需求處。l7905輸出的-5v加在電阻網(wǎng)絡的末端主要是為了使電路實現(xiàn)調零,因為穩(wěn)壓器的最小輸出電壓為1.25v
18、。3.2.5 穩(wěn)壓部分同方案一中的穩(wěn)壓器部分。3.2.6按鍵設置 此設計中也采用7個按鍵且基本功能和方案一相同,只是排列方式不同。在單片機下方的是復位鍵,其余6個鍵按3,2陣列排,分別位k1k6,k1k4分別接單片機p0口的p0.4p0.7,k5,k6接p3.5,p3.6。功能為:k1鍵:退出功能;k2鍵:預置數(shù)(設置一個數(shù)值為初始值);k3鍵:自動掃描鍵(掃描電壓值,并在led上自動顯示);k4鍵:輸出三角波電壓/在預置數(shù)值時整數(shù)和小數(shù)部分切換;k5鍵:對輸出穩(wěn)定電壓進行遞減;k6鍵:對輸出穩(wěn)定電壓進行遞增。3.2.7 數(shù)碼顯示這里也是采用了led數(shù)碼顯示管,接腳形式及控制都同方案一。第四章
19、 軟件部分設計系統(tǒng)的軟件設計采用匯編語言,對單片機進行編程實現(xiàn)各功能程序是在wnidows xp環(huán)境下采用wave 6000軟件編寫的,可以實現(xiàn)對按鍵輸入高電平,對電壓增加+/-0.1v,預置電壓值等功能4.1 主程序流程圖 開始 計數(shù)器+1是否+ 是 否計數(shù)器-1是否- 是預置預置數(shù) 否 是 否三角波 是是否退 是 否輸出三角波 否掃描輸出退出 是 是計熟數(shù)+1滿150 否 計數(shù)-1 是顯示dac輸出延時1s減為0 否4.2 預置數(shù)流程圖 控制0十位個位+1,015是否+ 是 是 否小數(shù)+1,范圍09 否控制0十位個位+1,015是否- 是 是 否小數(shù)-1,范圍09 否是否退出 是 否是否切
20、換控制取反顯示預置數(shù)第五章 系統(tǒng)調試測試5.1 系統(tǒng)調試(1)電源部分調試:先斷開所有除輸入電源以外的其他電源接入線,在外部電源輸入部分加入正負20 v的電壓,通過l7815的1腳,和l7915的2腳,后用萬用表測量l7815的3腳為15v,l7915d 3腳為-15v,l7805的3腳為+5v,同時測試單片機,da0832,放大器等底座接口供電。電源部分正常。(2)調試led顯示:編制簡單的顯示小程序驗證正常。(3)按鍵測試:用程序驗證。(4)dac測試:調整iout1/iout2的基準電壓使輸入255時輸出電壓7.5v。用軟件測試輸出。(5)放大器調試:這是我們最感頭痛的地方,從082,0
21、81,op07,一直達不到滿意的要求。最后終于發(fā)現(xiàn)問題來自電源-15v的紋波干擾,為此,我們把電源模塊和放大模塊重新獨立制作調試。最終采用op07加082的方式。首先用op07建立正項放大器,信號從正端輸入,然后對op07的2/3腳短路接地,調節(jié)調零電阻絲輸出為零。然后在正項加5v電壓,調節(jié)放大倍數(shù)為2倍,因為電源為+15/-15所以放大輸出最大到+14v,而且lm317的調零必須用到負電壓,因此改變負端的參考電壓來得到負電壓??紤]到參考電壓用滑動變阻器得到,用082的一個放大器制作正項跟隨器進行電器隔離。用滑動變阻器調節(jié)輸出電壓,使dac輸出為0時,op07輸出-5v。所以最終op07輸出為
22、-5v+10v,達到lm317的電壓差要求。 放大器部分 電源部分(6)lm317調試:調節(jié)滑動變阻器,使dac輸出0v放大器輸出-5v時lm317輸出0v。5.2 系統(tǒng)測試 5.2.1 系統(tǒng)功能測試a. 系統(tǒng)操作及面板說明b. 符合設計提出的基本功能及提出的部分發(fā)揮功能 5.2.2 系統(tǒng)指標測試 當輸出端接空載時,測量儀器為: 測量時間:2005年9月1日 數(shù)據(jù)記錄(室溫下)1234567891011預置電壓/v(數(shù)碼顯示)0.01.02.05.06.08.09.010.012.014.015.0輸出電壓/v(數(shù)碼顯示)0.01.02.05.06.08.09.010.012.014.015.
23、0實測電壓/v(儀器測量)0.001.012.005.016.038.029.0110.0112.0314.0115.02 5.2.3 系統(tǒng)誤差分析 從電路的原理框圖可以看出,系統(tǒng)的主要誤差有兩個方面:a 0832的量化誤差 0832為8位d/a轉換器,滿量程為10v的量化誤差為+/-0.5lmbs+/-20mv.。按滿度歸一化的相對誤差為+/-0.2%。如圖所示為部分測試點的誤差b 放大器放大的線性失真引起的誤差,以及經過0點的調零誤差。c 基準電壓溫漂引入的誤差 lm317在040范圍內漂移不大于4mv,故相對誤差=+/-0.04%。5.2.4 誤差調整:可以采用精度更高的10位dac,采
24、用線性度較好的的放大器,增加系統(tǒng)正負放大器電源供電電壓等。因器材限制,并未采用以上方法。二是采用了查表法,在256個值中選取最接近所需電壓的值。下圖為150個電壓值對應的dac的值???結這次畢業(yè)設計過程中綜合了所學的數(shù)字電路,模擬電路,單片機,c語言對單片機編程,對大學所學的知識起了一個很好的鞏固作用,同時也應用到了protell 99軟件畫圖和isis profressional軟件仿真,仿真的結果還比較的準確,但是實物卻沒有完全實現(xiàn)功能。這此過程中認識到自己的知識面太狹小,也許是自己制作的實品太少了,對一些芯片的了解甚少,今后在工作中一定要補充這塊。同時也認識到理論和實踐的差別,通過實際
25、制作更能了解到一些模塊電路和芯片的功能,特別是檢查電路時,讓自己對電路有更深的了解 撰寫論文時。也讓自己認識到做每件事都要認真對待、要求規(guī)范、嚴謹。謝 辭最后要感謝在整個過程中幫助過我的每一位人。 首先,也是最主要感謝的是我的指導老師,劉立峰老師。在整個過程中他給了我很大的幫助,在論文題目制定時,他首先肯定了我的題目大方向,但是同時又幫我具體分析使我最后選擇的這個具體目標,讓我在寫作時有了具體方向。在制定時,我的思路不是很清晰,經過老師的幫忙,讓我具體寫作時思路頓時清晰。在完成初稿后,老師認真查看了我的文章,指出了我存在的很多問題。在此十分感謝李老師的細心指導,才能讓我順利完成。 其次,要感謝
26、解安龍、韓越穩(wěn)、郭敬、石齊偉同學在我做整個設計過程中在畢業(yè)設計的這段時間里,你們給了我很多的啟發(fā),提出了很多寶貴的意見,對于你們幫助和支持,在此我表示深深地感謝!參考資料 1national semiconductor corporation linear databook 1(1987 rev.1)第1-頁2實用穩(wěn)定電源 150 例張國峰、張維編,人民郵電出版 3標準集成電路數(shù)據(jù)手冊集成穩(wěn)壓器 第 59 頁4eda技術使用教程 潘松,黃繼業(yè) 科學出版社, 5全國大學生電子設計競賽訓練教程 黃智偉 電子工業(yè)出版社6數(shù)字電路技術 浙江大學出版社7單片機中級教程 張俊膜 北京航空航天大學出版社8電
27、子器材大全 電子工業(yè)出版社9電子線路設計應用手冊 張友漢 科學出版社 附錄附錄一本設計實驗全電路原理圖 方案一電路圖 方案二電路圖附錄二 軟件部分程序led1 equ 30h ;預定義led2 equ 31hled3 equ 32hled4 equ 33hbuff equ 34hbuff1 equ 34hdisbuff equ 35hcontrol equ 36hcontrol1 equ 36hkeybuff1 equ 37hkeybuff2 equ 38hkeydisbuff1 equ 3ahkeydisbuff2 equ 3bhkeydisbuff3 equ 3chorg 0000hajm
28、p mainmain:mov led1,#0ffh ;初始化mov led2,#0ffhmov led3,#0ffhmov led4,#0ffhmov disbuff,#00hmov buff,#00hmov buff,#00hmov control,#00hmov control1,#00hcall senddaccall sendledloop:setb p3.5 ;判斷減jb p3.5,key2dec buffcall senddaccall sendledkey2:setb p3.6 ;判斷加jb p3.6,key3inc buffcall senddaccall sendledkey
29、3:setb p0.4jb p0.4,key4key4:setb p0.5 ;判斷預定義jb p0.5,key5mov a,buffmov b,#10div abmov keybuff1,bmov keybuff2,acall defindkey5:setb p0.6 ;判斷自動掃描jb p0.6,key6call testkey6:setb p0.7 ;判斷輸出三角波jb p0.7,key7call sanjiaokey7:call display ;調用顯示ajmp looptest: ;自動掃描子程序mov buff,#00hsetb p0.4jb p0.4,test1rettest1:
30、mov r3,#150loop7:setb p0.4jb p0.4,test2rettest2:inc buffcall senddaccall sendledcall displaydjnz r3,loop7mov r3,#150loop6:setb p0.4jb p0.4,test3rettest3:dec buffcall senddaccall sendledcall displaydjnz r3,loop6ajmp test1sanjiao: ;三角波子程序setb p0.4jb p0.4,sanjiao1retsanjiao1:mov r3,#150loop9:inc buff1c
31、lr p3.7mov a,buff1mov dptr ,#numtab1 ;譯碼movc a,a+dptrmov p2,asetb p3.7call d1ms1djnz r3,loop9mov r3,#150loop8:dec buff1clr p3.7mov a,buff1mov dptr ,#numtab1 ;譯碼movc a,a+dptrmov p2,asetb p3.7call d1ms1djnz r3,loop8ajmp sanjiaodefind: ;預定義mov a,controlcjne a,#00h,defind1setb p3.5jb p3.5,defind01dec ke
32、ybuff2defind01:setb p3.6jb p3.6,defind1inc keybuff2defind1:cjne a,#01h,defind3setb p3.5jb p3.5,defind11dec keybuff1defind11:setb p3.6jb p3.6,defind3inc keybuff1defind3:setb p0.4jb p0.4,defind4mov buff,keybuff1mov a,keybuff2mov b,#10mul abadd a,buffmov buff,acall senddaccall sendledretdefind4:setb p0
33、.7jb p0.7,defind5inc controlmov a,controlcjne a,#02h,defind5mov control,#00hdefind5:call sendkeyledmov a,controlcjne a,#00h,definddis1call display1call display4ajmp definddefinddis1:call display2call display4ajmp defindsendled:mov a,disbuffmov b,#10div abmov led1,bmov b,#10div abmov led2,bmov led3,a
34、mov dptr ,#numtab ;譯碼mov a,led3jnz sendled1mov a,#0ahsendled1:movc a,a+dptrmov led3,amov a,led2movc a,a+dptrmov led2,amov a,led1movc a,a+dptrmov led1,aretsendkeyled: 送鍵盤顯示緩存mov a,keybuff2cjne a,#0ffh,keyled3mov keybuff2,#00hkeyled3:cjne a,#0fh,keyled4mov keybuff2,#0ehkeyled4:mov a,keybuff1cjne a,#0f
35、fh,keyled5mov keybuff1,#00hkeyled5:cjne a,#0ah,keyled6mov keybuff1,#09hkeyled6:mov dptr ,#numtab ;譯碼mov a,keybuff2mov b,#10div abmovc a,a+dptrmov keydisbuff3,amov a,bmovc a,a+dptrmov keydisbuff2,amov a,keybuff1movc a,a+dptrmov keydisbuff1,aretsenddac: ;送顯示緩存mov a,buffcjne a,#0ffh,dac1mov buff,#00hda
36、c1:cjne a,#97h,dac2mov buff,#96hdac2:clr p3.7mov a,buffmov dptr ,#numtab1 ;譯碼movc a,a+dptrmov p2,amov a,#0c9hsubb a,buffmov disbuff,buffsetb p3.7retdisplay: 顯示子程序mov p0,#00hmov r0,#6dpl1: mov r1,#100dplop:mov p1,led4clr p0.0acall d1mssetb p0.0mov p1,led3clr p0.1acall d1mssetb p0.1mov p1,led2clr p1.7
37、clr p0.2acall d1mssetb p0.2mov p1,led1clr p0.3acall d1mssetb p0.3djnz r1,dplopdjnz r0,dpl1retdisplay1: 顯示子程序1mov p0,#00hmov r0,#1dpl11: mov r1,#100dplop1:mov p1,led4clr p0.0acall d1mssetb p0.0mov p1,#0ffhclr p0.1acall d1mssetb p0.1mov p1,#0ffhclr p1.7clr p0.2acall d1mssetb p0.2mov p1,keydisbuff1clr p0.3acall d1mssetb p0.3djnz r1,dplop1djnz r0,dpl11retdisplay2: 顯示子程序2mov p0,#00hmov r0,#1dpl13: mov r1,#100dplop3:mov p1,led4clr p0.0acall d1mssetb p0.0mov p1,keydisbuff3clr p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級心理健康家庭支持計劃
- 以錄為翼啟智生命:錄像在高中生命科學實驗教學中的多維應用與探索
- 以客戶為中心:濟南市ZDEY醫(yī)院營銷戰(zhàn)略的深度剖析與創(chuàng)新實踐
- 土木工程畢業(yè)設計范文
- 以學習敏銳度為導向:醫(yī)藥公司銷售團隊人員選聘的創(chuàng)新策略與實踐
- 大班美術能力評估觀察記錄范文
- 園林綠化生態(tài)環(huán)境災害恢復管理措施
- 急診科新冠肺炎疑似病例應急流程
- 學校特色課程開發(fā)計劃
- 幼兒園科學教育科研工作計劃
- DB4401-T 112.1-2021 城市道路占道施工交通組織和安全措施設置+第1部分:交通安全設施設置-(高清現(xiàn)行)
- 教海探航論文
- IPC-A-610國際標準中英文對照(doc 17)
- JJF(建材)110-2019水泥雷氏夾膨脹測定儀校準規(guī)范-(高清現(xiàn)行)
- 《納尼亞傳奇》閱讀交流(課堂PPT)
- 某航空公司教學材料之十八案例
- 縣級課題研究過程記錄
- 中山大學綜合評價招生綜合素質測試題總結
- 預制場(梁場)建設方案
- 專業(yè)課程融入思政工作的教學設計理念與方法(課堂PPT)
- 安川CDBR系列 制動單元 用戶手冊_圖文
評論
0/150
提交評論