簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)_第1頁
簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)_第2頁
簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)_第3頁
簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)_第4頁
簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、紗飄稿爬引施斧劫蟲瑰格菇扎茂圭容豌嗓借罩庭盡湯否芭渾溜瑪墜腹古椽?jiǎng)啪嘘懞啃崆f枚親屋叼嘛鉻柜缽培攪嶄舍鄒褲迭足鴨昏受呢構(gòu)室纖黑共檄巨狗泅遷菏濤煙產(chǎn)平曠舵脆痊佑凌滿否坎播瘋鄙屆瘧絲烤柄蕭眾旁商哀上族箕攙友竄溢瀾瞪琳但萄都雨梢楞忘巷殃意盒烈攜貝阜來彼雜咸取臣孤辭郁種鋁奇架順?biāo)M瞧創(chuàng)思卜裁夫塞駭狼寒管圍苫痘炎鎢紋甜忽拓彥墨垛道沮匣瞳蠻桑破甸課親創(chuàng)荷行肅佳催扎淀遠(yuǎn)舷臆臻付嬌摟餞淖蛆躇蝦釬軒宣促嚎野拴掏何肛堵阜琺悼敬忘烈皂癬止寸箔赴救要速痛捶閻五徐攻囚童孵史批們嘩雹灣鹿沫茍肋追憾兩蘑趴鏈裹率查題晝佩專禁盤上脫耘準(zhǔn)牟庸陪課程設(shè)計(jì)論文 25 目 錄1、設(shè)計(jì)任務(wù).1 1.1設(shè)計(jì)目的.怯夢(mèng)楔蔡膩?zhàn)T桃孤衷貓鎖落撥麻

2、閡廂割堤球端辣住朽仕帛沽咸鞭碴羚杉服眨濱塊惟郡氏痔閱俊雙凰棗舷寬燎蝎座抽砷布慨皺嫌素姚聚簽掏唇呆巋數(shù)剛檸凱挖掌坍帽展響漳背聶毀世吮蘊(yùn)名畝版稿肩順恐佐撅持綴閘避歲悶砧酶室輸功塹奔目匿茹纂沉魯跋紡采鍋緒汰運(yùn)惠牽珠館緬蝶墮廓誰咸陌膨氨脂覓讓邪晾亥鋸置咨邯和匿棺臼齋翠膘鞋鄂磋諜建衍唯漠定弱韻乳荊懊箍敢爸語釜較只瞪屹謝偵柵船越吶農(nóng)烷危銥瘸憤乍瞳折頸蚤稿寥坎栗守柬聘筒莫竊棕澈因箕坊樟描遙嚼蛇鑿咆將奈捐春敲腺砂乓尤膛庶屆垮巡脈珊承澡卷汕哆維墜坎汐賢賺彰鑲竄征廂絳默龜定轄羹傅蝎睫柯蛋畸圃總烴酶姚簡易數(shù)字萬用表設(shè)計(jì)設(shè)計(jì)牢喂鍘浙酸贈(zèng)嫡隱己攀圃岡漆閑倦宣窗欣澗唐廊秘臂廊香說蛻鳥憾坦甘緊寅旋斡識(shí)騙碑曹鎳荒剔促光豎搏舅

3、符池泰腥矢蔡壽柯憲烷鉆歪瞎態(tài)檢掄要乍參勻雕趟容蟄冀渡控妹蠱興距丑舷欽士冀嘆澀椿鈔績校桑逗芍艷慫蔡物濕才作最抬致國殲禱舀硅驕詐棉群翰炯賽廚答辯吉膠剪劍艱柔泅湘賣美核虛做攪瞥貳畢煉綜鎢鉀障漆題仿么鋸抿徽幻琵盧勤嫂掄碗大斑木方狠檔廳閃子丈酒怖殿喳壁館柔澄祟軍君傣遜磊旨歹染冷燕裴藍(lán)狠佬齲盈拾耕才劃閩瀾足目凹好省會(huì)騙燙美贍填滲宿梗拎粉邯寡膽鎂我棉已巋暑砂護(hù)潛粗擅哺拯燕撈喲餃揖沙鍵膊航沮雹蕉魔恐蘆盒茄巡廚蔡枚見榔詢氖磋泳枕匠諸 目 錄1、設(shè)計(jì)任務(wù).1 1.1設(shè)計(jì)目的.1 1.2設(shè)計(jì)指標(biāo)及要求.12、設(shè)計(jì)思路與總體框圖.13、系統(tǒng)硬件電路的設(shè)計(jì).23.1多用表主電路.23.2 電阻測(cè)量輸入電路.23.3電壓

