版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、微機原理及接口技術課程設計說明書課題:智能雙路數(shù)字電壓表專業(yè):電子信息類班級:姓名:學號:指導老師:目錄1彼計任務21.1設計題目21.2設計目的22. 1.3設計任務2總體方案設計與方案論證42.1總體方案設計與論證46. 2.2溫度采集、計算的方案設計與論證53?系統(tǒng)總框圖及總體軟件設計說明64?系統(tǒng)資源分配圖75?局部程序設計說明85.1顯示更新子程序85.2溫度采集存儲子程序95.3PB口消抖和凍結子程序115.4白動巡顯和手動切換子程序125.5轉換成溫度內碼的子程序135.6溫度內碼轉化為BCD碼的子程序155.7鍵盤掃描和節(jié)拍設定的子程序175.8改進后設定溫度上下限的子程序19
2、5.9改進后實時鐘調整的子程序20系統(tǒng)功能及其操作說明-21調試記錄及調試結果-2122課程設計總結-附錄一:源程序清單23附錄二:改進后的程序381設計任務1.1設計題目智能雙路數(shù)字電壓表1.1設計目的通過小型微機應用產品的設計與調試過程,運用微機原理及接口技術課程所學的基本知識,在設計中加以應用,進而得到理解、鞏固和提高,學習掌握分析與解決實際問題的方法與手段,提高設計、編程與調試的實際動手能力,作為工程技術工作的一次基本訓練。1.2設計任務設計一個以單片機為核心的智能雙路數(shù)字電壓表,通過多選一電子模擬開關及A/D轉換器巡回采集兩路被測電壓的數(shù)據,進行信號處理及標度變換,以一定的節(jié)拍時間交
3、替顯示,應有顯示的符號標示被測信號源回路,并可通過按鈕開關操控凍結或切換形式,可通過鍵盤進行參數(shù)設計,編程并在單片機實驗上模擬調試實現(xiàn)。(一)基本設計要求1、八位LED7段數(shù)碼管顯示當前檢測回路的標識、電壓值及其單位或其他界面信息。2、電壓測雖范圍0V4.96V,應有輸入被測電壓超雖程判斷及提示。3、應采取數(shù)字濾波技術提高測雖與顯示的穩(wěn)定性。4、基本顯示模式為:兩路被測電壓值按設定的節(jié)拍交替測雖與顯示,電壓值保留二位小數(shù)。5、設置一個“凍結”按鈕開關以操控進入或退出當前回路的凍結顯示方式,凍結顯示期間每約0.5S更新一次測雖值。6、設置一個“切換”按鈕開關以操控強行切換顯示下一檢測回路數(shù)據。7
4、、對開關雖輸入信號須進行軟件消抖動處理。8鍵盤設定交替測雖顯示的節(jié)拍范圍為0.5S5.0S,設定分辨率0.1V,設定界面應有醒目的當前修改位提示。9、無操作時間超過30秒鐘后自動恢復為基本的運行狀態(tài)。(二)功能擴展提示:(選做)1、開機進行接口部件及數(shù)碼顯示器、指示燈、訊響器等自檢。2、每隔一定的時間,穿插顯示實時鐘信息一定的時間,通過鍵盤設定其間隔參數(shù)。3、擴展顯示模式二:同時顯示兩路電壓測雖數(shù)據,每約0.5S更新一次測雖值,電壓值保留一位小數(shù)。設置一個“模式”撥動開關以選擇兩種顯示模式之一。4、超上限告警功能,通過鍵盤設定電壓上限值范圍為0V4.96V,監(jiān)測到某回路電壓超上限時有相應顯示內
5、容的閃爍提示、超上限LED指示燈亮、訊響告警及繼電器觸點輸出控制功能。5、實現(xiàn)帶有回差的超上限告警功能,通過鍵盤設定回差值的范圍為土0.10V士0.50V,設定回差分辨率0.01V。6、添加超下限告警功能。7、添加多擋雖程功能,如1.24V雖程、0.31Vi程。8其他功能擴展。2.總體方案設計與方案論證2.1總體方案的設計與方案論證.本課程設計的要求是顯示外部采集2路電壓,按一定的節(jié)拍進行巡回顯示,還有兩路之間來回切換功能,某一路的凍結功能,對兩路交替顯示的節(jié)拍進行設定,無操作返回顯示2路電壓的功能,每個功能都是根據相應的按鍵是否操作去執(zhí)行相應地程序,進而實現(xiàn)相應的功能,所以按鍵操作的正確判斷
6、是程序執(zhí)行的關鍵,其總的流程圖如下見如下框圖。芯片上電、復位再次按下PB顯示設定節(jié)拍界面按下圖1-系統(tǒng)軟件設計的整體思路框圖2.2開關雖的方案設計與論證方案一、表決法方案二、滾動濾波法對開關雖得輸入進彳亍滾存的方式,每次調用到開關雖子程序時,就把當前的狀態(tài)值賦給前態(tài),依次把前幾次的采集值推為舊態(tài),當這4次的開關雖采集的值一致時,才把當前的采集值采集存為新態(tài),在通過新態(tài)和舊態(tài)的值比較就可以達到消除抖動的效果,這種方法還可以實現(xiàn)按鍵是上升沿有效還是下降沿有效。2.3顯示查表的方案設計與論證方案一把帶小數(shù)點的斷碼也寫進斷碼表,顯示個位的時候直接查找有帶符號位的斷碼。方案二顯示過程中先判斷顯示是否到達
7、個位,如果到了就把個位的數(shù)據的最高位清零上述的兩種方案中,第一種方案比較麻煩,要編寫特定的帶符號位斷碼,要判斷是否到顯示個位時,才能查找?guī)Х栁坏臄啻a,雖然可以實現(xiàn)顯示個位時可以實現(xiàn)顯示小數(shù)點,但是編寫程序時,邏輯較方案二太過于麻煩,所以我選擇了方案二2.4電壓采集、計算方法與論證方案一、采用ADC0809對兩路的電壓的模擬雖得采集、轉換成數(shù)字雖,在經過標度轉換使其范圍在0?4.98V,采集進來的數(shù)字量采用滾存的方式,存儲最新的4次電壓值,并用其平均值進行標度轉換,在標度轉化中,對第一路和第二路的電壓分別進行計算,最后把其轉換成BCD碼送到顯示緩沖區(qū)等待顯示。方案二、采用ADC0809對兩路的
8、電壓進行采集,轉換成數(shù)字量,經過標度轉換使其雖程在0?4.98,在標度轉換中對第一路的電壓值和第二路的電壓值輪流計算,得到的數(shù)據為16進制數(shù),最后把其轉換成BCD碼送到顯示緩沖區(qū)等待顯示總上所述,在方案二中,沒有采用滾存的方式,這樣外界的電壓波動很頻繁時,會造成顯示波動,給人的第一感覺好像是這個系統(tǒng)不夠完善,還有在進行標度轉換時,對兩路的電壓輪流進行計算,這樣確實能夠實現(xiàn)系統(tǒng)空間的節(jié)約,但是如果使用切換功能時,此時剛剛還還沒有輪到某一路計算及標度轉換時,這樣顯示緩沖區(qū)得數(shù)據還是前一次的數(shù)據,無法顯示最新的數(shù)據,經過比較,方案一在這兩點上比方案二好,但是方案一在轉換標度時使用系統(tǒng)的空間比方案二大
9、,所以我選擇方案一。LE顯示乜一一轉化tW路電壓輸入ta2-系貌設計的殛件系統(tǒng)的框圖3?系統(tǒng)總框圖及總體軟件設計說明系統(tǒng)自檢初始化包括芯片初始化和工作初始化白檢包括對蜂鳴器、LED、每個數(shù)碼管的開關最掃描子程序一-V包括是開關量得消抖動,切換按鍵、凍結按1鍵,設定節(jié)拍按鍵拆字子程序第一部分:顯示第一路電壓的信息界面第二部分:顯示第二路電壓的信息界面第三部分:顯示設定節(jié)拍的信息界面鍵盤掃才苗子程序?利用鍵反轉法先讀出鍵的狀態(tài)在進行查表查出鍵碼當進行了限定顯示更新一智能雙路數(shù)字電壓表設計說明書包括顯示第一路和第二露南血壓信息1!圖3-系統(tǒng)軟件設計的總流程圖并解釋4?系統(tǒng)資源分配表已用單元功能空間1
10、0H1路電壓內碼低字節(jié)(二進制)29H11H1路電壓內碼筒字節(jié)(二進制)2AH12H2路電壓內碼低字節(jié)(二進制)2BH13H2路電壓內碼筒字節(jié)(二進制)2CH3DH電壓白分位2DH3EH電壓十分位2EH3FH電壓個位2FH40H1路1次30H41H2路1次31H42H1路2次32H43H2路2次33H44H1路3次34H45H2路3次35H46H1路4次36H47H2路4次37H48HAD采樣信號地址低字節(jié)位38H49HAD結果保持單元39H4BH進程碼存放3AHBITO凍結標志位1凍結BIT1更新輸入緩沖使能位BIT3閃20H爍亮滅標志位3BH4CH節(jié)拍時間單位0.1秒3CH4DH節(jié)拍輔助單
11、元10毫秒計數(shù)4AH21H輸出小數(shù)點標志位54H66H判斷當前按下的矩陣按鍵的值沒有按下位10H60H25H輸入允許標志位61H26H當前輸入位、閃爍標志位62H4EH閃爍計數(shù)63H59H當前輸入位允許輸入最小值64H5AH當前輸入位允許輸入最大值65H55H下限電壓內碼低字節(jié)(二進制)56H下限電壓內碼高字節(jié)(二進制)57H上限電壓內碼低字節(jié)(二進制)58H上限電壓內碼高字節(jié)(二進制)4FH十六進制低字節(jié)50H十六進制高字節(jié)51H個位52H十位53H百位5BH保存當前選擇路對應內存首地址5CH0.1秒計時單元22H報警標志位5DH回差值單位0.01V5EH凍結時保存節(jié)拍值5FH30秒無操作計
12、時C:撤銷D:確認F:功能E:鎖定B:切換5.局部程序設計說明5.1開關雖米集子程序開關雖消除抖動采用滾動慮波的方式消除抖動,其原理如下49H4AH4BH4CH4DH4EH4FH始地址每次采集的信號前,先把49H?4DH內的值一次往后推,再把采集的信號存入49H中,再通過比較49H?4DH的值,如果這四個單元內的值一致,則說明抖動時間已過,再把49H的采集的值存入4EH,最后通過比較4FH和4EH內的值來判斷按鍵是否按下,還可以根據編程邏輯使得按鍵在下降沿有效還是上升沿有效。5.2拆字子程序首先判斷20H里面存的程序代碼,在跳到相應的程序段去執(zhí)行。其原理圖如下:取當前路數(shù)取進程碼Jj禍在工IC
13、芋伐*口0Un界oFTehEMigy拆字子程序流程圖5.3電壓采集子程序兩路電壓米集是米用輪流米集,滾動儲存的方式。通過標志位來判斷是對第一路采集還是對第二路采集。其流程圖如下:采用滾動存儲的方式對采集的數(shù)值進行存儲標志位取反啟動下-路轉換A/D采集流程圖5.4標度轉換子程序這一過程是整個程序的核心所在,主要利用(D1+D2+D3+D4)*125/256這個標度轉換公式,這樣就可以實現(xiàn)所測的電壓量程在0?4.98V,在四次采集的數(shù)值乘以125的原理計算如下,因為計算的結果為3個字節(jié)的16進制數(shù),所以除以256就相當于把這三個字節(jié)向有移動8位,高位白動補0,當然還要判斷最后的那個字節(jié)是否要向上進
14、位(0舍1入)。4D的高字節(jié)4D的低字節(jié)125存放4D低字廿125存放4D高字節(jié)*125在上述過程中,最后結果取其前面兩個字節(jié),把最后一個字節(jié)0舍1入后,就相當于除以256,最后得到2個字節(jié)的16進制數(shù)即為轉換標度后的數(shù)值。最后再把16進制數(shù)轉換成BCD碼送到顯示緩沖單元即可。5.5鍵盤掃描子程序鍵盤掃描是利用鍵反轉法讀出鍵盤的電平值,通過查鍵碼表,把電平值轉化為K0-K16鍵分別變?yōu)?-16的數(shù)字,通過判斷寄存器中的鍵號,就能確定是那一個按鍵按下了。鍵反轉法的原理:(1)列線輸出為全0隨后輸入行線電平如有0:則0所在的行就是按鍵所在行。PBO是實現(xiàn)切換功能,其經過消除抖動后實現(xiàn)第一路和第二路
15、電壓信息的切換顯示,其源程序如下MOVA,4EH;判斷PB0是否有按下CJNEA,#0FEH,XDRMOVA,4FH;判斷前態(tài)是否為周電平CJNEA,#0FFH,XDRMOVA,20H;判斷此時的20H中的程序代碼,為1則賦2,為2則賦1CJNEA,#01H,JO;將48H單元清0,即將0.5S更新一次立即執(zhí)行MOV48H,#01;將2AH單元清0,即將白動切換的計數(shù)清0MOV2AH,#0MOV20H,#02H將無操作30S定時清0MOV3AH,#00HSJMPXDRJO:MOV20H,#01H;將48H單元清0,即將0.5S更新一次立即執(zhí)行將無操作30S定時清MOV48H,#01MOV3AH
16、,#00H;將2AH單元清0,即將白動切換的計數(shù)清0MOV2AH,#0PB1是實現(xiàn)凍結顯示某一路的電壓信息,其源程序如下MOVA,4EHCJNEA,#0FDH,XER;判斷PB1是否有按下MOVA,4FHCJNEA,#0FFH,XER;判斷前太是否為高電平MOV48H,#01CPL27H.0MOV3AH,#00H將0.5S更行立即更新;標記進入凍結狀態(tài)將無操作30S定時清0PB2是實現(xiàn)進入、退出設定節(jié)拍,其源程序如下MOVA,4EHCJNEA,#0FBH,XFRMOVA,4FH判斷PB2是否有按下CJNEA,#0FFH,XFRCPL27H.2;判斷前太是否為周電平;標記進入設定狀態(tài)MOV20H
17、,#03HMOV48H,#01MOV3AH,#00HJB27H.2,XFRMOV20H,#01;將程序代碼賦給20H將0.5S更行立即更新將無操作30S定時清0;退出設定界面是馬上顯示第一路,即U15.7改進后的切換功能在沒有改進的源程序,在設定節(jié)拍的時候,按下切換按鍵,也會實現(xiàn),這樣就導致設定標志位為1,如果這時候按下鍵號,也會實現(xiàn)節(jié)拍的修改。所就不會出現(xiàn)上述現(xiàn)象修改前的源程序:MOVA,4EHCJNEA,#0FEH,XDRMOVA,4FHCJNEA,#0FFH,XDRMOVA,20HCJNEA,#01H,JOMOV48H,#01以我的改進就是在切換功能程序的前面加上節(jié)拍標志位的判斷,這樣;
18、判斷PB0是否有按下;判斷前態(tài)是否為周電平;判斷此時的20H中的程序代碼,為1則賦2,為2則賦1;將48H單元清0,即將0.5S更新一次立即執(zhí)行修改后的程序:MOVA,4EHCJNEA,#0FEH,XDRMOVA,4FHCJNEA,#0FFH,XDRJB27H.2,XDRMOVA,20H;判斷PB0是否有按下;判斷前態(tài)是否為高電平;在設定節(jié)拍時,切換功能無效CJNEA,#01H,JOMOV48H,#01;判斷此時的20H中的程序代碼,為1則賦2,為2則賦1;將48H單元清0,即將0.5S更新一次立即執(zhí)行5.8標度轉換中的完善在沒有改進的源程序中,我是將兩路的電壓輪流計算,最后送到顯示更新緩沖單
19、元,這種方式在正常的第一路和第二路自動切換的情況下,可以滿足系統(tǒng)的要求,但是要是在手動切換的情況下,就不能顯示實時的數(shù)據顯示,原因在于第一路和第二路輪流計算的時候,剛剛好在計算第一路的情況下,手動切換,這時還沒有計算第二路的信息,只能顯示上一次的計算結果,而且在0.5S才進行一次計算的情況下,會出現(xiàn)數(shù)碼管跳竄現(xiàn)象。即切換后顯示的是上次的計算結果,過了0.5S后才能顯示最新的數(shù)據,無法實現(xiàn)一切換就顯示最新的數(shù)據。修改后的程序,只要將兩路的電壓同時計算即可解決上述的問題。六、系統(tǒng)功能與用戶操作使用說明6.1系統(tǒng)的功能定時切換及顯示功能八位LED7段數(shù)碼管顯示當前檢測回路的標識、電壓值及其單位或其他界面信息。設置節(jié)拍功能兩路被測電壓值按設定的節(jié)拍交替測雖與顯示,電壓值保留兩位小數(shù)。凍結功能設置一個“凍結”按鈕開關以操控進入或者退出當前回路的凍結顯示方式,凍結顯示期間每約0.5S更新一次測雖值。無操作時間超過30S后恢復基本運彳亍狀態(tài)功能設置上下限功能超上下限告警功能6.2、使用說明1?電壓表進行短暫開機復位后,八位LED7段數(shù)碼管交替顯示兩路電壓值。2羽下K15鍵可以進行功能選擇,然后按下K1鍵便進入設置節(jié)拍功能。然后用鍵輸入數(shù)值,然后按下K13確定就設置好節(jié)拍了。3羽下K15進行功能選擇,然后按K2,K3分別進入設置上下限。4羽下K14進行凍結功能,可以使當前路的電壓值停止
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年高中教師工作總結經典版(2篇)
- 2024年初三第一學期班主任工作計劃(4篇)
- 2021年10月廣西中共南寧市青秀區(qū)委員會組織部公開招聘行政輔助人員工作人員簡章沖刺卷(一)
- 2021年10月廣西南寧市江南區(qū)科學技術局公開招聘強化練習題(一)
- 2021年10月廣西來賓市興賓區(qū)糖業(yè)發(fā)展局(“雙高”辦)公開招聘編外人員強化練習題(一)
- 中學“美德進課堂”活動實施方案(2篇)
- 宣傳月活動方案(6篇)
- 2024年物業(yè)客服年終工作總結參考樣本(5篇)
- 大學各班委職責范文(2篇)
- 2024年二年級小學生國旗下講話稿(6篇)
- 管理評審輸入材料
- GB/T 43657.2-2024工業(yè)車輛能效試驗方法第2部分:操作者控制的自行式車輛、牽引車和載運車
- VR游戲設計與制作智慧樹知到期末考試答案2024年
- 堅持立足中國又面向世界講解
- 市政道路技術標
- 2024年衛(wèi)生系統(tǒng)招聘考試-衛(wèi)生系統(tǒng)招聘考試(公共衛(wèi)生管理)筆試歷年真題薈萃含答案
- 病情突變應急預案護理課件
- 工業(yè)機器人大學生職業(yè)生涯規(guī)劃
- 企業(yè)風險管理與人才培養(yǎng)的關系
- 招標代理機構內部監(jiān)督管理制度
- 部編版一年級語文上冊第八單元
評論
0/150
提交評論