單片機有著簡單實用、可靠性高、性能好、性價比及體積小等優點,在各大技術領域內得到了快速發展。
數字電壓表,稱為DVM,是一種使用數字測量技術將連續模擬(直流輸入電壓)轉換成不連續和離散的數字形式并顯示它們的儀器。傳統指針式電壓表功能單一,精度低。它不能滿足數字化時代的需要。采用單片機實現的數字電壓表具有精度高、抗干擾能力強、擴展性強、集成方便等特點,并能與PC機實時通信。目前,由各種單片A/D轉換器組成的數字電壓表已廣泛應用于電子電氣測量、工業自動化儀表、自動測試系統等智能測量領域,顯示出巨大的生命力。同時,由DVM擴展的各種通用、專用數字儀表也使電能測量技術和非電測量技術進入了一個新的水平。本設計著重于單片機A/D轉換器的工作原理和基于單片機的數字電壓表。準確可靠的電壓測量在大學物理教學中具有重要意義。在研究目前主流電壓表設計方案的基礎上,提出一種新型數字電壓表的設計方法,極大地增強了系統集成度和電路可靠性。以Altera 公司高性價比的AT89C51芯片為控制核心,以較高性能的模/ 數轉換器為信號采集芯片,完成電壓數據的采集、轉換、處理、顯示,并實現了檔位的自動轉換和較寬的測量范圍。
本次設計系統是以AT89C51單片機為核心,輔以簡單的控制電路,設計了一種切換量程的數字電壓表。系統中,模擬電壓信號由A/D轉換器TLC2543采集,以數字信號的方式傳給單片機進行處理,并加以控制。控制系統包含硬件和軟件兩部分。硬件部分包括:單片機最小系統、電壓采集電路、量程控制電路、電壓顯示電路以及其他一些外圍接口電路。軟件部分包括:主程序的流程設計,其涵蓋了電壓采集子程序、字符轉換子程序、LCD液晶顯示子程序等,這些子函數都體現出系統軟件設計模塊化的結構特點。通過單片機對信號處理并加以適當的算法控制,從而驅動相應的硬件電路,實現電壓控制的目的。
系統硬件結構:
系統是以AT89C51單片機作為主控器,通過擴展必要的外圍接口電路,包括電壓采集、輸入和輸出、電壓的量程控制、顯示等電路,實現數字電壓表的系統化設計。
系統主程序的設計:
系統主程序的主要功能是負責電壓采集、處理、顯示三部分,本次設計主要包括以下方面:
1、按照硬件電路對單片機位定義。
2、編寫延時模塊子程序。
3、編寫液晶顯示器1602的初始化子程序。
4、編寫驅動1602液晶顯示模塊程序。
5、編寫驅動A/D轉換模塊程序。
6、編寫A/D轉換后對電壓的處理函數子程序
7、編寫鍵盤掃描模塊程序。
其程序設計流程圖2如下所示:
系統經過復位后,先對單片機、模/數(A/D)轉換器、液晶顯示屏LCD1602等進行初始化,初始化完成后通過輸入電路給數字電壓表輸入模擬電壓,在電壓測量過程中,先通過滑動變阻器來控制輸入信號的衰減率、通過按鈕來選擇不同的檔位,然后調用A/D轉換子函數,并對模/數轉換的結果進行簡單的處理,最后通過液晶屏LCD1602進行顯示。
系統整體硬件電路圖3如下(proteus環境):
硬件設計注意事項:
整個系統的模擬地和數字地不要交叉共地,模擬地和數字地要分別獨立開來,避免信號之間的干擾。同時液晶的讀寫要注意它們之間的時序,最好要弄清它的型號和用戶手冊中的提到的地址問題,再進行它與單片機之間的數據讀寫操作。不僅如此,器件之間的兼容性和工作最大電流和電壓問題也是本次硬件設計的重點。
一個單片機應用系統的硬件電路設計包含有兩部分內容:一是系統擴展,即單片機內部的功能單元,如ROM、RAM、I /O口、定時/計數器、中斷系統等容量不能滿足應用系統的要求時,必須在片外進行擴展,選擇合適的芯片,設計相應的電路。二是系統配置,即按照系統功能要求配置外圍設備,如鍵盤、顯示器、打印機、A/D、D/A轉換器等,要設計合適的接口電路。在本系統中,AT89C51單片機內部的功能單元已經能夠滿足系統設計需要,不需要系統擴展。按系統功能需求,需要配置檔位轉換、LCD顯示等。系統的擴展和配置設計遵循下列原則:
1、盡可能選擇典型電路,并符合單片機的常規用法;
2、系統的擴展與外圍設備配置的水平應充分滿足應用系統的功能要求,并留有適當的余地,以便二次開發;
3、硬件結構應結合應用軟件方案一并考慮。硬件結構與軟件方案會產上相互影響,考慮的原則是:軟件能實現的功能盡可能由軟件實現,以簡化硬件結構,但由軟件實現的硬件功能,其相應時間要比直接用硬件實現來得長,而且占用CPU時間;
4、整個系統中的相關器件要盡可能做到性能匹配;
5、可靠性及抗干擾設計是硬件系統設計不可缺少的一部分,它包括芯片、器件選擇等;
6、該系統的所有元器件必須滿足5V的工作電壓。