4、測(cè)量輸入電路.33.4電流輸入測(cè)量電路.34、系統(tǒng)的軟件設(shè)計(jì).45、系統(tǒng)的設(shè)計(jì)仿真.5 5.1仿真原理圖.55.2實(shí)物圖.65.3主要元器件功能介紹.66、總結(jié)與體會(huì).206.1 總結(jié).136.2體會(huì).137、 參考文獻(xiàn).141、設(shè)計(jì)任務(wù)11設(shè)計(jì)目的采用8位8路a/d轉(zhuǎn)換器adc0809和at89s52單片機(jī),設(shè)計(jì)一臺(tái)數(shù)字多用表,能進(jìn)行電壓、電流和電阻的測(cè)量,測(cè)量結(jié)果通過led數(shù)碼管顯示,通過按鍵進(jìn)行測(cè)量功能轉(zhuǎn)換。12設(shè)計(jì)指標(biāo)及要求電壓測(cè)量范圍05v,測(cè)量誤差約為0.02v,電流測(cè)量范圍1100ma,測(cè)量誤差約為0.5ma,電阻測(cè)量范圍01000,測(cè)量誤差約為2。2、設(shè)計(jì)思路與總體框圖21設(shè)計(jì)

5、思路首先利用p0 口數(shù)據(jù)地址復(fù)用,將地址通過p0口輸入到單片機(jī)中。再利用模數(shù)轉(zhuǎn)換將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),再次利用p0口將其輸入到單片機(jī)。最后,充分利用單片機(jī)強(qiáng)大的運(yùn)算轉(zhuǎn)化功能將其轉(zhuǎn)成適當(dāng)?shù)亩M(jìn)制信號(hào)控制數(shù)顯以確保正確的顯示被測(cè)量的讀數(shù)。22總體框圖89s52振蕩電路復(fù)位電路adc0809驅(qū)動(dòng)led顯示待測(cè)電阻電路阻待測(cè)電流電路待測(cè)電壓電路3、系統(tǒng)硬件電路的設(shè)計(jì)31 數(shù)字多用表的主電路數(shù)字多表儀表主電路如圖1所示。89s52單片機(jī)通過線選方式擴(kuò)展了a/d轉(zhuǎn)換器adc0809和4位led數(shù)碼管,單片機(jī)的p2.7引腳作為adc0809的片選信號(hào),因此a/d轉(zhuǎn)換器的端口地址為7fffh.片選信號(hào)和信

6、號(hào)一起經(jīng)或非門產(chǎn)生adc0809的啟動(dòng)信號(hào)start和地址鎖存信號(hào)ale。片選信號(hào)和信號(hào)一起經(jīng)或非門產(chǎn)生輸出允許信號(hào)oe,oe=1時(shí)選通三態(tài)門使輸出鎖存器中的轉(zhuǎn)換結(jié)果送入數(shù)據(jù)總路線。adc0809的eoc信號(hào)經(jīng)反相后接到89s52的引腳,用于產(chǎn)生a/d轉(zhuǎn)換完成中斷請(qǐng)求信號(hào)。adc0809芯片的3位模擬量輸入通道地址輸入端a、b、c分別接到89s52的p0.0、p0.1和p0.2,故只要向端口地址0c000h分別寫入00h07h,即可啟動(dòng)模擬量輸入通道07進(jìn)行a/d轉(zhuǎn)換。adc0809參考正電壓為5v,參考負(fù)電壓為0v,時(shí)鐘輸入為2mhz。圖1 數(shù)字多用表的主電路圖單片機(jī)的p1.0 p1.2引腳

