前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇單片機最小系統范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
【關鍵詞】Mentor EE 2005 80C51 MAX232DB-9
1 系統架構
單片機最小系統共有以下幾部分組成,其中包括外部40腳(DIP)MCS-51單片機、外部晶振電路、兼容RS―232標準MAX232單電源電平轉換器以及DB―9作為串口通信數據線、復位電路、P0口接上拉電阻、電源、地等等幾個部分,如圖2-1所示,下面就一些主要部分進行闡述。
1.1 外部晶振電路
單片機XTAL1和XTAL2兩個端子用來外接石英晶體和微調電容,使其構成一個穩定的自激振蕩器,兩個端腳用來連接8051片內OSC的定時反饋回路,石英起振后,可以作為單片機的時鐘輸入。本系統中,晶振采用12MHz的石英晶體,起振電容采用30pf。
1.2 復位電路
單片機最小系統采用上電自動復位和手動按鍵復位兩種方式實現系統的復位操作。本系統采用上電自動復位方式,其要求是接通電源后,自動實現復位操作。電路原理如下所示。
1.3 P0口
P0口作為開漏輸出,作為輸出口時,需加上拉電阻,阻值一般為10K。
1.4 外部通信電路(RS-232及DB-9)
MAX232芯片是雙工發送器/接收器接口電路,專為RS-232標準串口設計的單電源電平轉換芯片,使用+5v單電源供電,其功能可以將RS-232的邏輯電平轉換為TTL電平,并且利用D9插口視線串行輸入,其類型為Female。
2 建立中心庫
2.1 新建一個中心庫
(1)雙擊圖標,打開dash board并且在工具欄雙擊library manager;
(2)選擇File/New命令新建一個中心庫,選擇以下路徑:C:\Mentor_project\Mentor-binhai-lessons\demo并且單擊ok鍵。(可以在windows界面瀏覽demo文件夾,察看中心庫包含的文件)注意將中心庫設置為DxDesigner-Expedition PCB;
(3)建立一個新的中心庫以后Library Manager界面會以樹形目錄展示,中心庫由Parts、Cells、Symbols、Models和Padstacks五個子庫構成;
2.2 設置中心庫公共屬性
(1)單擊Tools/Property Definition Editor命令打開公共屬性設置對話框;
(2)選中“Cost”屬性,系統則會把這個屬性分配給中心庫,確認無誤后,單擊ok鍵存儲屬性并退出屬性定義編輯器;
2.3 設置屬性校驗
(1)單擊Setup/Property Verification命令打開屬性校驗設置對話框;
(2)在屬性校驗設置對話框中,選中用戶使用的工具,以確保用戶的庫入口被校驗滿足設計需要并與其他下游工具一致;通常情況下該類屬性為默認值,不必用戶自行修改;
2.4 建立中心庫分區
(1)單擊Setup/Partition Editor命令打開分區設置對話框;
(1)分區編輯器有四個選項卡,分別對應Parts、Cells、Symbols和Models四個子庫。右上角星型標志按鍵是新建一個分區操作,叉號標志按鍵是刪除一個分區操作;為以下四個字庫建立分區:
Symbols:dis,ic,conn,compo,borders;五個分區;
Cells:dis,ic,conn;三個分區;
Parts:dis,ic,conn;三個分區;
建立完成后,單擊ok按鈕存盤退出。現在,可以在瀏覽的目錄內看到新建的分區,但這時分區內還沒有元素。
2.5 建立分區檢索路徑
(1)建立分區之后,需要設定分區的檢索路徑,即分區的檢索順序, 單擊Setup/Partition Search Paths命令打開分區檢索路徑設置對話框;
(2)左邊區域可以設定多個檢索路徑并為每個檢索路徑命名,可以在設計過程中快捷切換檢索路徑;右邊區域具體設定某一個檢索路徑的分區檢索先后順序;
2.6 單位顯示設置
(1)用戶通過單位顯示設置可以設置電氣、物理屬性的計數方式和精度,可以設置電氣單位及顯示格式等;單擊Setup/Units Display來打開單位顯示設置對話框;
(2)在Electrical units單元框中選擇SI 4 12.1234M,在下面的Physical Dimensions&Other Units中分別選擇Decimal 3 123.123和Time 2 123.12pS兩個選項,單擊ok鍵存儲退出該對話框。
2.7 參數設置
(1)用戶可以通過參數設置對話框設置板層、過孔定義、過孔間距等參數的默認;單擊Setup/Setup Parameters命令可以打開參數設置對話框;
(2)General選項卡可以設定焊盤技術、顯示單位、測試點設置以及板層設置;Via definitions定義過孔,via clearances定義過孔間距;在General中的Display units中選擇Millimeters,以毫米作為默認單位。至此,中心庫的建立完成。
3 制作分立元件
3.1 制作電源
(1)單擊Tool/Symbol Editor可以打開符號編輯器;選擇File-Preferences命令,打開Preferences窗口,設置首選項,默認選擇General設置常規選項;
(2)單擊File/New命令可以打開新建對話框;
(3)界面左側是符號屬性設置區域,右側是符號繪制編輯區域;設置Symbol Name為dis:VCC,設置Symbol Type為PIN,即可以建立一個新的符號VCC,并將其存放到dis分區。
(4)設置Attributes選項卡參數:Netname=VCC; Pinorder=VCC。
(5)在圖形編輯區中選中矩形框,按delete鍵將其刪除。打開Preferences對話框,在General中將格點設置為0.05in,單擊工具欄中Line按鈕,在圖形編輯器中按住鼠標左鍵不放并拖曳,可繪制線段,按要求繪出電源三角形符號。
(6)單擊工具欄中Add PIN and Edit按鈕,在繪圖區中合適的位置單擊鼠標左鍵,將引腳放置在圖紙中并輸入VCC,按Enter鍵確認,將Pin Lable屬性設置為VCC,按Esc鍵退出添加引腳模式。
(7)單擊File/Save命令保存剛剛所做的符號VCC;保存路徑為C:\mentor_project\Mentor-binhai-lessons\demo\symbolLibs\dis\sym。
3.2 制作電容、電阻、地
(1)在dis分區文件夾上單擊鼠標右鍵,選擇New Symbol。在彈出的對話框中輸入符號名resistor,單擊ok進入Symbol Editor界面。
(2)在屬性編輯區中將Symbol Type屬性改為MODULE;在菜單欄中選擇Symbol―Symbol Attributes―Add REFDES命令,添加REFDES屬性,將屬性值改為R?。
(3)將繪圖區的格點改為0.025in,單擊工具欄中的Line按鈕,在繪圖區按下鼠標左鍵不放并拖曳,繪制成間隔三角形形狀,即可完成電阻的形狀繪制。
(4)單擊工具欄中的Add Pin and Edit按鈕,添加兩個引腳,分別為A和B。選中引腳A,在引腳屬性編輯區添加屬性“#=1”,將引腳A設置為1號引腳,用同樣的方法將引腳B設置為2號引腳。在屬性編輯區將Port Type屬性設置為ANALOG。調整文字位置,將引腳名隱藏,單擊Save按鈕保存符號。
至此,電阻的手工繪制已經完成,電容和地的繪制原理與電阻相同,下面闡述其參數設置,如表1。
4 繪制單片機80C51外形符號
(1)在庫瀏覽目錄中的ic分區文件夾上單擊鼠標右鍵,在右鍵菜單中選擇Symbol Wizard。在彈出的New Symbol name對話框中輸入符號名“80C51”,單擊ok鍵,進入Symbol Wizard界面的Step 1對話框,選擇Create new symbol選項,選中What block type will the欄中的Module項。
(2)單擊下一步,進入Step 2,可以看到在Symbol Wizard中已經自動分配了符號名及所在分區。
(3)單擊下一步,在彈出的對話框中保留Pin Parameters的默認值,將Display settings欄中的Text設置為12,選中Add PCB layout attributes to the symbol復選框。
(4)單擊下一步,在彈出的對話框窗口中已經自動添加的PCB設計所需要的5條屬性,即DEVICE、REFDES、RARTS、LEVEL和PKG_TYPE,這里附加兩條屬性:“SIGNAL=VCC;40”和“SIGNAL=VSS;20”。注意這里要將DEVICE和REFDES的Visible選項設置成Value值。
(5)單擊下一步按鈕,在彈出度對話框中進行引腳定義。
這里要注意利用向上箭頭調整各個引腳的位置,定義完成后,會彈出一個對話框,詢問是否展開總線引腳,單擊是按鈕。至此,80C51外形定義完成。
5 繪制MAX232及DB-9通信串口
5.1 DB-9串口繪制
(1)打開Symbol Editor窗口。在Design Capture Symbol Editor菜單欄中選擇Place-Line命令,在編輯區單擊鼠標左鍵,確定線段起點。移動鼠標,使之完成一個倒梯形的圖形繪制,便是DB-9的外形符號。格點設置為0.1in。
(2)添加圓形及圓弧。單擊Circle命令,在編輯區單擊鼠標左鍵,確定圓心位置,移動光標,確定半徑,在合適位置單擊鼠標左鍵,添加一個圓形。利用ctrl+c和ctrl+v復制8個圓形在梯形框內。格點設置為0.05in。
(3)單擊Place工具欄中的Arc圖標,在編輯區單擊鼠標左鍵,確定圓弧的兩個端點,將光標置于兩個端點之間,移動光標,改變圓弧的曲率,確定后單擊鼠標左鍵,添加完成。格點設置為0.01in。
(4)在Design Capture Symbol Editor中選擇Place-Pin命令,進行引腳添加。選中1、3、5、7、9腳后,選擇Place-Text命令,選擇Type/Value選項卡,在Type下拉列表選擇Pin Name,添加引腳名;選中Auto increment/decrement,按遞增或遞減方式添加引腳名;在Prefix中輸入P,在Value中輸入起始值1,在Delta中輸入增量值為1。選擇Front選項卡,可以設置文字外觀,單擊ok按鈕,為選中的引腳添加引腳名,依次為P1,P6,P2,P7,P3,P8,P4,P9,P5。
(5)選中一個或幾個引腳單擊鼠標右鍵,選擇Properties,打開對話框,選擇General選項卡,在Pin type下拉列表中選擇Bidirectional選項,單擊ok完成編輯。最后,單擊Save鍵保存。串口編輯完成。
5.2 繪制接口電路MAX232
(1)在Design Capture Symbol Editor菜單中選擇Tool-Fractured Symbols-Create New Part命令,打開對話窗口。按照元器件數據手冊提供的參數在表格區域中輸入引腳信息,則在預覽窗口中會實時顯示元器件符號的圖形。
(2)輸入完成后,單擊Create New Fracture按鈕,彈出對話框,輸入分割塊名Symbol。單擊確定按鈕,此時會在Fractured Symbol Partitioner對話框新建一個面板Symbol,打開Master面板,在Fracture列中將所有引腳分配給分割塊Symbol。
(3)單擊Generate按鈕,彈出保存窗口,將文件保存為“MAX232.fsp”。
6 DxDesigner原理圖輸入
6.1 路徑選擇
打開DxDesigner,選擇File-New命令,彈出對話框。選擇Project選項卡,在Categories欄中選擇DxDesigner,在右側的Types欄里選擇類型為Default,在Name欄中輸入demo_dx,在Location欄中設置項目路徑為C盤。
6.2 設計配置
(1)單擊Dxdesigner中的Design Confi圖標,彈出對話框。選中Library Manager Central Library選項下的Path,單擊Path欄右邊的按鈕,在彈出的Select Library Manager Central Library窗口中,找到剛才建立的中心庫。
(2)選中Zoom Style子選項,在右側的下拉列表中選擇Enable。
(3)選中Expedition PCB選項下的Layout Template子選項,單擊右邊的按鈕,彈出對話框,指定文件路徑,即為設計選擇了一個4層PCB模版。
(4)選擇配置文件,接著創建項目文件,方法同上,路徑皆為C盤。
(5)項目編輯。單擊Design Configura tions下拉列表框,選擇Expedition PCB選項。在項目瀏覽目錄中,鼠標右鍵單擊Design Roots[STD],在彈出的右鍵菜單中選擇Invoke Project Editor選項。在彈出的窗口中,在Search order scheme下拉列表中選擇Central Library default選項。單擊ok,完成設置。
(6)導入元器件庫。用鼠標右鍵單擊項目瀏覽目錄中的Libraries,從右鍵菜單中選擇Add Library命令,在彈出的窗口中單擊右邊的按鈕,彈出Browse for Library Folder,查找庫文件,單擊確定按鈕,可將選中的庫。
6.3 原理圖輸入
(1)在DxDesigner菜單欄中選擇File-New命令,在Categories列表中選擇Dxdesigner,在Types列表中選擇Schematic,在Name中輸入文件名Deme_Root_1。
(2)基本項目設置。在Dxdesigner菜單欄中選擇Project-Settings命令,彈出對話框,打開Project選項卡,進行基本的參數設置。
(3)添加PDB Device。在Dxdesigner菜單欄中選擇Add-Device From PDB命令,打開Place Device對話框。在Partition下拉列表中,選擇分區ic,將所定義的原件依次放置再合適的位置上,單擊Place進行放置,直到元件數量和類型達到系統的要求為止。
(4)點擊DxDesigner工具欄中的Line選項,按系統設計要求將各個部分無縫連接起來,即可最終完成原理圖的輸入,至此,設計完成。
7 生成PCB網絡表
在Dxdesigner菜單欄中選擇Tools-Create PCB Netlist命令,打開View PCB窗口,在Basic選項卡中,將網絡表格式改為Expedition,單擊Use Default Configuration File按鈕,將PCB配置文件設置“Expedition。Cfg”。根據需要配置Advanced選項卡后,單擊Run按鈕,運行View PCB。至此,全部設計完成。
關鍵詞:智能充電器;自主選擇;保護;單片機控制
一、引言
本文選用AT89S51單片機作為控制芯片,設計了智能充電器系統。該系統經過測試,具有一定的穩定性,并且可以根據用戶需要進行自主選擇充電方式,而且在充電過程中能對被充電電池進行保護從而防止過電壓。
二、智能充電器的發展
電池充電是通過逆向化學反應將能量存儲到化學系統里實現的,由于使用的化學物質的不同,電池的特性也不同,其充電的方式也不大一樣。現代的快速充電器( 即電池可以在小于3 個小時的時間里充滿電,通常是一個小時) 需要能夠對單元電壓、充電電流和電池溫度進行精確地測量,在充滿電的同時避免由于過充電造成的損壞。
鋰電池具有較高的能量密度,與其它電池相比具有體積小、重量輕等優勢,但對保護電路要求較高。在電池的使用過程中,需要嚴格避免出現過充、過放電現象,通常鋰離子電池充電方式為恒流-恒壓方式。為保證安全充電,一般通過檢測充電電池的電壓來判斷電池是否充滿,除電壓檢測外還需采用其它的輔助方法作為防止過充的后備措施,如檢測電池溫度、限定充電時間等輔助方法。
三、智能充電器原理
設計的充電器具有檢測鎳氫電池的狀態,自動切換電路組態以滿足充電電池的充電需要。充電器短路保護功能,以恒壓充電方式進入維護充電模,充電狀態顯示的功能。根據系統的需要設計了以89c51為主芯片的電源供電系統,鍵盤模塊采用了行列掃描的4*4鍵盤,顯示模塊采用了4位7段數碼管,溫度控制模塊采用發光二極管代替,軟件部分主要設計了以C語言為開發工具。進行了詳細設計和編碼。
在操作過程中,首先按復位鍵初始化,然后調節LED以及各個硬件。接著按鍵1加電壓,然后按鍵2減電壓,直到達到對充電電池準確的電壓為止,最后返回。
三、智能充電器顯示部分程序的設計
為了節省開發成本,系統使用的是LED數碼管顯示器。為了使系統便于調試,最終采用了動態掃描顯示方式的方案。LED數碼管顯示部分電路如圖1所示。
圖1 LED數碼管顯示電路原理圖
LED數碼管顯示塊是一種常用的顯示器件,由發光二極管構成顯示字段。在微機應用系統中通常使用的是七段LED。七段LED顯示塊中有8個發光二極管,故也稱八段顯示器,其中7個發光二極管構成七筆字形“8”,1個發光二極管構成小數點。七段LED顯示塊與微機接口非常容易,只要將1個8位并行輸出口與顯示塊的發光二極管引腳相連即可,8位并行輸出口輸出不同的字節數據即可獲得不同的數字或字符。一般1個七段LED顯示塊可顯示的內容有限。
從圖1中可以看到,本設計使用的是共陽型四位一體的七段LED數碼管顯示塊。因為在與單片機連接時,單片機的通用輸出端口無法給LED數碼管足夠的驅動電流,所以本設計給出了一種簡單的驅動電路。此驅動電路使用的是市面上價格便宜的PNP型三極管,型號為S8550。LED數碼管顯示系統的段選端與單片機的P0口連接,位選端連接驅動電路后,與單片機P2口的低4位連接。
硬件電路設計是整個系統最關鍵部分,硬件電路主要包括單片機控制電路,保護電路,輸出電路等。
四、單片機最小系統電路的設計
單片機的最小系統,又可以稱為最小應用系統,是指用最少的元件組成的單片機可以工作的系統。對于51系列單片機來說,最小系統一般應包括:復位電路、晶振電路、單片機。STC89C52單片機最小系統圖見圖2。
圖2 STC89C52單片機最小系統圖
復位電路:是由電容串聯電阻構成的,當系統一上電的時候,RST腳就會出現高電平,高電平持續的時候是由電路的RC值的大小確定的,當RST腳的高電平出現兩個機器周期以上就會執行復位操作。本系統設計中,當程序運行不正常或者停止運行時,系統就要進行復位操作。
晶振電路:典型的晶振取值為11.0592MHz,晶振周期就是(1/11.0592)μs。在正常工作的情況下可以采用更高頻率的晶振,51單片機最小系統晶振的振蕩頻率直接影響單片機的處理速度,頻率越大處理速度越快。
在STC89C52單片機最小系統中,RST引腳是復位信號的輸入端,復位信號是高電平有效,其有效時間維持在兩個機器周期以上。X1和X2兩個引腳為芯片內部振蕩電路的輸入端與輸出端,在X1、X2 的引腳上外接定時元件(一個石英晶體和兩個電容),內部振蕩器便能產生自激振蕩。
在設計過程中,力求硬件線路簡單,充分發揮軟件在編程方面靈活的特點,來滿足系統設計的要求。本設計實現了低功耗、低價格,提高了系統的可靠性和可擴展性。
參考文獻
[1] 張道德.單片機接口技術.第一版.中國水利水電出版社,2007.
[2] 閻石.數字電子技術基礎[M].北京:高等教育出版社,1998.
關鍵詞:單片機;流水燈;教學改革
作者簡介:王學惠(1974-),女,黑龍江友誼人,黑龍江科技學院機械學院,副教授;劉元林(1970-),男,山東平陰人,黑龍江科技學院機械學院,教授。(黑龍江?哈爾濱?150027)
基金項目:本文系黑龍江省高等教育學會“十二五”課題(編號:HGJXHB2 110872、HGJXHB1 110856)的研究成果。
中圖分類號:G642.0?????文獻標識碼:A?????文章編號:1007-0079(2012)28-0050-01
“單片機原理及應用”是機械工程專業的一門專業平臺課,課程內容側重于實際應用。該課程的教學對象是機械工程專業的學生,他們已具備一定的電工學和計算機及控制理論知識,教學上應以單片機結構及應用設計為主,使學生通過本課程的學習,具備獨立設計單片機測控系統的能力,能對單片機的組成原理和結構有比較深刻的理解,基本掌握單片機應用系統設計方法,可靈活地使用芯片構成單片機應用系統,具備單片機硬件設計和軟件編程能力。
為了在現有的學時中盡快引導學生入門,使其在理論分析與實踐兩個方面的能力都有所提高,教師從課程內容體系安排和考核方式等方面進行了一定的探索和研究。
一、“單片機原理及應用”課程教學的現狀及存在問題分析
“單片機原理及應用”是一門理論與實踐聯系非常緊密的課程,目前的課程教學包括理論和實踐教學兩部分。下面就從理論和實踐教學兩個方面入手,分析目前單片機課程教學的現狀及存在的問題。
1.理論教學現狀及存在問題
理論教學是單片機課程教學的重要組成部分,也是實踐教學的基礎。目前理論教學主要依賴于課堂教學,傳統的理論教學主要依賴于黑板教學。計算機技術的發展和多媒體技術在教學中的廣泛應用,在一定程度上提高了課堂教學的效果。另外,啟發式、講授式等多種教學方法以及圖片、動畫、視頻等手段在多媒體課件中的應用,有效地提高了學生對理論知識的理解。但是,就教學效果而言,學生學到的只是單片機的理論,而且學習手段單一,枯燥,致使學生學得吃力,老師教得辛苦,教學效果也沒有顯現出來。學生不知道其所以然,自然也不知道單片機到底是如何工作,如何實現系統控制的,致使學生學習興趣不濃。沒有實踐的支撐,理論的教學就達不到預期的效果,自然理論也不能指導實踐。
2.實踐教學現狀及存在問題
目前的實踐教學主要形式為課內實驗,偏重于做一些常規的驗證性、認識性實驗,綜合性、設計性實踐環節較少,嚴重影響學生的動手實踐能力,不能很好地發揮學生自主學習的潛力,就業競爭優勢不明顯。[1]實驗課的教學采用實驗箱,進行實驗時,學生只要對硬件按照實驗說明進行簡單連線就可以完成,并不清楚原理。[2]這種方法對學生而言,大量的概念都是第一次接觸,而且抽象,沒有感性認識,往往不能充分理解理論知識,沒有創新性,沒有問題的提出,激發不了學生的學習興趣。
從以上現狀及存在問題可看出,該課程教學的主要矛盾點在于理論和實踐教學相脫節,理論教學單純學理論知識;實踐教學浮于形式,只演示一遍而已,不利于學生實踐技能的培養,更談不上工程應用能力的培養,不利于培養目標的實現。理論教學缺乏實踐的支撐和驗證,使得理論教學無的放矢。實踐教學也不能對理論教學起到很好的推進作用,最有效的方法是改革現有的課程教學體系,在實踐教學中學習理論知識,加深對理論知識的理解和運用,使得理論教學有的放矢。采用理論和實踐教學有機結合的方法,有利于提高學生的工程應用能力。
二、課程教學內容體系改革
本課程主要講述MCS-51系列單片機的硬件結構、組成原理和指令系統,并結合實例,重點介紹單片機應用系統的設計方法。對于實踐性、應用性很強的機械專業課程來講,實踐教學系統是關鍵環節。[3]
1.課程教學內容的制定
課堂教學是實踐教學體系中最重要的環節,其質量的好壞直接影響學生的學習態度與學習效果。[4]課程理論教學內容分為基本內容教學和擴展內容教學兩部分。在基本內容教學中以流水燈為課程主線,將最小系統、基本指令、中斷、定時器等內容融會到這個主線當中,以實際制作的流水燈為依托,不改變硬件結構,采用不同的方法實現燈的流水過程,從而深入淺出地把復雜的理論應用到具體的實踐中。擴展內容教學主要是在基本教學內容的基礎上,擴展芯片(如A/D、D/A、顯示及鍵盤等芯片)構成單片機應用系統。
2.實作部分內容安排
黑龍江科技學院應用型本科人才培養的目標是培養學生的工程實踐能力,能夠動手制作單片機應用系統是單片機原理及應用課程所期望達到的培養目標。為實現這一目標,針對單片機這門實踐性很強的課程,必須構建以實踐為主線的課程教學體系,提高實踐環節在課程中的比重,尤其是實際用單片機制作完成一個系統,使學生在教中學,學中作,以作促學。
通過具體的實物制作,激發學生的興趣,使學生能夠真正體會到學習的樂趣。結合理論教學的內容,實作也分成兩個部分,一部分是以單片機為基礎的流水燈制作,另外一部分是以單片機為基礎的擴展制作。學生在熟練掌握基本技能的基礎上,以完成自選、綜合設計性內容為目的,教師引導學生自行選題、自主設計實作過程、自我選配實驗器材。[5]
三、教學改革的具體實施
關鍵詞:單片機;電加熱;道岔除雪
前言:冬季降雪,特別是大(暴)雪災害天氣,給鐵路運輸安全、暢通帶來極大困難。道岔積雪和結冰,將導致道岔轉換不良、進路不能鎖閉、信號不能開放,由此引發的車站咽喉堵塞、列車受阻運行晚點以及職工傷害的危險因素增多,一瞬間的疏忽就可能造成事故。因此做好除雪保暢通工作,直接關系著鐵路運輸安全正點和平穩有序,必須予以高度重視。
一、電加熱融雪法概況
電加熱融雪法,就是在道岔上安裝加熱裝置,使用前啟動加熱裝置,融化道岔部位的積雪,目前在一些高速鐵路和一些樞紐的關健道岔上使用。道岔融雪系統由控制中心、控制柜、環境監測裝置、電加熱元件、隔離變壓器、連接線纜和通道組成,適用于各種類型道岔融雪的需要,當發生降雪或溫度變化時,系統可自動啟動電加熱融雪電路,并且根據電加熱系統類型的不同,采取相應的人工設置,保證道岔正常轉換。結構圖如圖1所示。
二、硬件最小系統設計
本系統包括單片機的晶振電路和復位電路。
1、單片機的晶振電路
單片機內部有一個高增益反向放大器,用于構成振蕩器,引腳XTAL1和XTAL2分別是此放大器的輸入和輸出端。在單片機的XTAL1和XTAL2兩端跨接晶體振蕩器X1和X2,就構成了穩定的自己振蕩器,其發出的脈沖直接送入內部時鐘發生器。電容的值為30pF。為了減少寄生電容,更好地保證振蕩器穩定可靠地工作,諧振器和電容應盡可能安裝得愈單片機芯片靠近。
2、復位電路
在由單片機構成的微型計算機系統中,由于單片機的工作會受到來自外界電磁場的干擾,造成程序的跑飛,而陷入死循環中,所以出于對單片機的運行狀態進行實時監測的考慮,便產生了一種用于監測單片機的程序運行狀態芯片,俗稱“看門狗”。
看門電路的應用,是單片機可以在無人的狀態下實現連續工作,其工作原理是:看門狗芯片和單片機的一個I/O引腳相連,這一程序語句是分散的放在單片機其他控制語句中間的,一旦單片機由于干擾造成程序跑飛而陷入某一程序段不進入死循環狀態時,些看門狗引腳的程序便不能被執行,這個時候,看門狗電路就會由于得不到單片機送來的信號,便在它和單片機復位引腳相連的引腳上送出一個復位信號,使單片機發生復位,即使程序從程序存儲器的起始位置開始執行,這樣實現了單片機的自動復位。
利用計數器CD4060構成的看門狗的電路CD4060的定時時間數由C1和R1決定,經Q1分頻后定時產生一個復位脈沖。當系統工作不正常時,看門狗電路就會向系統發出復位信號。防止系統出現死機等問題。
當RESET從高電平變為低電平以后,單片機從0000H地址開始執行程序。在復位有效期間,ALE和/PSEN引腳輸出高電平。
3、最小系統電路圖
如圖2所示,在單片機的XTAL1和XTAL2兩端跨接晶體振蕩器X1和X2,就構成了穩定的自己振蕩器,其發出的脈沖直接送入內部時鐘發生器,看門狗的RESET引腳與AT89C52的RESET引腳相連,當RESET信號從高電平變為低電平以后,單片機從0000H地址開始執行程序。在復位有效期間,ALE引腳和/PSEN引腳輸出高電平。由此,構成了本系統的單片機最小系統。
三、軟件設計流程圖
系統設計時,除了系統硬件設計外,大量的工作就是如何根據每個生產對象的實際需要設計應用程序。因此,軟件設計在微機控制系統設計中占重要地位。對于本系統,軟件更為重要。
在單片機控制系統中,大體上可分為數據處理、過程控制兩個基本類型。數據處理包括:數據的采集、數據檢測等。過程控制程序主要是使單片機按一定的方法進行計算,然后再輸出,以便控制生產。
為了完成上述任務,在進行軟件設計時,通常把整個過程分成若干個部分,每一部分叫做一個模塊。所謂“模塊”,實質上就是所完成一定功能,相對獨立的程序段,這種程序設計方法叫模塊程序設計法。
模塊程序設計法的主要優點是:
1、單個模塊比起一個完整的程序易編寫及調試;
2、模塊可以共存,一個模塊可以被多個任務在不同條件下調用;
3、模塊程序允許設計者分割任務和利用已有程序,為設計者提供方便。
本系統軟件采用模塊化結構,由主程序AD子程序、鍵盤子程序、顯示子程序和輸出控制子程序。
【關鍵詞】555;多諧振蕩器;單片機;LCD1602
1.引言
在電子儀器、儀表的制造及使用行業,有大量的印刷電路板需要調試、測量與維修[1],需要對電阻電容的數值進行測試。
本文介紹了一種基于AT89C51單片機和555定時器的數顯式電阻和電容測量系統設計和仿真,然后制作出電路實物,實現系統的功能。系統利用555定時器和待測電阻(或電容)組成多諧振蕩器,通過單片機定時器測量555輸出信號的周期,根據周期和待測電阻(或電容)的數學關系再計算出電阻(或電容)值,再通過1602液晶顯示器將其顯示出來。該測量系統具有結構簡單,方便實用等優點。
2.設計方案與原理
2.1 設計總方案
整個測量系統由單片機最小系統,按鍵,電阻、電容和555組成的多諧振蕩器和液晶顯示等幾個電路模塊組成。如圖1所示。
2.2 多諧振蕩器原理
如圖2所示,測量電容時,利用555和待測電容CX和電阻R1和R2(R1和R2為已知電阻)等組成多諧振蕩器,這樣從555的輸出端Q將輸出周期性方波,接到示波器,如圖2(b)所示。該信號不是一個占空比為50%的方波,根據參考文獻2,一個周期T中高電平時間持續時間為:
測量電阻時,另用一個555組成一個多諧振蕩器電路,將待測電阻RX接在R1的位置(或者將RX和一個已知電阻串聯),CX替換成一個已知的電容C。這樣一個周期時間為:
2.3 單片機計時原理
555輸出的周期性方波信號送給單片機進行計時,測量出信號的一個周期時間T,再利用上面的數學關系進行計算處理,得到待測的電容或者電阻值。單片機計時的原理是:利用單片機的外部中斷0和定時器0。555的輸出信號接到單片機的外部中斷0引腳P3.2,將其設置成下降沿觸發。當555的輸出信號為下降沿時,觸發外部中斷,開啟單片機的定時器0開始計時,直到下一次下降沿到達時,即一個周期到達了,停止計時,這時定時器記下的就是一個周期的時間長度。
3.硬件模塊設計
3.1 單片機最小系統
系統核心的控制器采用的是AT89C51單片機,圖3所示為單片機最小系統,包括單片機和單片機正常工作需要的晶振電路和復位電路。Proteus中默認單片機電源和地已接好,所以圖中省去了。
3.2 按鍵電路
按鍵電路用于確定是測量電容還是電阻,如圖4所示,采用了一個單刀雙擲按鍵。當按鍵打到上方接通單片機P3.6引腳時,用于測量電容;打到下方P3.7引腳時,用于測量電阻。
3.3 555多諧振蕩器
如圖5所示,利用555和待測電容或者電阻組成多諧振蕩器,555產生的周期性方波從Q引腳輸出,然后接至單片機的外部中斷INT0引腳[3],即P3.2引腳。測量時,兩電路只有一個接至單片機,分別用于測量電容和電阻。
3.4 液晶顯示電路
測量的結果要顯示出來,本系統采用LCD 1602作為顯示器,圖6為LCD1602和單片機的連接電路,P0口接了上拉電阻,作為數據口;P2口的前3位作為讀寫和使能的控制引腳。
4.軟件設計
系統軟件流程圖如7所示。接通電源,首先是初始化工作,包括定時器T0、外部中斷0和LCD1602的初始化。然后啟動555芯片,通過單片機判斷是否有中斷請求,若無的話,繼續等待中斷請求;若有的話,啟動定時器開始計時直到有中斷請求時停止計時。得到計時值,即555輸出信號的一個周期后,判斷是測量電阻還是測量電容。判斷后將電阻或者電容值由LCD1602顯示出來。
5.仿真結果
將上述各電路模塊整合到一起,組成一個測量系統。采用Keil編寫好程序無誤后,在Proteus中進行電路仿真。分別測量一個50kΩ電阻和一個150μF電容的仿真結果如圖8所示。從中可以看出,測量有一定的誤差,這主要是因為采用前面公式計算時取了近似值。仿真通過后,按照仿真電路,購買需要的元器件,制作出實物電路。
6.結束語
本文介紹了一種基于555定時器和單片機的電阻和電容測量系統設計。在系統的設計和仿真中,是以Keil和Proteus兩種軟件為平臺。在Keil中使用C語言編寫了程序,再利用Proteus仿真了系統電路的功能。該測量電路簡單可靠,較易實現,能夠測量一定范圍內的電阻和電容值。
參考文獻
[1]任曉虹,周啟炎.一種電阻電容測量電路的設計[J].沈陽工業學院學報,2002,21(1).
[2]康華光.電子技術基礎(數字部分第五版)[M].高等教育出版社,2008,12.