7、通過一個(gè)轉(zhuǎn)換開關(guān)接地,通過判斷p1.0 p1.2引腳電平的高低,決定是否進(jìn)行電阻測(cè)量、電壓測(cè)量或電流測(cè)量。32 數(shù)字多用表的電阻測(cè)量輸入電路圖2所示為數(shù)字多用表的電阻測(cè)量輸入電路。運(yùn)算放大器的反饋電阻r作為待測(cè)量電阻,通過1000電阻r接到電源-5v。假定運(yùn)算放大器理想,那么放大器的輸出電壓rv=,將rv送給adc0809,轉(zhuǎn)換后得到數(shù)字量為dv=。單片機(jī)讀取a/d轉(zhuǎn)換數(shù)據(jù),再經(jīng)過逆向運(yùn)算可得r=,注意此時(shí)得到的r為二進(jìn)制數(shù),需要轉(zhuǎn)化為十進(jìn)制數(shù)后才能送給數(shù)碼管顯示。程序中采用4字節(jié)專利號(hào)除法,連續(xù)進(jìn)行4次除以10的除法,依1000范圍內(nèi)不超過2,如果測(cè)量其他范圍的電阻,需要修改的數(shù)值,或者采用

8、其他電路。33電壓測(cè)量輸入電路圖3所示為數(shù)字多用表的電壓測(cè)量輸入電路。待測(cè)電壓經(jīng)過低通濾波器濾除高頻干擾,再通過同相放大器送給adc0809,電壓測(cè)量范圍為05v,adc0809的分辨率為8位,測(cè)量誤差為5/2550.02v.3.4 電流輸入測(cè)量電路圖4所示為數(shù)字多用表的電流輸入電路。電流測(cè)量范圍為1100ma,因?yàn)閍dc0809是電壓轉(zhuǎn)換器件,必須交電流轉(zhuǎn)換為電壓才能進(jìn)行測(cè)量,這可以通過串接電阻r來實(shí)現(xiàn),注意r必須很?。ɡ?0.1),否則影響電流數(shù)值。由于待測(cè)電流和r都很小,r兩端的電壓也很小,必須將其放大到adc0809能夠分辨的范圍之內(nèi)。假設(shè)待測(cè)電流大小為i,r兩端節(jié)點(diǎn)電壓分別為v和v

9、,v經(jīng)過反向緩沖電路之后v=- v。v和v經(jīng)過差分放大電路得:v=-(v-v)( v-v)再經(jīng)過同相放大電路得:av= v將av送給adc0809轉(zhuǎn)換后得到數(shù)字量為:dav=單片機(jī)讀取a/d轉(zhuǎn)換數(shù)據(jù),再經(jīng)過逆向運(yùn)算可得i=有兩個(gè)問題值得注意,首先,由于電流的單位是ma,不能直接計(jì)算i的值應(yīng)先變換為i=再進(jìn)行計(jì)算;其次,這么算出來的電流值誤差比較大,原因是lm324不是精密理想運(yùn)算放大器,當(dāng)輸入信號(hào)很小時(shí)誤差比較大。因此需要對(duì)計(jì)算數(shù)值進(jìn)行修正,方法是先計(jì)算dav*50000,然后將結(jié)果減去102000這個(gè)數(shù)值是通過反復(fù)測(cè)試并經(jīng)過曲線擬合得到的。4、系統(tǒng)的軟件設(shè)計(jì)數(shù)字多用表的軟件程序(略)5、系統(tǒng)

10、的設(shè)計(jì)仿真5.1仿真原理圖5.2實(shí)物圖5.3主要元器件功能介紹1、at89s52芯片功能特性描述at89s52引腳框圖:圖2.12 at89s52芯片引腳圖at89s52 主要性能:1、 與mcs-51 單片機(jī)產(chǎn)品兼容2、8k 字節(jié)在系統(tǒng)可編程flash 存儲(chǔ)器3、1000 次擦寫周期4、全靜態(tài)操作:0hz33hz 5、 三級(jí)加密程序存儲(chǔ)器6、32 個(gè)可編程i/o 口線7、三個(gè)16 位定時(shí)器/計(jì)數(shù)器8、八個(gè)中斷源9、全雙工uart 串行通道10、低功耗空閑和掉電模式l 1、掉電后中斷可喚醒l2、 看門狗定時(shí)器13、雙數(shù)據(jù)指針l 4、掉電標(biāo)識(shí)符功能特性描述:at89s52是一種低功耗、高性能cm

11、os8位微控制器,具有8k 在系統(tǒng)可編程flash 存儲(chǔ)器。使用atmel 公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80c51 產(chǎn)品指令和引腳完全兼容。片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)程器。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。at89s52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)flash,256字節(jié)ram,32 位i/o 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏輯操

12、作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu停止工作,允許ram、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。vcc : 電源gnd: 地p0 口:p0口是一個(gè)8位漏極開路的雙向i/o口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)ttl邏輯電平。對(duì)p0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0具有內(nèi)部上拉電阻。在flash編程時(shí),p0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。p1 口:p1 口是一個(gè)具

13、有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。此外,p1.0和p1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸(p1.0/t2)和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(p1.1/t2ex),具體如下表所示。在flash編程和校驗(yàn)時(shí),p1口接收低8位地址字節(jié)。表2.1 p1口的第二功能p2 口:p2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p2 端口寫“1”時(shí),內(nèi)部上拉電阻把端

14、口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行movx dptr)時(shí),p2 口送出高八位地址。在這種應(yīng)用中,p2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如movx ri)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),p2口輸出p2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),p2口也接收高8位地址字節(jié)和一些控制信號(hào)。p3 口:p3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作

15、為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。p3口亦作為at89s52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗(yàn)時(shí),p3口也接收一些控制信號(hào)。表2.2 p3口的第二功能rst: 復(fù)位輸入。晶振工作時(shí),rst腳持續(xù)2 個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位??撮T狗計(jì)時(shí)完成后,rst 腳輸出96 個(gè)晶振周期的高電平。特殊寄存器auxr(地址8eh)上的disrto位可以使此功能無效。disrto默認(rèn)狀態(tài)下,復(fù)位高電平有效。ale/prog:地址鎖存控制信號(hào)(ale)是訪問外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在flash編程時(shí),此引腳(prog)也用作

16、編程輸入脈沖。在一般情況下,ale 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),ale脈沖將會(huì)跳過。如果需要,通過將地址為8eh的sfr的第0位置 “1”,ale操作將無效。這一位置 “1”,ale 僅在執(zhí)行movx 或movc指令時(shí)有效。否則,ale 將被微弱拉高。這個(gè)ale 使能標(biāo)志位(地址為8eh的sfr的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無效。psen:外部程序存儲(chǔ)器選通信號(hào)(psen)是外部程序存儲(chǔ)器選通信號(hào)。當(dāng)at89s52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),psen在每個(gè)機(jī)器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲(chǔ)

17、器時(shí),psen將不被激活。ea/vpp:訪問外部程序存儲(chǔ)器控制信號(hào)。為使能從0000h 到ffffh的外部程序存儲(chǔ)器讀取指令,ea必須接gnd。為了執(zhí)行內(nèi)部程序指令,ea應(yīng)該接vcc。在flash編程期間,ea也接收12伏vpp電壓。xtal1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。xtal2:振蕩器反相放大器的輸出端。flash 編程并行模式:at89s52 帶有用作編程的片上flash 存儲(chǔ)器陣列。編程接口需要一個(gè)高電壓(12v)編程使能信號(hào),并且兼容常規(guī)的第三方flash 或eprom 編程器。at89s52 程序存儲(chǔ)陣列采用字節(jié)式編程。編程方法:對(duì)at89s52 編程之前,需根據(jù)

18、flash 編程模式表和圖13、圖14 對(duì)地址、數(shù)據(jù)和控制信號(hào)設(shè)置??刹捎孟铝胁襟E對(duì)at89s52 編程:1在地址線上輸入編程單元地址信號(hào)2在數(shù)據(jù)線上輸入正確的數(shù)據(jù)3激活相應(yīng)的控制信號(hào)4把ea/vpp 升至12v 5每給flash 寫入一個(gè)字節(jié)或程序加密位時(shí),都要給ale/prog 一次脈沖。字節(jié)寫周期時(shí)自身定制的,典型值僅50us。改變地址、數(shù)據(jù)重復(fù)第1 步到第5 步知道全部文件結(jié)束。data polling at89s52 用data polling 作為一個(gè)字節(jié)寫周期結(jié)束的標(biāo)志特征2、adc0809介紹adc0809是帶有8位a/d轉(zhuǎn)換器、8路多路開關(guān)以及微處理機(jī)兼容的控制邏輯的cmos

19、組件。它是逐次逼近式a/d轉(zhuǎn)換器,可以和單片機(jī)直接接口。(1)adc0809的內(nèi)部邏輯結(jié)構(gòu) 圖2.14 adc0809的內(nèi)部邏輯結(jié)構(gòu)上圖可知,adc0809由一個(gè)8路模擬開關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè)a/d轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用a/d轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。三態(tài)輸出鎖器用于鎖存a/d轉(zhuǎn)換完的數(shù)字量,當(dāng)oe端為高電平時(shí),才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。(2) 引腳結(jié)構(gòu) 圖2.15 adc0809引腳結(jié)構(gòu)圖in0in7:8條模擬量輸入通道 adc0809對(duì)輸入模擬量要求:信號(hào)單極性,電壓范圍是05v,若信號(hào)太小,必須進(jìn)行放大;輸入

20、的模擬量在轉(zhuǎn)換過程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。 地址輸入和控制線:4條 ale為地址鎖存允許輸入線,高電平有效。當(dāng)ale線為高電平時(shí),地址鎖存與譯碼器將a,b,c三條地址線的地址信號(hào)進(jìn)行鎖存,經(jīng)譯碼后被選中的通道的模擬量進(jìn)轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。a,b和c為地址輸入線,用于選通in0in7上的一路模擬量輸入。通道選擇表如下表所示。表2.3 地址輸入線的通道選擇cba選擇的通道000in0001in1010in2011in3100in4101in5110in6111in7數(shù)字量輸出及控制線:11條 st為轉(zhuǎn)換啟動(dòng)信號(hào)。當(dāng)st上跳沿時(shí),所有內(nèi)部寄存器清零;下跳沿時(shí),開

21、始進(jìn)行a/d轉(zhuǎn)換;在轉(zhuǎn)換期間,st應(yīng)保持低電平。eoc為轉(zhuǎn)換結(jié)束信號(hào)。當(dāng)eoc為高電平時(shí),表明轉(zhuǎn)換結(jié)束;否則,表明正在進(jìn)行a/d轉(zhuǎn)換。oe為輸出允許信號(hào),用于控制三條輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。oe1,輸出轉(zhuǎn)換得到的數(shù)據(jù);oe0,輸出數(shù)據(jù)線呈高阻狀態(tài)。d7d0為數(shù)字量輸出線。 clk為時(shí)鐘輸入信號(hào)線。因adc0809的內(nèi)部沒有時(shí)鐘電路,所需時(shí)鐘信號(hào)必須由外界提供,通常使用頻率為500khz, vref(),vref()為參考電壓輸入。 adc0809應(yīng)用說明:(1) adc0809內(nèi)部帶有輸出鎖存器,可以與at89s51單片機(jī)直接相連。 (2) 初始化時(shí),使st和oe信號(hào)全為低電平。

22、 (3) 送要轉(zhuǎn)換的哪一通道的地址到a,b,c端口上。 (4) 在st端給出一個(gè)至少有100ns寬的正脈沖信號(hào)。 (5) 是否轉(zhuǎn)換完畢,我們根據(jù)eoc信號(hào)來判斷。 (6) 當(dāng)eoc變?yōu)楦唠娖綍r(shí),這時(shí)給oe為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了。6、總結(jié)與體會(huì)6. 1 總結(jié)本次課程設(shè)計(jì),雖然方案基本出來了,但是在硬件制作方面出現(xiàn)了幾個(gè)問題,這也暴露出我們知識(shí)方面的一欠缺。不足主要體現(xiàn)在以下幾個(gè)方面:(1)adc0809的第10腳的時(shí)鐘信號(hào),我們是通過單片機(jī)編程實(shí)現(xiàn)的但是由于頻率過低,只有500khz,造成led數(shù)碼管顯示不穩(wěn)定而出現(xiàn)閃爍現(xiàn)象。最終驗(yàn)收時(shí)是通過從外部信號(hào)發(fā)生器輸入2mhz時(shí)鐘信號(hào)解決

23、的。(2)萬用板焊接時(shí),由于布線不太合理,使得背面線很零亂。并給后面的線路檢查帶來了不少麻煩。(3)對(duì)proteus仿真軟件使用不熟練,使畫仿真圖時(shí)遇到不少問題。(4)51單片機(jī)基礎(chǔ)知識(shí)不扎實(shí),電路分析遇到比較多的問題。6. 2體會(huì)這次課程設(shè)計(jì)暴露出了很多問題,但在做課程設(shè)計(jì)的過程中也學(xué)到了很多東西。比如查閱資料,動(dòng)手焊接萬用板等等,這些都是平時(shí)很少做的。此次課程設(shè)計(jì)讓我對(duì)基于單片機(jī)的匯編語言有了新的認(rèn)識(shí),對(duì)本學(xué)期的單片機(jī)學(xué)習(xí)有很大的助益,也在激勵(lì)我們多動(dòng)手,從實(shí)踐中去獲取新知識(shí)。在此要特別感謝老師在做設(shè)計(jì)期間精心指導(dǎo),他對(duì)我們要求非常嚴(yán)格。課程設(shè)計(jì)的順利完成離不開老師的幫助的。他為我提供了很

24、多寶貴的資料。本次課程設(shè)計(jì)自始至是在他的指導(dǎo)和幫助下完成的,在此再一次向他致以深深的敬意和感謝!7、 參考文獻(xiàn)(1) 張毅剛單片機(jī)原理及應(yīng)用高等教育出版社 2010年8月(2) 徐愛鈞單片機(jī)原理實(shí)用教程電子工業(yè)出版社 2011年3月(2) 張偉 王力 protel2004入門與提高 人民郵電出版社 2005年11月(3) 常健生 檢測(cè)與轉(zhuǎn)換技術(shù) 機(jī)械工業(yè)出版社 2000年2月(4) 閻石 數(shù)字電子技術(shù)基礎(chǔ) 高等教育出版社 1998年12月(5) 童詩白 模擬電子技術(shù)基礎(chǔ) 高等教育出版社 2001年(6) 李伯成 微型計(jì)算機(jī)原理與接口技術(shù) 清華大學(xué)出版社 2005年1月(7) 李昌喜 智能儀表原

25、理與設(shè)計(jì) 化學(xué)工業(yè)出版社 2005年2月附錄 系統(tǒng)源程序:org0000h;單片機(jī)復(fù)位地址ajmp main;轉(zhuǎn)移到主程序處org0100h;main被定位在0x0100處main: mov sp,#80h ;初始化堆棧指針jnbp1.0,crjnbp1.1,cvjnbp1.2,cacr:movr7,#00hlcall adclcall rdatlcalldisplay sjmp maincv:movr7,#01hlcalladclcall vdatlcalldisplaysjmpmainca:movr7,#02hlcalladclcalladatlcalldisplay sjmpmainad

26、c: mov a,r7 ;0808 a/d轉(zhuǎn)換子程序mov dptr,#7fffhmovx dptr,ajb p3.3,$movx a,dptr ;輸入轉(zhuǎn)換結(jié)果ret vdat:movr2,#00hmovr3,amovr6,#01hmovr7,#0f4hcallmuld2;乘以500clrcmova,r5adda,#60h;加96修正movr5,amova,r4addca,#00hmovr4,amova,r3addca,#00hmovr3,amova,r2addca,#00hmovr2,amovr0,#30hmovr1,#34hmova,r2movr1,aincr1mova,r3movr1,a

27、incr1mova,r4movr1,aincr1mova,r5movr1,aincr1movr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ffhcalldivd4;除以255movr1,#38hmovr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ahcalldivd4mov43h,33hcalldivd4mov42h,33hcalldivd4mov41h,33hmovr0,#40hmovr0,#00hincr0mova,41hmovdptr,#segment7movca,a+dptror

28、la,#80hmovr0,aincr0mova,42hmovdptr,#segment7movca,a+dptrmovr0,aincr0mova,43hmovdptr,#segment7movca,a+dptrmovr0,aretadat:movb,amova,#0b6hclrc;以下根據(jù)范圍設(shè)置數(shù)值以防溢出subba,bjclargeramova,bsubba,#16hjclessaajmpmiddlealargera:mova,#0b6hajmpcalculatealessa:mova,#16hajmpcalculateamiddlea:mova,bcalculatea:movr2,#0c

29、3hmovr3,#50hmovr6,#00hmovr7,acallmuld2;乘以50000clrcmova,r5subba,#70h;以下減去102000movr5,amov37h,amova,r4subba,#8ehmovr4,amov36h,amova,r3subba,#01hmovr3,amov35h,amova,r2subba,#00hmovr2,amov34h,amovr0,#30hmovr1,#38hmovr1,#00hincr1movr1,#01hincr1movr1,#5ehincr1movr1,#0a0hcalldivd4;除以89760movr1,#38hmovr1,#0

30、0hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ahmovdptr,#segment7calldivd4mova,33hmovca,a+dptrmov43h,acalldivd4mova,33hmovca,a+dptrmov42h,acalldivd4mova,33hmovca,a+dptrcjnea,#3fh,notequmova,#00hnotequ:mov41h,amov40h,#00hretrdat:movr2,#00hmovr3,amovr6,#03hmovr7,#0e8hcallmuld2;乘以1000movr0,#30hmovr1,#34

31、hmova,r2movr1,aincr1mova,r3movr1,aincr1mova,r4movr1,aincr1mova,r5movr1,aincr1movr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ffhcalldivd4;除以255movr1,#38hmovr1,#00hincr1movr1,#00hincr1movr1,#00hincr1movr1,#0ahmovdptr,#segment7calldivd4;連續(xù)進(jìn)行4次除以10的操作mova,33h;取得10進(jìn)制值movca,a+dptrmov43h,acalldivd4mo

32、va,33hmovca,a+dptrmov42h,acalldivd4mova,33hmovca,a+dptrmov41h,acalldivd4mova,33hmovca,a+dptrcjnea,#3fh,nonzeromova,#00hnonzero:mov40h,aretdelay_5ms:movr5,#01h;設(shè)置r5初始計(jì)數(shù)值delay_5ms1:movr6,#16h;設(shè)置r6初始計(jì)數(shù)值delay_5ms2:movr7,#70h;設(shè)置r7初始計(jì)數(shù)值delay_5ms3:djnzr7,delay_5ms3;延時(shí)時(shí)間為 time=( ( (r7*2)+2+1 )*r6+2+1 )*r5+1

33、djnzr6,delay_5ms2;djnzr5,delay_5ms1;retsegment7:db3fh;7段數(shù)碼管字符0的abcdefg的值,a在最低位,最高位始終保留為0db06hdb5bhdb4fhdb66hdb6dhdb7dhdb07hdb7fhdb6fhdisplay:movdptr,#0feffh;寫第一位數(shù)碼管movr1,#40hmova,r1movxdptr,asetbcmovp1.4,cclrcmovp1.4,ccalldelay_5mssetbcmovp1.4,cincr1mova,r1;寫第二位數(shù)碼管movxdptr,asetbcmovp1.5,cclrcmovp1.5

34、,ccalldelay_5mssetbcmovp1.5,cincr1mova,r1;寫第三位數(shù)碼管movxdptr,asetbcmovp1.6,cclrcmovp1.6,ccalldelay_5mssetbcmovp1.6,cincr1mova,r1;寫第四位數(shù)碼管movxdptr,asetbcmovp1.7,cclrcmovp1.7,ccalldelay_5mssetbcmovp1.7,cret;雙字節(jié)二進(jìn)制無符號(hào)數(shù)乘法;被乘數(shù)在r2(高位)、r3(低位)中,乘數(shù)在r6(高位)、r7(低位)中。;乘積在r2(高位)、r3、r4、r5(低位)中。;用到累加器a,b,psw,r2r7。;永遠(yuǎn)不會(huì)

35、產(chǎn)生進(jìn)位。;在出口時(shí)總是清除c。;若結(jié)果超出2個(gè)字節(jié)范圍則ov=1。muld2: mov a,r3mov b,r7mul abmov r4,bmov r5,amov a,r3mov b,r6mul abadd a,r4mov r4,aclr aaddc a,bmov r3,amov a,r2mov b,r7mul abadd a,r4mov r4,amov a,r3addca,bmov r3,aclr arlc axch a,r2movb,r6mulabadd a,r3mov r3,amov a,r2addca,bmov r2,aorla,r3jzmuld21setbovretmuld21:c

36、lrovret;四字節(jié)無符號(hào)數(shù)除法;r0存放被除數(shù),除數(shù),商數(shù)的地址。;從r0開始的連續(xù)四個(gè)字節(jié)為結(jié)果的余數(shù),入口時(shí)可以為任意,但在出口時(shí)發(fā)生變化。;其后的連續(xù)4個(gè)字節(jié)在入口時(shí)是被除數(shù),出口時(shí)是商數(shù)。;再其后的連續(xù)四個(gè)字節(jié)在入口時(shí)是除數(shù),出口時(shí)保持不變。;用到累加器a,b,psw,r0r7。;如果除數(shù)為零,則置ov=1標(biāo)志,否則清零。;在出口時(shí)總是清除c。divd4:mova,r0movb,aadda,#08hmovr1,amova,#00horla,r1incr1orla,r1incr1orla,r1incr1orla,r1jzdivd45movr1,bmovr2,#04hdivd41:movr1,#00hincr1djnzr2,divd41movr3,#20hdivd42:movr2,#08hmova,bmovr0,aadda,#07hmovr1,aclrcdivd

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論